From c182c8b95eda734f9d12dfa41e2959a1fc32ce42 Mon Sep 17 00:00:00 2001 From: "Gao, Chenfei (cg287m)" Date: Fri, 21 Jul 2017 17:03:44 -0400 Subject: [POLICY-76] Remove/rename ATT internal stuffs Change-Id: I251bd2c4f6852a563a4899024d138ebad6c52999 Signed-off-by: Gao, Chenfei (cg287m) --- ...licy.controlloop.actorServiceProvider.spi.Actor | 1 - ...licy.controlloop.actorServiceProvider.spi.Actor | 1 + ...licy.controlloop.actorServiceProvider.spi.Actor | 1 - ...licy.controlloop.actorServiceProvider.spi.Actor | 1 + controlloop/common/eventmanager/README.md | 2 +- controlloop/common/guard/README.md | 2 +- .../onap/policy/guard/PolicyGuardXacmlHelper.java | 1 - .../src/main/resources/META-INF/persistence.xml | 1 - controlloop/common/model-impl/events/README.md | 2 +- .../events/src/main/resources/definitions.yaml | 10 +- .../test/java/org/onap/policy/mso/TestDemo.java | 172 ++++++++++++++ .../java/org/openecomp/policy/mso/TestDemo.java | 172 -------------- controlloop/common/model-impl/sdc/README.md | 2 +- .../basex/src/files/bin/create-closed-loop-demo.sh | 6 +- controlloop/common/policy-yaml/README- v1.0.0.md | 259 --------------------- controlloop/common/policy-yaml/README-v1.0.0.md | 259 +++++++++++++++++++++ .../policy/builder/ControlLoopPolicyBuilder.java | 2 +- .../resource-59a2ee3fB58045feB5a1-template.yml | 86 +++---- .../resource-Eace933104d443b496b8-template.yml | 116 ++++----- .../service-57e66ea70ed645c7970f-template.yml | 24 +- .../service-D473899264974dca9db9-template.yml | 24 +- 21 files changed, 571 insertions(+), 573 deletions(-) delete mode 100644 controlloop/common/actors/actor.appc/src/main/resources/META-INF/services/com.att.ecomp.policy.controlloop.actorServiceProvider.spi.Actor create mode 100644 controlloop/common/actors/actor.appc/src/main/resources/META-INF/services/org.onap.policy.controlloop.actorServiceProvider.spi.Actor delete mode 100644 controlloop/common/actors/actor.mso/src/main/resources/META-INF/services/com.att.ecomp.policy.controlloop.actorServiceProvider.spi.Actor create mode 100644 controlloop/common/actors/actor.mso/src/main/resources/META-INF/services/org.onap.policy.controlloop.actorServiceProvider.spi.Actor create mode 100644 controlloop/common/model-impl/mso/src/test/java/org/onap/policy/mso/TestDemo.java delete mode 100644 controlloop/common/model-impl/mso/src/test/java/org/openecomp/policy/mso/TestDemo.java delete mode 100644 controlloop/common/policy-yaml/README- v1.0.0.md create mode 100644 controlloop/common/policy-yaml/README-v1.0.0.md (limited to 'controlloop/common') diff --git a/controlloop/common/actors/actor.appc/src/main/resources/META-INF/services/com.att.ecomp.policy.controlloop.actorServiceProvider.spi.Actor b/controlloop/common/actors/actor.appc/src/main/resources/META-INF/services/com.att.ecomp.policy.controlloop.actorServiceProvider.spi.Actor deleted file mode 100644 index 5e76150c4..000000000 --- a/controlloop/common/actors/actor.appc/src/main/resources/META-INF/services/com.att.ecomp.policy.controlloop.actorServiceProvider.spi.Actor +++ /dev/null @@ -1 +0,0 @@ -com.att.ecomp.policy.controlloop.actor.appc.APPCActorServiceProvider \ No newline at end of file diff --git a/controlloop/common/actors/actor.appc/src/main/resources/META-INF/services/org.onap.policy.controlloop.actorServiceProvider.spi.Actor b/controlloop/common/actors/actor.appc/src/main/resources/META-INF/services/org.onap.policy.controlloop.actorServiceProvider.spi.Actor new file mode 100644 index 000000000..8181582b5 --- /dev/null +++ b/controlloop/common/actors/actor.appc/src/main/resources/META-INF/services/org.onap.policy.controlloop.actorServiceProvider.spi.Actor @@ -0,0 +1 @@ +org.onap.policy.controlloop.actor.appc.APPCActorServiceProvider \ No newline at end of file diff --git a/controlloop/common/actors/actor.mso/src/main/resources/META-INF/services/com.att.ecomp.policy.controlloop.actorServiceProvider.spi.Actor b/controlloop/common/actors/actor.mso/src/main/resources/META-INF/services/com.att.ecomp.policy.controlloop.actorServiceProvider.spi.Actor deleted file mode 100644 index aeed27b3b..000000000 --- a/controlloop/common/actors/actor.mso/src/main/resources/META-INF/services/com.att.ecomp.policy.controlloop.actorServiceProvider.spi.Actor +++ /dev/null @@ -1 +0,0 @@ -com.att.ecomp.policy.controlloop.actor.mso.MSOActorServiceProvider \ No newline at end of file diff --git a/controlloop/common/actors/actor.mso/src/main/resources/META-INF/services/org.onap.policy.controlloop.actorServiceProvider.spi.Actor b/controlloop/common/actors/actor.mso/src/main/resources/META-INF/services/org.onap.policy.controlloop.actorServiceProvider.spi.Actor new file mode 100644 index 000000000..90d6c7f0e --- /dev/null +++ b/controlloop/common/actors/actor.mso/src/main/resources/META-INF/services/org.onap.policy.controlloop.actorServiceProvider.spi.Actor @@ -0,0 +1 @@ +org.onap.policy.controlloop.actor.mso.MSOActorServiceProvider \ No newline at end of file diff --git a/controlloop/common/eventmanager/README.md b/controlloop/common/eventmanager/README.md index 38f62de82..7ad2bf7b7 100644 --- a/controlloop/common/eventmanager/README.md +++ b/controlloop/common/eventmanager/README.md @@ -1,3 +1,3 @@ -ECOMP Policy Closed Loop Event Management Code +ONAP Policy Closed Loop Event Management Code diff --git a/controlloop/common/guard/README.md b/controlloop/common/guard/README.md index ba8593462..6135701d9 100644 --- a/controlloop/common/guard/README.md +++ b/controlloop/common/guard/README.md @@ -1,2 +1,2 @@ -ECOMP Policy Guard Implementation +ONAP Policy Guard Implementation diff --git a/controlloop/common/guard/src/main/java/org/onap/policy/guard/PolicyGuardXacmlHelper.java b/controlloop/common/guard/src/main/java/org/onap/policy/guard/PolicyGuardXacmlHelper.java index 66d2f288e..20d50fd3b 100644 --- a/controlloop/common/guard/src/main/java/org/onap/policy/guard/PolicyGuardXacmlHelper.java +++ b/controlloop/common/guard/src/main/java/org/onap/policy/guard/PolicyGuardXacmlHelper.java @@ -30,7 +30,6 @@ import java.util.UUID; import org.apache.commons.io.IOUtils; import org.apache.http.entity.ContentType; -//import org.openecomp.policy.appc.Response; import com.att.research.xacml.api.Attribute; import com.att.research.xacml.api.AttributeCategory; diff --git a/controlloop/common/guard/src/main/resources/META-INF/persistence.xml b/controlloop/common/guard/src/main/resources/META-INF/persistence.xml index 74edd566e..bc8381f50 100644 --- a/controlloop/common/guard/src/main/resources/META-INF/persistence.xml +++ b/controlloop/common/guard/src/main/resources/META-INF/persistence.xml @@ -7,7 +7,6 @@ org.eclipse.persistence.jpa.PersistenceProvider - diff --git a/controlloop/common/model-impl/events/README.md b/controlloop/common/model-impl/events/README.md index 1347d78a6..0588ff903 100644 --- a/controlloop/common/model-impl/events/README.md +++ b/controlloop/common/model-impl/events/README.md @@ -1,6 +1,6 @@ Policy Control Loop -This is the implementation of the Policy's Control Loop messages. This includes the Events consumed and Notifications produced by the ECOMP Policy Platform. +This is the implementation of the Policy's Control Loop messages. This includes the Events consumed and Notifications produced by the ONAP Policy Platform. diff --git a/controlloop/common/model-impl/events/src/main/resources/definitions.yaml b/controlloop/common/model-impl/events/src/main/resources/definitions.yaml index cbe422b82..153fb9b93 100644 --- a/controlloop/common/model-impl/events/src/main/resources/definitions.yaml +++ b/controlloop/common/model-impl/events/src/main/resources/definitions.yaml @@ -37,12 +37,12 @@ ControlLoop: type: string description: A UNIQUE string identifying the Closed Loop ID this event is for. There are no semantics behind this string. serviceInstance: - $ref: '../../../com.att.ecomp.policy.asdc/src/main/resources/definitions.yaml#/serviceInstance' + $ref: '../../../../sdc/src/main/resources/definitions.yaml#/serviceInstance' resourceInstance: - $ref: '../../../com.att.ecomp.policy.asdc/src/main/resources/definitions.yaml#/resourceInstance' + $ref: '../../../../sdc/src/main/resources/definitions.yaml#/resourceInstance' requestID: type: string - description: This is required via ECOMP Platform Logging Requirements. + description: This is required via ONAP Platform Logging Requirements. pattern: /[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}/ triggerID: type: string @@ -52,10 +52,10 @@ ControlLoop: description: pulled from eventSourceName of trigger H.P. alarm. The contents of this field should also be contained in the AAI Json sub-tag (see below). closedLoopAlarmStart: type: string - description: firstEpoch. UTC Timestamp when this event was detected by DCAE. Conform to ECOMP Logging requirements. + description: firstEpoch. UTC Timestamp when this event was detected by DCAE. Conform to ONAP Logging requirements. closedLoopAlarmEnd: type: string - description: lastEpoch. UTC Timestamp when this event was detected as cleared by DCAE. Conform to ECOMP Logging requirements. + description: lastEpoch. UTC Timestamp when this event was detected as cleared by DCAE. Conform to ONAP Logging requirements. closedLoopEventClient: type: string description: Open DCAE sub-system that detected the event and published this event message. diff --git a/controlloop/common/model-impl/mso/src/test/java/org/onap/policy/mso/TestDemo.java b/controlloop/common/model-impl/mso/src/test/java/org/onap/policy/mso/TestDemo.java new file mode 100644 index 000000000..c840894e8 --- /dev/null +++ b/controlloop/common/model-impl/mso/src/test/java/org/onap/policy/mso/TestDemo.java @@ -0,0 +1,172 @@ +/*- + * ============LICENSE_START======================================================= + * mso + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END========================================================= + */ + +package org.onap.policy.mso; + +import java.util.HashMap; +import java.util.Map; + +import org.junit.Test; +import org.onap.policy.mso.MSOCloudConfiguration; +import org.onap.policy.mso.MSOModelInfo; +import org.onap.policy.mso.MSORelatedInstance; +import org.onap.policy.mso.MSORelatedInstanceListElement; +import org.onap.policy.mso.MSORequest; +import org.onap.policy.mso.MSORequestDetails; +import org.onap.policy.mso.MSORequestInfo; +import org.onap.policy.mso.MSORequestParameters; +import org.onap.policy.mso.util.Serialization; + +public class TestDemo { + + @Test + public void test() { + + MSORequest request = new MSORequest(); + request.requestDetails = new MSORequestDetails(); + request.requestDetails.modelInfo = new MSOModelInfo(); + request.requestDetails.cloudConfiguration = new MSOCloudConfiguration(); + request.requestDetails.requestInfo = new MSORequestInfo(); + request.requestDetails.requestParameters = new MSORequestParameters(); + + request.requestDetails.modelInfo.modelType = "vfModule"; + request.requestDetails.modelInfo.modelInvariantId = "ff5256d2-5a33-55df-13ab-12abad84e7ff"; + request.requestDetails.modelInfo.modelNameVersionId = "fe6478e5-ea33-3346-ac12-ab121484a3fe"; + request.requestDetails.modelInfo.modelName = "vSAMP12..base..module-0"; + request.requestDetails.modelInfo.modelVersion = "1"; + + request.requestDetails.cloudConfiguration.lcpCloudRegionId = "mdt1"; + request.requestDetails.cloudConfiguration.tenantId = "88a6ca3ee0394ade9403f075db23167e"; + + request.requestDetails.requestInfo.instanceName = "MSOTEST103a-vSAMP12_base_module-0"; + request.requestDetails.requestInfo.source = "VID"; + request.requestDetails.requestInfo.suppressRollback = true; + + MSORelatedInstanceListElement relatedInstanceListElement1 = new MSORelatedInstanceListElement(); + MSORelatedInstanceListElement relatedInstanceListElement2 = new MSORelatedInstanceListElement(); + MSORelatedInstanceListElement relatedInstanceListElement3 = new MSORelatedInstanceListElement(); + relatedInstanceListElement1.relatedInstance = new MSORelatedInstance(); + relatedInstanceListElement2.relatedInstance = new MSORelatedInstance(); + relatedInstanceListElement3.relatedInstance = new MSORelatedInstance(); + + relatedInstanceListElement1.relatedInstance.instanceId = "17ef4658-bd1f-4ef0-9ca0-ea76e2bf122c"; + relatedInstanceListElement1.relatedInstance.instanceName = "MSOTESTVOL103a-vSAMP12_base_module-0_vol"; + relatedInstanceListElement1.relatedInstance.modelInfo = new MSOModelInfo(); + relatedInstanceListElement1.relatedInstance.modelInfo.modelType = "volumeGroup"; + + relatedInstanceListElement2.relatedInstance.instanceId = "serviceInstanceId"; + relatedInstanceListElement2.relatedInstance.modelInfo = new MSOModelInfo(); + relatedInstanceListElement2.relatedInstance.modelInfo.modelType = "service"; + relatedInstanceListElement2.relatedInstance.modelInfo.modelInvariantId = "ff3514e3-5a33-55df-13ab-12abad84e7ff"; + relatedInstanceListElement2.relatedInstance.modelInfo.modelNameVersionId = "fe6985cd-ea33-3346-ac12-ab121484a3fe"; + relatedInstanceListElement2.relatedInstance.modelInfo.modelName = "parent service model name"; + relatedInstanceListElement2.relatedInstance.modelInfo.modelVersion = "1.0"; + + relatedInstanceListElement3.relatedInstance.instanceId = "vnfInstanceId"; + relatedInstanceListElement3.relatedInstance.modelInfo = new MSOModelInfo(); + relatedInstanceListElement3.relatedInstance.modelInfo.modelType = "vnf"; + relatedInstanceListElement3.relatedInstance.modelInfo.modelInvariantId = "ff5256d1-5a33-55df-13ab-12abad84e7ff"; + relatedInstanceListElement3.relatedInstance.modelInfo.modelNameVersionId = "fe6478e4-ea33-3346-ac12-ab121484a3fe"; + relatedInstanceListElement3.relatedInstance.modelInfo.modelName = "vSAMP12"; + relatedInstanceListElement3.relatedInstance.modelInfo.modelVersion = "1.0"; + relatedInstanceListElement3.relatedInstance.modelInfo.modelCustomizationName = "vSAMP12 1"; + + request.requestDetails.relatedInstanceList.add(relatedInstanceListElement1); + request.requestDetails.relatedInstanceList.add(relatedInstanceListElement2); + request.requestDetails.relatedInstanceList.add(relatedInstanceListElement3); + + Map userParam1 = new HashMap(); + userParam1.put("name1", "value1"); + + Map userParam2 = new HashMap(); + userParam2.put("name2", "value2"); + + request.requestDetails.requestParameters.userParams.add(userParam1); + request.requestDetails.requestParameters.userParams.add(userParam2); + + String body = Serialization.gsonPretty.toJson(request); + System.out.println(body); + + //MSOResponse response = MSOManager.createModuleInstance("http://localhost:7780/", "my_username", "my_passwd", request); + + //body = Serialization.gsonPretty.toJson(response); + //System.out.println(body); + + } + + @Test + public void testHack() { + + System.out.println("** HACK **"); + + MSORequest request = new MSORequest(); + // + request.requestDetails = new MSORequestDetails(); + request.requestDetails.modelInfo = new MSOModelInfo(); + request.requestDetails.cloudConfiguration = new MSOCloudConfiguration(); + request.requestDetails.requestInfo = new MSORequestInfo(); + request.requestDetails.requestParameters = new MSORequestParameters(); + request.requestDetails.requestParameters.userParams = null; + + request.requestDetails.modelInfo.modelType = "vfModule"; + request.requestDetails.modelInfo.modelInvariantId = "a9c4a35a-de48-451a-9e4e-343f2ac52928"; + request.requestDetails.modelInfo.modelNameVersionId = "e0d98ad1-238d-4555-b439-023d3f9079f6"; + request.requestDetails.modelInfo.modelName = "0d9e0d9d352749f4B3cb..dnsscaling..module-0"; + request.requestDetails.modelInfo.modelVersion = "2.0"; + + request.requestDetails.cloudConfiguration.lcpCloudRegionId = "DFW"; + request.requestDetails.cloudConfiguration.tenantId = "1015548"; + + request.requestDetails.requestInfo.instanceName = "Vfmodule_Ete_Name1eScaling63928f-ccdc-4b34-bdef-9bf64109026e"; + request.requestDetails.requestInfo.source = "POLICY"; + request.requestDetails.requestInfo.suppressRollback = false; + + MSORelatedInstanceListElement relatedInstanceListElement1 = new MSORelatedInstanceListElement(); + MSORelatedInstanceListElement relatedInstanceListElement2 = new MSORelatedInstanceListElement(); + relatedInstanceListElement1.relatedInstance = new MSORelatedInstance(); + relatedInstanceListElement2.relatedInstance = new MSORelatedInstance(); + + String serviceInstanceId = "98af39ce-6408-466b-921f-c2c7a8f59ed6"; + relatedInstanceListElement1.relatedInstance.instanceId = serviceInstanceId; + relatedInstanceListElement1.relatedInstance.modelInfo = new MSOModelInfo(); + relatedInstanceListElement1.relatedInstance.modelInfo.modelType = "service"; + relatedInstanceListElement1.relatedInstance.modelInfo.modelInvariantId = "24329a0c-1d57-4210-b1af-a65df64e9d59"; + relatedInstanceListElement1.relatedInstance.modelInfo.modelNameVersionId = "ac642881-8e7e-4217-bd64-16ad41c42e30"; + relatedInstanceListElement1.relatedInstance.modelInfo.modelName = "5116d67e-0b4f-46bf-a46f"; + relatedInstanceListElement1.relatedInstance.modelInfo.modelVersion = "2.0"; + + String vnfInstanceId = "8eb411b8-a936-412f-b01f-9a9a435c0e93"; + relatedInstanceListElement2.relatedInstance.instanceId = vnfInstanceId; + relatedInstanceListElement2.relatedInstance.modelInfo = new MSOModelInfo(); + relatedInstanceListElement2.relatedInstance.modelInfo.modelType = "vnf"; + relatedInstanceListElement2.relatedInstance.modelInfo.modelInvariantId = "09fd971e-db5f-475d-997c-cf6704b6b8fe"; + relatedInstanceListElement2.relatedInstance.modelInfo.modelNameVersionId = "152ed917-6dcc-46ee-bf8a-a775c5aa5a74"; + relatedInstanceListElement2.relatedInstance.modelInfo.modelName = "9e4c31d2-4b25-4d9e-9fb4"; + relatedInstanceListElement2.relatedInstance.modelInfo.modelVersion = "2.0"; + relatedInstanceListElement2.relatedInstance.modelInfo.modelCustomizationName = "0d9e0d9d-3527-49f4-b3cb 2"; + + request.requestDetails.relatedInstanceList.add(relatedInstanceListElement1); + request.requestDetails.relatedInstanceList.add(relatedInstanceListElement2); + + String body = Serialization.gsonPretty.toJson(request); + System.out.println(body); + } + +} diff --git a/controlloop/common/model-impl/mso/src/test/java/org/openecomp/policy/mso/TestDemo.java b/controlloop/common/model-impl/mso/src/test/java/org/openecomp/policy/mso/TestDemo.java deleted file mode 100644 index c6c750568..000000000 --- a/controlloop/common/model-impl/mso/src/test/java/org/openecomp/policy/mso/TestDemo.java +++ /dev/null @@ -1,172 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * mso - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.policy.mso; - -import java.util.HashMap; -import java.util.Map; - -import org.junit.Test; -import org.onap.policy.mso.MSOCloudConfiguration; -import org.onap.policy.mso.MSOModelInfo; -import org.onap.policy.mso.MSORelatedInstance; -import org.onap.policy.mso.MSORelatedInstanceListElement; -import org.onap.policy.mso.MSORequest; -import org.onap.policy.mso.MSORequestDetails; -import org.onap.policy.mso.MSORequestInfo; -import org.onap.policy.mso.MSORequestParameters; -import org.onap.policy.mso.util.Serialization; - -public class TestDemo { - - @Test - public void test() { - - MSORequest request = new MSORequest(); - request.requestDetails = new MSORequestDetails(); - request.requestDetails.modelInfo = new MSOModelInfo(); - request.requestDetails.cloudConfiguration = new MSOCloudConfiguration(); - request.requestDetails.requestInfo = new MSORequestInfo(); - request.requestDetails.requestParameters = new MSORequestParameters(); - - request.requestDetails.modelInfo.modelType = "vfModule"; - request.requestDetails.modelInfo.modelInvariantId = "ff5256d2-5a33-55df-13ab-12abad84e7ff"; - request.requestDetails.modelInfo.modelNameVersionId = "fe6478e5-ea33-3346-ac12-ab121484a3fe"; - request.requestDetails.modelInfo.modelName = "vSAMP12..base..module-0"; - request.requestDetails.modelInfo.modelVersion = "1"; - - request.requestDetails.cloudConfiguration.lcpCloudRegionId = "mdt1"; - request.requestDetails.cloudConfiguration.tenantId = "88a6ca3ee0394ade9403f075db23167e"; - - request.requestDetails.requestInfo.instanceName = "MSOTEST103a-vSAMP12_base_module-0"; - request.requestDetails.requestInfo.source = "VID"; - request.requestDetails.requestInfo.suppressRollback = true; - - MSORelatedInstanceListElement relatedInstanceListElement1 = new MSORelatedInstanceListElement(); - MSORelatedInstanceListElement relatedInstanceListElement2 = new MSORelatedInstanceListElement(); - MSORelatedInstanceListElement relatedInstanceListElement3 = new MSORelatedInstanceListElement(); - relatedInstanceListElement1.relatedInstance = new MSORelatedInstance(); - relatedInstanceListElement2.relatedInstance = new MSORelatedInstance(); - relatedInstanceListElement3.relatedInstance = new MSORelatedInstance(); - - relatedInstanceListElement1.relatedInstance.instanceId = "17ef4658-bd1f-4ef0-9ca0-ea76e2bf122c"; - relatedInstanceListElement1.relatedInstance.instanceName = "MSOTESTVOL103a-vSAMP12_base_module-0_vol"; - relatedInstanceListElement1.relatedInstance.modelInfo = new MSOModelInfo(); - relatedInstanceListElement1.relatedInstance.modelInfo.modelType = "volumeGroup"; - - relatedInstanceListElement2.relatedInstance.instanceId = "serviceInstanceId"; - relatedInstanceListElement2.relatedInstance.modelInfo = new MSOModelInfo(); - relatedInstanceListElement2.relatedInstance.modelInfo.modelType = "service"; - relatedInstanceListElement2.relatedInstance.modelInfo.modelInvariantId = "ff3514e3-5a33-55df-13ab-12abad84e7ff"; - relatedInstanceListElement2.relatedInstance.modelInfo.modelNameVersionId = "fe6985cd-ea33-3346-ac12-ab121484a3fe"; - relatedInstanceListElement2.relatedInstance.modelInfo.modelName = "parent service model name"; - relatedInstanceListElement2.relatedInstance.modelInfo.modelVersion = "1.0"; - - relatedInstanceListElement3.relatedInstance.instanceId = "vnfInstanceId"; - relatedInstanceListElement3.relatedInstance.modelInfo = new MSOModelInfo(); - relatedInstanceListElement3.relatedInstance.modelInfo.modelType = "vnf"; - relatedInstanceListElement3.relatedInstance.modelInfo.modelInvariantId = "ff5256d1-5a33-55df-13ab-12abad84e7ff"; - relatedInstanceListElement3.relatedInstance.modelInfo.modelNameVersionId = "fe6478e4-ea33-3346-ac12-ab121484a3fe"; - relatedInstanceListElement3.relatedInstance.modelInfo.modelName = "vSAMP12"; - relatedInstanceListElement3.relatedInstance.modelInfo.modelVersion = "1.0"; - relatedInstanceListElement3.relatedInstance.modelInfo.modelCustomizationName = "vSAMP12 1"; - - request.requestDetails.relatedInstanceList.add(relatedInstanceListElement1); - request.requestDetails.relatedInstanceList.add(relatedInstanceListElement2); - request.requestDetails.relatedInstanceList.add(relatedInstanceListElement3); - - Map userParam1 = new HashMap(); - userParam1.put("name1", "value1"); - - Map userParam2 = new HashMap(); - userParam2.put("name2", "value2"); - - request.requestDetails.requestParameters.userParams.add(userParam1); - request.requestDetails.requestParameters.userParams.add(userParam2); - - String body = Serialization.gsonPretty.toJson(request); - System.out.println(body); - - //MSOResponse response = MSOManager.createModuleInstance("http://localhost:7780/", "my_username", "my_passwd", request); - - //body = Serialization.gsonPretty.toJson(response); - //System.out.println(body); - - } - - @Test - public void testHack() { - - System.out.println("** HACK **"); - - MSORequest request = new MSORequest(); - // - request.requestDetails = new MSORequestDetails(); - request.requestDetails.modelInfo = new MSOModelInfo(); - request.requestDetails.cloudConfiguration = new MSOCloudConfiguration(); - request.requestDetails.requestInfo = new MSORequestInfo(); - request.requestDetails.requestParameters = new MSORequestParameters(); - request.requestDetails.requestParameters.userParams = null; - - request.requestDetails.modelInfo.modelType = "vfModule"; - request.requestDetails.modelInfo.modelInvariantId = "a9c4a35a-de48-451a-9e4e-343f2ac52928"; - request.requestDetails.modelInfo.modelNameVersionId = "e0d98ad1-238d-4555-b439-023d3f9079f6"; - request.requestDetails.modelInfo.modelName = "0d9e0d9d352749f4B3cb..dnsscaling..module-0"; - request.requestDetails.modelInfo.modelVersion = "2.0"; - - request.requestDetails.cloudConfiguration.lcpCloudRegionId = "DFW"; - request.requestDetails.cloudConfiguration.tenantId = "1015548"; - - request.requestDetails.requestInfo.instanceName = "Vfmodule_Ete_Name1eScaling63928f-ccdc-4b34-bdef-9bf64109026e"; - request.requestDetails.requestInfo.source = "POLICY"; - request.requestDetails.requestInfo.suppressRollback = false; - - MSORelatedInstanceListElement relatedInstanceListElement1 = new MSORelatedInstanceListElement(); - MSORelatedInstanceListElement relatedInstanceListElement2 = new MSORelatedInstanceListElement(); - relatedInstanceListElement1.relatedInstance = new MSORelatedInstance(); - relatedInstanceListElement2.relatedInstance = new MSORelatedInstance(); - - String serviceInstanceId = "98af39ce-6408-466b-921f-c2c7a8f59ed6"; - relatedInstanceListElement1.relatedInstance.instanceId = serviceInstanceId; - relatedInstanceListElement1.relatedInstance.modelInfo = new MSOModelInfo(); - relatedInstanceListElement1.relatedInstance.modelInfo.modelType = "service"; - relatedInstanceListElement1.relatedInstance.modelInfo.modelInvariantId = "24329a0c-1d57-4210-b1af-a65df64e9d59"; - relatedInstanceListElement1.relatedInstance.modelInfo.modelNameVersionId = "ac642881-8e7e-4217-bd64-16ad41c42e30"; - relatedInstanceListElement1.relatedInstance.modelInfo.modelName = "5116d67e-0b4f-46bf-a46f"; - relatedInstanceListElement1.relatedInstance.modelInfo.modelVersion = "2.0"; - - String vnfInstanceId = "8eb411b8-a936-412f-b01f-9a9a435c0e93"; - relatedInstanceListElement2.relatedInstance.instanceId = vnfInstanceId; - relatedInstanceListElement2.relatedInstance.modelInfo = new MSOModelInfo(); - relatedInstanceListElement2.relatedInstance.modelInfo.modelType = "vnf"; - relatedInstanceListElement2.relatedInstance.modelInfo.modelInvariantId = "09fd971e-db5f-475d-997c-cf6704b6b8fe"; - relatedInstanceListElement2.relatedInstance.modelInfo.modelNameVersionId = "152ed917-6dcc-46ee-bf8a-a775c5aa5a74"; - relatedInstanceListElement2.relatedInstance.modelInfo.modelName = "9e4c31d2-4b25-4d9e-9fb4"; - relatedInstanceListElement2.relatedInstance.modelInfo.modelVersion = "2.0"; - relatedInstanceListElement2.relatedInstance.modelInfo.modelCustomizationName = "0d9e0d9d-3527-49f4-b3cb 2"; - - request.requestDetails.relatedInstanceList.add(relatedInstanceListElement1); - request.requestDetails.relatedInstanceList.add(relatedInstanceListElement2); - - String body = Serialization.gsonPretty.toJson(request); - System.out.println(body); - } - -} diff --git a/controlloop/common/model-impl/sdc/README.md b/controlloop/common/model-impl/sdc/README.md index 2a17461e5..9431bf045 100644 --- a/controlloop/common/model-impl/sdc/README.md +++ b/controlloop/common/model-impl/sdc/README.md @@ -1,3 +1,3 @@ -ECOMP ASDC +ONAP SDC diff --git a/controlloop/common/packages/basex/src/files/bin/create-closed-loop-demo.sh b/controlloop/common/packages/basex/src/files/bin/create-closed-loop-demo.sh index 3cd191f03..5fe83532c 100644 --- a/controlloop/common/packages/basex/src/files/bin/create-closed-loop-demo.sh +++ b/controlloop/common/packages/basex/src/files/bin/create-closed-loop-demo.sh @@ -27,10 +27,10 @@ echo "Closed Loop Demo Creator for standalone PDP-D" echo "----------------------------------------------" echo -GROUPID="org.openecomp.policy.demo.rules" +GROUPID="org.onap.policy.demo.rules" ARTIFACTID="closed-loop-demo-rules" VERSION="1.1.0-SNAPSHOT" -PACKAGE="org.openecomp.policy.demo.rules" +PACKAGE="org.onap.policy.demo.rules" CLOSEDLOOPCONTROLNAME="CL-FRWL-LOW-TRAFFIC-SIG-d925ed73-8231-4d02-9545-db4e101f88f8" POLICYSCOPE="service=test;resource=FRWL;type=configuration" POLICYNAME="FirewallDemo" @@ -198,7 +198,7 @@ if [ ! -w "${DIR_TMP}" ]; then exit 1 fi -ARCHETYPE_GROUP_ID="org.openecomp.policy.drools-applications" +ARCHETYPE_GROUP_ID="org.onap.policy.drools-applications" ARCHETYPE_ARTIFACT_ID="archetype-closedloop-demo-rules" if [ -d "${DIR_TMP}/${ARTIFACTID}/" ]; then diff --git a/controlloop/common/policy-yaml/README- v1.0.0.md b/controlloop/common/policy-yaml/README- v1.0.0.md deleted file mode 100644 index 65b11adb2..000000000 --- a/controlloop/common/policy-yaml/README- v1.0.0.md +++ /dev/null @@ -1,259 +0,0 @@ -ONAP Control Loop Policy v1.0.0 - -A control loop policy is a YAML specification for creating and chaining policies for ControlLoop. - -Features of ONAP Control Loop Policy v1.0.0: - -* A single DCAE Closed Loop Event is the trigger for the overall Control Loop Policy -* APPC is the only Actor that Policy will interact with. The operations available are: RESTART, REBUILD, MIGRATE. -* An overall timeout for the Control Loop Policy must be provided -* The Control Loop Policy can contain zero or more Operational Policies each chained together via outcomes of each policy. -* If there are zero Operational Policies, i.e. no automated action is to be taken, then the policy is an Open Loop policy. -* Operational Policies can have retries and timeout's given to control how they are processed. - -This SDK helps build the YAML specification for ONAP Control Loop Policy v1.0.0. - -# Create Builder Object - -To begin with, the ControlLoopPolicyBuilder.Factory class has static methods that one should use to begin building a Control Loop Policy. It will return a [ControlLoopPolicyBuilder object](src/main/java/org/onap/policy/controlloop/policy/builder/ControlLoopPolicyBuilder.java) that can then be used to continue to build and define the Control Loop Policy. - -```java - ControlLoopPolicyBuilder builder = ControlLoopPolicyBuilder.Factory.buildControlLoop( - UUID.randomUUID().toString(), - 2400, - new Resource("sampleResource", ResourceType.VF), - new Service("sampleService") - ); -``` - -# Define the Trigger Policy - -After the name of the Control Loop and the resource and services have been defined, the next step would be to define the Operation Policy that is first to respond to an incoming DCAE Closed Loop Event. Use the setTriggerPolicy() method to do so. - -```java - Policy triggerPolicy = builder.setTriggerPolicy( - "Restart the VM", - "Upon getting the trigger event, restart the VM", - Actor.APPC, - Target.VM, - "Restart", - 2, - 300); -``` - -# Chain Operational Policies Together Using Operational Results - -Operational Policies are chained together using the results of each Operational Policy. The results are defined in [PolicyResult.java](src/main/java/org/onap/policy/controlloop/policy/PolicyResult.java). To create an Operational Policy that is tied to the result of another, use the -setPolicyForPolicyResult() method. - -```java - Policy onRestartFailurePolicy = builder.setPolicyForPolicyResult( - "Rebuild VM", - "If the restart fails, rebuild it.", - Actor.APPC, - Target.VM, - "Rebuild", - 1, - 600, - triggerPolicy.id, - PolicyResult.FAILURE, - PolicyResult.FAILURE_RETRIES, - PolicyResult.FAILURE_TIMEOUT); -``` - -An Operational Policy MUST have place to go for every one of its results. By default, each result type goes to a Final Result. Optionally, using the setPolicyForPolicyResult() method is what allows the chaining of policies. Be aware of creating loops and set the overall Control Loop timeout to reasonable value. All paths MUST lead to a Final Result. - -# Build the YAML Specification - -When finished defining the Policies, build the specification and analyze the [Results.java](src/main/java/org/onap/policy/controlloop/policy/builder/Results.java) - -```java - Results results = builder.buildSpecification(); - if (results.isValid()) { - System.out.println(results.getSpecification()); - } else { - System.err.println("Builder failed"); - for (Message message : results.getMessages()) { - System.err.println(message.getMessage()); - } - } -``` - - -# Use the YAML Specification to call the Create Policy API - -Now that you have a valid YAML specification, call the createPolicy API via the ONAP Policy Platform API. - -# YAML Specification - -The YAML specification has 2 sections to it: [controlLoop](#controlloop-object) and [policies](#policies-array). The [controlLoop section](#controlloop-object) section is simply a header defining the Control Loop Policy, what services its for, which resource its for, or if its for a pnf, the overall timeout, and which Operational Policy is triggered upon receiving the event. The [policies section](#policies-array) is simply an array of [Policy Objects](#policy-object). - -## controlLoop Object - -| Field Name | Type | Required | Description | -| ------------- |:-------------:| -----------| ------------:| -| controlLoopName | string | required | Unique ID for the control Loop | -| version | string | required | Value for this release if 1.0.0 | -| services | array of [service](#service-object) objects | optional | Zero or more services associated with this Control Loop | -| resources | array of [resource](#resource-object) object | required (If NOT a pnf control loop) | The resource's associated with this Control Loop. | -| pnf | [pnf](#pnf-object) object | required (If NOT a resource control loop) | The physical network function associated with this Control Loop. | -| trigger_policy | string | required | Either this is the ID of an Operation Policy (see policy object), or "Final_OpenLoop" indicating an Open Loop | -| timeout | int | required | This is the overall timeout for the Control Loop Policy. It can be 0 for an Open Loop, but otherwise should total more than the timeouts specified in any Operational Policies | - -### resource Object - -This object was derived via SDC Catalog API and SDC Data Dictionary (POC) in an attempt to use common naming conventions. - -| Field Name | Type | Required | Description | -| ------------- |:-------------:| -----------| ------------:| -| resourceInvariantUUID | string - UUID | optional | via SDC, the unique ID for the resource version | -| resourceName | string | required if NO resourceUUID available | Name of the resource, ideally from SDC catalog. But if not available, use well-known name. | -| resourceType | string | optional | Use values defined by SDC: VF, VFC, VL, CP. | -| resourceUUID | string - UUID | required IF available, else populate resourceName | Unique ID for the resource as assigned via SDC. -| resourceVersion | string | optional | string version of the resource via SDC catalog - -SDC catalog is not fully available and resources have not been defined yet, use resourceName. Eg. vFW - -### service Object - -This object was derived via SDC Catalog API and SDC Data Dictionary (POC) in an attempt to use common naming conventions. - -| Field Name | Type | Required | Description | -| ------------- |:-------------:| -----------| ------------:| -| serviceInvariantUUID | string - UUID | optional | via SDC catalog, the unique ID for the service version | -| serviceName | string | required if NO serviceUUID available | Name of the service, ideally from SDC catalog. But if not available, use well-known name. | -| serviceUUID | string - UUID | required IF available, else populate serviceName | Unique ID fort he service as assigned via SDC -| serviceVersion | string | optional | string version of the service via SDC catalog - -SDC catalog is not fully available and some services have not been defined yet, use serviceName. Eg. vLB. - -### pnf Object - -This object is used for a physical network function. Expect this object to change in the future when ONAP Policy fully integrates with A&AI. - -| Field Name | Type | Required | Description | -| ------------- |:-------------:| -----------| ------------:| -| PNFName | string | required | Name of the PNF. Should be supplied via A&AI. If not available use a well-known name. | -| PNFType | string | optional | Type of PNF if available. | - - -## policies array - -The policies section is an array of [Policy objects](#policy-object). - -### Policy Object - -This is an Operation Policy. It is used to instruct an actor (eg. APPC) to invoke a recipe (eg. "Restart") on a target entity (eg. a "VM"). An operation is simply defined as performing a recipe (or operation) on an actor. - -| Field Name | Type | Required | Description | -| ------------- |:-------------:| -----------| ------------:| -| id | string | required | Unique ID for the policy. -| name | string | required | Policy name | -| description | string | optional | Policy description | -| actor | string | required | Name of the actor for this operation: Example: APPC | -| recipe | string | required | Name of recipe to be performed. Example "Restart" | -| target | string | required | Entity being targeted. Example: VM | -| timeout | int | required | Timeout for the actor to perform the recipe. | -| retry | int | optional | Optional number of retries for ECOMP Policy to invoke the recipe on the actor. | -| success | string | required | By default, this value should be FINAL_SUCCESS. Otherwise this can be the ID of the operational Policy (included in this specification) to invoke upon successfully completing the recipe on the actor. -| failure | string | required | By default, this value should be FINAL_FAILURE. Otherwise this can be the ID of the operational Policy (included in this specification) to invoke upon failure to perform the operation. | -| failure_exception | string | required | By default, this value should be FINAL_FAILURE_EXCEPTION. Otherwise this can be the ID of an Operational Policy (included in this specification) to invoke upon an exception occurring while attempting to perform the operation. | -| failure_retries | string | required | By default, this value should be the FINAL_FAILURE_RETRIES. Otherwise this can be the ID of an Operational Policy (included in this specification) to invoke upon maxing out on retries while attempting to perform the operation. | -| failure_timeout | string | required | By default, this value should be FINAL_FAILURE_TIMEOUT. Otherwise this can be the ID of the operational Policy (included in this specification) to invoke upon a timeout occuring while performing an operation. | - -Every Operational Policy MUST have a place to go for every possible result (success, failure, failure_retries, failure_timeout, failure_exception). By default, all the results are final results. - -## Examples of YAML Control Loops v1.0.0 - -[vService](src/test/resources/v1.0.0/policy_vService.yaml) -[Open-Loop](src/test/resources/v1.0.0/policy_OpenLoop.yaml) - - -### vService -``` -controlLoop: - version: 1.0.0 - controlLoopName: ControlLoop-vService-cbed919f-2212-4ef7-8051-fe6308da1bda - services: - - serviceName: service1 - resources: - - resourceName: resource1 - resourceType: VF - - resourceName: resource2 - resourceType: VF - - resourceName: resource3 - resourceType: VF - - resourceName: resource4 - resourceType: VF - - resourceName: resource5 - resourceType: VF - trigger_policy: unique-policy-id-1-restart - timeout: 1200 - -policies: - - id: unique-policy-id-1-restart - name: Restart Policy - description: - actor: APPC - recipe: Restart - target: VM - retry: 2 - timeout: 300 - success: final_success - failure: unique-policy-id-2-rebuild - failure_timeout: unique-policy-id-2-rebuild - failure_retries: unique-policy-id-2-rebuild - failure_exception: final_failure_exception - - - id: unique-policy-id-2-rebuild - name: Rebuild Policy - description: - actor: APPC - recipe: Rebuild - target: VM - retry: 0 - timeout: 600 - success: final_success - failure: unique-policy-id-3-migrate - failure_timeout: unique-policy-id-3-migrate - failure_retries: unique-policy-id-3-migrate - failure_exception: final_failure_exception - - - id: unique-policy-id-3-migrate - name: Migrate Policy - description: - actor: APPC - recipe: Migrate - target: VM - retry: 0 - timeout: 600 - success: final_success - failure: final_failure - failure_timeout: final_failure_timeout - failure_retries: final_failure_retries - failure_exception: final_failure_exception - -``` - -### Open Loop -``` -controlLoop: - version: 1.0.0 - controlLoopName: ControlLoop-Open-fac4ae3d-c3f5-4bab-8e54-0a8581ede132 - services: - - serviceName: service1 - resources: - - resourceType: VF - resourceName: resource1 - trigger_policy: final_openloop - timeout: 0 - -policies: -``` - - - -# Control Loop Final Results Explained - -A Control Loop Policy has the following set of final results, as defined in [FinalResult.java](src/main/java/org/onap/policy/controlloop/policy/FinalResult.java). A final result indicates when a Control Loop Policy has finished execution and is finished processing a Closed Loop Event. All paths must lead to a Final Result. - diff --git a/controlloop/common/policy-yaml/README-v1.0.0.md b/controlloop/common/policy-yaml/README-v1.0.0.md new file mode 100644 index 000000000..1506b6834 --- /dev/null +++ b/controlloop/common/policy-yaml/README-v1.0.0.md @@ -0,0 +1,259 @@ +ONAP Control Loop Policy v1.0.0 + +A control loop policy is a YAML specification for creating and chaining policies for ControlLoop. + +Features of ONAP Control Loop Policy v1.0.0: + +* A single DCAE Closed Loop Event is the trigger for the overall Control Loop Policy +* APPC is the only Actor that Policy will interact with. The operations available are: RESTART, REBUILD, MIGRATE. +* An overall timeout for the Control Loop Policy must be provided +* The Control Loop Policy can contain zero or more Operational Policies each chained together via outcomes of each policy. +* If there are zero Operational Policies, i.e. no automated action is to be taken, then the policy is an Open Loop policy. +* Operational Policies can have retries and timeout's given to control how they are processed. + +This SDK helps build the YAML specification for ONAP Control Loop Policy v1.0.0. + +# Create Builder Object + +To begin with, the ControlLoopPolicyBuilder.Factory class has static methods that one should use to begin building a Control Loop Policy. It will return a [ControlLoopPolicyBuilder object](src/main/java/org/onap/policy/controlloop/policy/builder/ControlLoopPolicyBuilder.java) that can then be used to continue to build and define the Control Loop Policy. + +```java + ControlLoopPolicyBuilder builder = ControlLoopPolicyBuilder.Factory.buildControlLoop( + UUID.randomUUID().toString(), + 2400, + new Resource("sampleResource", ResourceType.VF), + new Service("sampleService") + ); +``` + +# Define the Trigger Policy + +After the name of the Control Loop and the resource and services have been defined, the next step would be to define the Operation Policy that is first to respond to an incoming DCAE Closed Loop Event. Use the setTriggerPolicy() method to do so. + +```java + Policy triggerPolicy = builder.setTriggerPolicy( + "Restart the VM", + "Upon getting the trigger event, restart the VM", + Actor.APPC, + Target.VM, + "Restart", + 2, + 300); +``` + +# Chain Operational Policies Together Using Operational Results + +Operational Policies are chained together using the results of each Operational Policy. The results are defined in [PolicyResult.java](src/main/java/org/onap/policy/controlloop/policy/PolicyResult.java). To create an Operational Policy that is tied to the result of another, use the +setPolicyForPolicyResult() method. + +```java + Policy onRestartFailurePolicy = builder.setPolicyForPolicyResult( + "Rebuild VM", + "If the restart fails, rebuild it.", + Actor.APPC, + Target.VM, + "Rebuild", + 1, + 600, + triggerPolicy.id, + PolicyResult.FAILURE, + PolicyResult.FAILURE_RETRIES, + PolicyResult.FAILURE_TIMEOUT); +``` + +An Operational Policy MUST have place to go for every one of its results. By default, each result type goes to a Final Result. Optionally, using the setPolicyForPolicyResult() method is what allows the chaining of policies. Be aware of creating loops and set the overall Control Loop timeout to reasonable value. All paths MUST lead to a Final Result. + +# Build the YAML Specification + +When finished defining the Policies, build the specification and analyze the [Results.java](src/main/java/org/onap/policy/controlloop/policy/builder/Results.java) + +```java + Results results = builder.buildSpecification(); + if (results.isValid()) { + System.out.println(results.getSpecification()); + } else { + System.err.println("Builder failed"); + for (Message message : results.getMessages()) { + System.err.println(message.getMessage()); + } + } +``` + + +# Use the YAML Specification to call the Create Policy API + +Now that you have a valid YAML specification, call the createPolicy API via the ONAP Policy Platform API. + +# YAML Specification + +The YAML specification has 2 sections to it: [controlLoop](#controlloop-object) and [policies](#policies-array). The [controlLoop section](#controlloop-object) section is simply a header defining the Control Loop Policy, what services its for, which resource its for, or if its for a pnf, the overall timeout, and which Operational Policy is triggered upon receiving the event. The [policies section](#policies-array) is simply an array of [Policy Objects](#policy-object). + +## controlLoop Object + +| Field Name | Type | Required | Description | +| ------------- |:-------------:| -----------| ------------:| +| controlLoopName | string | required | Unique ID for the control Loop | +| version | string | required | Value for this release if 1.0.0 | +| services | array of [service](#service-object) objects | optional | Zero or more services associated with this Control Loop | +| resources | array of [resource](#resource-object) object | required (If NOT a pnf control loop) | The resource's associated with this Control Loop. | +| pnf | [pnf](#pnf-object) object | required (If NOT a resource control loop) | The physical network function associated with this Control Loop. | +| trigger_policy | string | required | Either this is the ID of an Operation Policy (see policy object), or "Final_OpenLoop" indicating an Open Loop | +| timeout | int | required | This is the overall timeout for the Control Loop Policy. It can be 0 for an Open Loop, but otherwise should total more than the timeouts specified in any Operational Policies | + +### resource Object + +This object was derived via SDC Catalog API and SDC Data Dictionary (POC) in an attempt to use common naming conventions. + +| Field Name | Type | Required | Description | +| ------------- |:-------------:| -----------| ------------:| +| resourceInvariantUUID | string - UUID | optional | via SDC, the unique ID for the resource version | +| resourceName | string | required if NO resourceUUID available | Name of the resource, ideally from SDC catalog. But if not available, use well-known name. | +| resourceType | string | optional | Use values defined by SDC: VF, VFC, VL, CP. | +| resourceUUID | string - UUID | required IF available, else populate resourceName | Unique ID for the resource as assigned via SDC. +| resourceVersion | string | optional | string version of the resource via SDC catalog + +SDC catalog is not fully available and resources have not been defined yet, use resourceName. Eg. vFW + +### service Object + +This object was derived via SDC Catalog API and SDC Data Dictionary (POC) in an attempt to use common naming conventions. + +| Field Name | Type | Required | Description | +| ------------- |:-------------:| -----------| ------------:| +| serviceInvariantUUID | string - UUID | optional | via SDC catalog, the unique ID for the service version | +| serviceName | string | required if NO serviceUUID available | Name of the service, ideally from SDC catalog. But if not available, use well-known name. | +| serviceUUID | string - UUID | required IF available, else populate serviceName | Unique ID fort he service as assigned via SDC +| serviceVersion | string | optional | string version of the service via SDC catalog + +SDC catalog is not fully available and some services have not been defined yet, use serviceName. Eg. vLB. + +### pnf Object + +This object is used for a physical network function. Expect this object to change in the future when ONAP Policy fully integrates with A&AI. + +| Field Name | Type | Required | Description | +| ------------- |:-------------:| -----------| ------------:| +| PNFName | string | required | Name of the PNF. Should be supplied via A&AI. If not available use a well-known name. | +| PNFType | string | optional | Type of PNF if available. | + + +## policies array + +The policies section is an array of [Policy objects](#policy-object). + +### Policy Object + +This is an Operation Policy. It is used to instruct an actor (eg. APPC) to invoke a recipe (eg. "Restart") on a target entity (eg. a "VM"). An operation is simply defined as performing a recipe (or operation) on an actor. + +| Field Name | Type | Required | Description | +| ------------- |:-------------:| -----------| ------------:| +| id | string | required | Unique ID for the policy. +| name | string | required | Policy name | +| description | string | optional | Policy description | +| actor | string | required | Name of the actor for this operation: Example: APPC | +| recipe | string | required | Name of recipe to be performed. Example "Restart" | +| target | string | required | Entity being targeted. Example: VM | +| timeout | int | required | Timeout for the actor to perform the recipe. | +| retry | int | optional | Optional number of retries for ONAP Policy to invoke the recipe on the actor. | +| success | string | required | By default, this value should be FINAL_SUCCESS. Otherwise this can be the ID of the operational Policy (included in this specification) to invoke upon successfully completing the recipe on the actor. +| failure | string | required | By default, this value should be FINAL_FAILURE. Otherwise this can be the ID of the operational Policy (included in this specification) to invoke upon failure to perform the operation. | +| failure_exception | string | required | By default, this value should be FINAL_FAILURE_EXCEPTION. Otherwise this can be the ID of an Operational Policy (included in this specification) to invoke upon an exception occurring while attempting to perform the operation. | +| failure_retries | string | required | By default, this value should be the FINAL_FAILURE_RETRIES. Otherwise this can be the ID of an Operational Policy (included in this specification) to invoke upon maxing out on retries while attempting to perform the operation. | +| failure_timeout | string | required | By default, this value should be FINAL_FAILURE_TIMEOUT. Otherwise this can be the ID of the operational Policy (included in this specification) to invoke upon a timeout occuring while performing an operation. | + +Every Operational Policy MUST have a place to go for every possible result (success, failure, failure_retries, failure_timeout, failure_exception). By default, all the results are final results. + +## Examples of YAML Control Loops v1.0.0 + +[vService](src/test/resources/v1.0.0/policy_vService.yaml) +[Open-Loop](src/test/resources/v1.0.0/policy_OpenLoop.yaml) + + +### vService +``` +controlLoop: + version: 1.0.0 + controlLoopName: ControlLoop-vService-cbed919f-2212-4ef7-8051-fe6308da1bda + services: + - serviceName: service1 + resources: + - resourceName: resource1 + resourceType: VF + - resourceName: resource2 + resourceType: VF + - resourceName: resource3 + resourceType: VF + - resourceName: resource4 + resourceType: VF + - resourceName: resource5 + resourceType: VF + trigger_policy: unique-policy-id-1-restart + timeout: 1200 + +policies: + - id: unique-policy-id-1-restart + name: Restart Policy + description: + actor: APPC + recipe: Restart + target: VM + retry: 2 + timeout: 300 + success: final_success + failure: unique-policy-id-2-rebuild + failure_timeout: unique-policy-id-2-rebuild + failure_retries: unique-policy-id-2-rebuild + failure_exception: final_failure_exception + + - id: unique-policy-id-2-rebuild + name: Rebuild Policy + description: + actor: APPC + recipe: Rebuild + target: VM + retry: 0 + timeout: 600 + success: final_success + failure: unique-policy-id-3-migrate + failure_timeout: unique-policy-id-3-migrate + failure_retries: unique-policy-id-3-migrate + failure_exception: final_failure_exception + + - id: unique-policy-id-3-migrate + name: Migrate Policy + description: + actor: APPC + recipe: Migrate + target: VM + retry: 0 + timeout: 600 + success: final_success + failure: final_failure + failure_timeout: final_failure_timeout + failure_retries: final_failure_retries + failure_exception: final_failure_exception + +``` + +### Open Loop +``` +controlLoop: + version: 1.0.0 + controlLoopName: ControlLoop-Open-fac4ae3d-c3f5-4bab-8e54-0a8581ede132 + services: + - serviceName: service1 + resources: + - resourceType: VF + resourceName: resource1 + trigger_policy: final_openloop + timeout: 0 + +policies: +``` + + + +# Control Loop Final Results Explained + +A Control Loop Policy has the following set of final results, as defined in [FinalResult.java](src/main/java/org/onap/policy/controlloop/policy/FinalResult.java). A final result indicates when a Control Loop Policy has finished execution and is finished processing a Closed Loop Event. All paths must lead to a Final Result. + diff --git a/controlloop/common/policy-yaml/src/main/java/org/onap/policy/controlloop/policy/builder/ControlLoopPolicyBuilder.java b/controlloop/common/policy-yaml/src/main/java/org/onap/policy/controlloop/policy/builder/ControlLoopPolicyBuilder.java index fcc783570..1947c53fc 100644 --- a/controlloop/common/policy-yaml/src/main/java/org/onap/policy/controlloop/policy/builder/ControlLoopPolicyBuilder.java +++ b/controlloop/common/policy-yaml/src/main/java/org/onap/policy/controlloop/policy/builder/ControlLoopPolicyBuilder.java @@ -120,7 +120,7 @@ public interface ControlLoopPolicyBuilder { public Integer calculateTimeout(); /** - * Sets the initial trigger policy when a DCAE Closed Loop Event arrives in the ECOMP Policy Platform. + * Sets the initial trigger policy when a DCAE Closed Loop Event arrives in the ONAP Policy Platform. * * * @param name diff --git a/controlloop/common/policy-yaml/src/test/resources/v2.0.0/Demo-1.0.0-HeatTemplates/resource-59a2ee3fB58045feB5a1-template.yml b/controlloop/common/policy-yaml/src/test/resources/v2.0.0/Demo-1.0.0-HeatTemplates/resource-59a2ee3fB58045feB5a1-template.yml index f3e9bc4e4..4b501953c 100644 --- a/controlloop/common/policy-yaml/src/test/resources/v2.0.0/Demo-1.0.0-HeatTemplates/resource-59a2ee3fB58045feB5a1-template.yml +++ b/controlloop/common/policy-yaml/src/test/resources/v2.0.0/Demo-1.0.0-HeatTemplates/resource-59a2ee3fB58045feB5a1-template.yml @@ -22,10 +22,10 @@ topology_template: inputs: vf_module_id: type: string - description: The vLoadBalancer Module ID is provided by ECOMP - ecomp_private_subnet_id: + description: The vLoadBalancer Module ID is provided by ONAP + onap_private_subnet_id: type: string - description: Private sub-network that connects ECOMP component and the VNF + description: Private sub-network that connects ONAP component and the VNF repo_url_blob: type: string description: URL of the repository that hosts the demo packages @@ -42,15 +42,15 @@ topology_template: demo_artifacts_version: type: string description: Artifacts (jar, tar.gz) version used in demo vnfs - ecomp_private_net_id: + onap_private_net_id: type: string - description: Private network that connects ECOMP component and the VNF + description: Private network that connects ONAP component and the VNF pub_key: type: string description: Public key to be installed on the compute instance vlb_private_ip_1: type: string - description: Private IP address that is assigned to the vLoadBalancer to communicate with ECOMP components + description: Private IP address that is assigned to the vLoadBalancer to communicate with ONAP components key_name: type: string description: Public/Private key pair name @@ -68,13 +68,13 @@ topology_template: description: Private IP address that is assigned to the vDNS to communicate with the vLoadBalancer vnf_id: type: string - description: The VNF ID is provided by ECOMP + description: The VNF ID is provided by ONAP dcae_collector_ip: type: string description: IP address of the DCAE collector vdns_private_ip_1: type: string - description: Private IP address that is assigned to the vDNS to communicate with ECOMP components + description: Private IP address that is assigned to the vDNS to communicate with ONAP components dcae_collector_port: type: string description: Port of the DCAE collector @@ -89,12 +89,12 @@ topology_template: vlb_private_ip_0: type: string description: Private IP address that is assigned to the vLoadBalancer to communicate with the vDNSs - ecomp_private_net_cidr: + onap_private_net_cidr: type: string description: The CIDR of the protected private network node_templates: vdns_private_1_port: - type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port + type: org.onap.resource.cp.nodes.heat.network.neutron.Port metadata: invariantUUID: 7feb77d3-dcc5-4826-8a78-0c9089814a45 UUID: 06bc8ea7-0f6a-489a-9f8f-c7253653b457 @@ -107,18 +107,18 @@ topology_template: properties: fixed_ips: - subnet: - get_input: ecomp_private_subnet_id + get_input: onap_private_subnet_id ip_address: get_input: vdns_private_ip_1 network: - get_input: ecomp_private_net_id + get_input: onap_private_net_id requirements: - binding: capability: tosca.capabilities.network.Bindable node: vdns_0 relationship: tosca.relationships.network.BindsTo vlb_private_network: - type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net + type: org.onap.resource.vl.nodes.heat.network.neutron.Net metadata: invariantUUID: 2870cc3a-d6cd-4423-b7f6-2d63619b0eeb UUID: b7e764ba-17f9-4f0a-ad29-29877766ef21 @@ -138,7 +138,7 @@ topology_template: cidr: get_input: vlb_private_net_cidr vlb_private_1_port: - type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port + type: org.onap.resource.cp.nodes.heat.network.neutron.Port metadata: invariantUUID: 7feb77d3-dcc5-4826-8a78-0c9089814a45 UUID: 06bc8ea7-0f6a-489a-9f8f-c7253653b457 @@ -151,18 +151,18 @@ topology_template: properties: fixed_ips: - subnet: - get_input: ecomp_private_subnet_id + get_input: onap_private_subnet_id ip_address: get_input: vlb_private_ip_1 network: - get_input: ecomp_private_net_id + get_input: onap_private_net_id requirements: - binding: capability: tosca.capabilities.network.Bindable node: vlb_0 relationship: tosca.relationships.network.BindsTo vdns_0: - type: org.openecomp.resource.vfc.59a2ee3fB58045feB5a1.abstact.nodes.heat.vdns + type: org.onap.resource.vfc.59a2ee3fB58045feB5a1.abstact.nodes.heat.vdns metadata: invariantUUID: ee585c30-127b-492e-b2c1-871dc61d1dde UUID: d816cb01-b5d0-4bbb-b614-f7c3e230ab19 @@ -187,7 +187,7 @@ topology_template: name: get_input: vdns_name_0 vlb_private_0_port: - type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port + type: org.onap.resource.cp.nodes.heat.network.neutron.Port metadata: invariantUUID: 7feb77d3-dcc5-4826-8a78-0c9089814a45 UUID: 06bc8ea7-0f6a-489a-9f8f-c7253653b457 @@ -213,7 +213,7 @@ topology_template: node: vlb_0 relationship: tosca.relationships.network.BindsTo vdns_private_0_port: - type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port + type: org.onap.resource.cp.nodes.heat.network.neutron.Port metadata: invariantUUID: 7feb77d3-dcc5-4826-8a78-0c9089814a45 UUID: 06bc8ea7-0f6a-489a-9f8f-c7253653b457 @@ -237,7 +237,7 @@ topology_template: node: vdns_0 relationship: tosca.relationships.network.BindsTo vlb_0: - type: org.openecomp.resource.vfc.59a2ee3fB58045feB5a1.abstact.nodes.heat.vlb + type: org.onap.resource.vfc.59a2ee3fB58045feB5a1.abstact.nodes.heat.vlb metadata: invariantUUID: f7f1d745-cfb1-4aa9-83fc-31280d0ce513 UUID: 1821f13e-411f-4b29-87a5-ae935897b2e1 @@ -263,7 +263,7 @@ topology_template: get_input: vlb_name_0 groups: base_vlb: - type: org.openecomp.groups.heat.HeatStack + type: org.onap.groups.heat.HeatStack members: - vdns_private_1_port - vlb_private_network @@ -278,7 +278,7 @@ topology_template: version: '1' name: base_vlb 59a2ee3fB58045feB5a1..dnsscaling..module-1: - type: org.openecomp.groups.VfModule + type: org.onap.groups.VfModule members: - vdns_private_1_port - vdns_0 @@ -293,7 +293,7 @@ topology_template: vf_module_description: volume_group: false 59a2ee3fB58045feB5a1..base_vlb..module-0: - type: org.openecomp.groups.VfModule + type: org.onap.groups.VfModule members: - vdns_private_1_port - vlb_private_network @@ -312,7 +312,7 @@ topology_template: vf_module_description: volume_group: false dnsscaling: - type: org.openecomp.groups.heat.HeatStack + type: org.onap.groups.heat.HeatStack members: - vdns_private_1_port - vdns_0 @@ -323,10 +323,10 @@ topology_template: version: '1' name: dnsscaling substitution_mappings: - node_type: org.openecomp.resource.vf.59a2ee3fB58045feB5a1 + node_type: org.onap.resource.vf.59a2ee3fB58045feB5a1 capabilities: vdns_0.memory: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Volume of RAM allocated to the instance occurrences: - 1 @@ -384,7 +384,7 @@ topology_template: type: string required: false vdns_0.memory.resident: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Volume of RAM used by the instance on the physical machine occurrences: - 1 @@ -442,7 +442,7 @@ topology_template: type: string required: false vdns_0.cpu: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: CPU time used occurrences: - 1 @@ -568,7 +568,7 @@ topology_template: - 1 - UNBOUNDED vlb_0.memory: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Volume of RAM allocated to the instance occurrences: - 1 @@ -650,7 +650,7 @@ topology_template: - 0 - UNBOUNDED vlb_0.vcpus: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Average disk latency occurrences: - 1 @@ -708,7 +708,7 @@ topology_template: type: string required: false vlb_0.instance: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Existence of instance occurrences: - 1 @@ -794,7 +794,7 @@ topology_template: - 1 - UNBOUNDED vlb_0.cpu: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: CPU time used occurrences: - 1 @@ -852,7 +852,7 @@ topology_template: type: string required: false vdns_0.cpu.delta: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: CPU time used since previous datapoint occurrences: - 1 @@ -910,7 +910,7 @@ topology_template: type: string required: false vlb_0.memory.resident: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Volume of RAM used by the instance on the physical machine occurrences: - 1 @@ -968,7 +968,7 @@ topology_template: type: string required: false vdns_0.vcpus: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Average disk latency occurrences: - 1 @@ -1026,7 +1026,7 @@ topology_template: type: string required: false vdns_0.memory.usage: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Volume of RAM used by the instance from the amount of its allocated memory occurrences: - 1 @@ -1084,7 +1084,7 @@ topology_template: type: string required: false vlb_0.cpu.delta: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: CPU time used since previous datapoint occurrences: - 1 @@ -1142,7 +1142,7 @@ topology_template: type: string required: false vdns_0.instance:type: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Existence of instance (OpenStack types) occurrences: - 1 @@ -1243,7 +1243,7 @@ topology_template: type: scalar-unit.size required: false vlb_0.instance:type: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Existence of instance (OpenStack types) occurrences: - 1 @@ -1316,7 +1316,7 @@ topology_template: - 0 - UNBOUNDED vlb_0.cpu_util: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Average CPU utilization occurrences: - 1 @@ -1384,7 +1384,7 @@ topology_template: - 1 - UNBOUNDED vdns_0.cpu_util: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Average CPU utilization occurrences: - 1 @@ -1442,7 +1442,7 @@ topology_template: type: string required: false vdns_0.instance: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Existence of instance occurrences: - 1 @@ -1524,7 +1524,7 @@ topology_template: - 1 - UNBOUNDED vlb_0.memory.usage: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Volume of RAM used by the instance from the amount of its allocated memory occurrences: - 1 diff --git a/controlloop/common/policy-yaml/src/test/resources/v2.0.0/Demo-1.0.0-HeatTemplates/resource-Eace933104d443b496b8-template.yml b/controlloop/common/policy-yaml/src/test/resources/v2.0.0/Demo-1.0.0-HeatTemplates/resource-Eace933104d443b496b8-template.yml index 3ce20b597..c0f4f4d39 100644 --- a/controlloop/common/policy-yaml/src/test/resources/v2.0.0/Demo-1.0.0-HeatTemplates/resource-Eace933104d443b496b8-template.yml +++ b/controlloop/common/policy-yaml/src/test/resources/v2.0.0/Demo-1.0.0-HeatTemplates/resource-Eace933104d443b496b8-template.yml @@ -24,7 +24,7 @@ topology_template: inputs: vf_module_id: type: string - description: The vFirewall Module ID is provided by ECOMP + description: The vFirewall Module ID is provided by onap repo_url_blob: type: string description: URL of the repository that hosts the demo packages @@ -40,13 +40,13 @@ topology_template: description: Private IP address that is assigned to the vFirewall to communicate with the vPacketGenerator vfw_private_ip_2: type: string - description: Private IP address that is assigned to the vFirewall to communicate with ECOMP components + description: Private IP address that is assigned to the vFirewall to communicate with ONAP components vfw_name_0: type: string description: Name of the vFirewall vnf_id: type: string - description: The VNF ID is provided by ECOMP + description: The VNF ID is provided by onap dcae_collector_ip: type: string description: IP address of the DCAE collector @@ -55,7 +55,7 @@ topology_template: description: Port of the DCAE collector vpg_private_ip_1: type: string - description: Private IP address that is assigned to the vPacketGenerator to communicate with ECOMP components + description: Private IP address that is assigned to the vPacketGenerator to communicate with ONAP components vsn_private_ip_0: type: string description: Private IP address that is assigned to the vSink to communicate with the vFirewall @@ -67,19 +67,19 @@ topology_template: description: Private IP address that is assigned to the vPacketGenerator to communicate with the vFirewall vsn_private_ip_1: type: string - description: Private IP address that is assigned to the vSink to communicate with ECOMP components + description: Private IP address that is assigned to the vSink to communicate with ONAP components protected_private_net_cidr: type: string description: The CIDR of the protected private network - ecomp_private_net_cidr: + onap_private_net_cidr: type: string description: The CIDR of the protected private network unprotected_private_net_cidr: type: string description: The CIDR of the unprotected private network - ecomp_private_subnet_id: + onap_private_subnet_id: type: string - description: Private sub-network that connects ECOMP component and the VNF + description: Private sub-network that connects ONAP component and the VNF vsn_name_0: type: string description: Name of the vSink @@ -93,9 +93,9 @@ topology_template: demo_artifacts_version: type: string description: Artifacts (jar, tar.gz) version used in demo vnfs - ecomp_private_net_id: + onap_private_net_id: type: string - description: Private network that connects ECOMP component and the VNF + description: Private network that connects ONAP component and the VNF pub_key: type: string description: Public key to be installed on the compute instance @@ -114,7 +114,7 @@ topology_template: description: Private network that connects vFirewall with vSink node_templates: vfw_private_0_port: - type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port + type: org.onap.resource.cp.nodes.heat.network.neutron.Port metadata: invariantUUID: 7feb77d3-dcc5-4826-8a78-0c9089814a45 UUID: 06bc8ea7-0f6a-489a-9f8f-c7253653b457 @@ -140,7 +140,7 @@ topology_template: node: vfw_0 relationship: tosca.relationships.network.BindsTo vsn_private_1_port: - type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port + type: org.onap.resource.cp.nodes.heat.network.neutron.Port metadata: invariantUUID: 7feb77d3-dcc5-4826-8a78-0c9089814a45 UUID: 06bc8ea7-0f6a-489a-9f8f-c7253653b457 @@ -153,18 +153,18 @@ topology_template: properties: fixed_ips: - subnet: - get_input: ecomp_private_subnet_id + get_input: onap_private_subnet_id ip_address: get_input: vsn_private_ip_1 network: - get_input: ecomp_private_net_id + get_input: onap_private_net_id requirements: - binding: capability: tosca.capabilities.network.Bindable node: vsn_0 relationship: tosca.relationships.network.BindsTo unprotected_private_network: - type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net + type: org.onap.resource.vl.nodes.heat.network.neutron.Net metadata: invariantUUID: 2870cc3a-d6cd-4423-b7f6-2d63619b0eeb UUID: b7e764ba-17f9-4f0a-ad29-29877766ef21 @@ -182,7 +182,7 @@ topology_template: cidr: get_input: unprotected_private_net_cidr vpg_private_1_port: - type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port + type: org.onap.resource.cp.nodes.heat.network.neutron.Port metadata: invariantUUID: 7feb77d3-dcc5-4826-8a78-0c9089814a45 UUID: 06bc8ea7-0f6a-489a-9f8f-c7253653b457 @@ -195,18 +195,18 @@ topology_template: properties: fixed_ips: - subnet: - get_input: ecomp_private_subnet_id + get_input: onap_private_subnet_id ip_address: get_input: vpg_private_ip_1 network: - get_input: ecomp_private_net_id + get_input: onap_private_net_id requirements: - binding: capability: tosca.capabilities.network.Bindable node: vpg_0 relationship: tosca.relationships.network.BindsTo vfw_0: - type: org.openecomp.resource.vfc.Eace933104d443b496b8.abstact.nodes.heat.vfw + type: org.onap.resource.vfc.Eace933104d443b496b8.abstact.nodes.heat.vfw metadata: invariantUUID: 0129e34c-d9fa-442d-bb2c-f925d018000a UUID: 7fa1f6c7-c6bd-4444-8db2-63334a5aed1b @@ -231,7 +231,7 @@ topology_template: name: get_input: vfw_name_0 vsn_0: - type: org.openecomp.resource.vfc.Eace933104d443b496b8.abstact.nodes.heat.vsn + type: org.onap.resource.vfc.Eace933104d443b496b8.abstact.nodes.heat.vsn metadata: invariantUUID: b19f6643-3db0-4d73-b280-94d6f21caa71 UUID: 6dca6eb9-330c-4090-a542-7aca5f446e21 @@ -256,7 +256,7 @@ topology_template: name: get_input: vsn_name_0 vpg_private_0_port: - type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port + type: org.onap.resource.cp.nodes.heat.network.neutron.Port metadata: invariantUUID: 7feb77d3-dcc5-4826-8a78-0c9089814a45 UUID: 06bc8ea7-0f6a-489a-9f8f-c7253653b457 @@ -282,7 +282,7 @@ topology_template: node: vpg_0 relationship: tosca.relationships.network.BindsTo vsn_private_0_port: - type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port + type: org.onap.resource.cp.nodes.heat.network.neutron.Port metadata: invariantUUID: 7feb77d3-dcc5-4826-8a78-0c9089814a45 UUID: 06bc8ea7-0f6a-489a-9f8f-c7253653b457 @@ -308,7 +308,7 @@ topology_template: node: vsn_0 relationship: tosca.relationships.network.BindsTo vfw_private_1_port: - type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port + type: org.onap.resource.cp.nodes.heat.network.neutron.Port metadata: invariantUUID: 7feb77d3-dcc5-4826-8a78-0c9089814a45 UUID: 06bc8ea7-0f6a-489a-9f8f-c7253653b457 @@ -334,7 +334,7 @@ topology_template: node: vfw_0 relationship: tosca.relationships.network.BindsTo vfw_private_2_port: - type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port + type: org.onap.resource.cp.nodes.heat.network.neutron.Port metadata: invariantUUID: 7feb77d3-dcc5-4826-8a78-0c9089814a45 UUID: 06bc8ea7-0f6a-489a-9f8f-c7253653b457 @@ -347,18 +347,18 @@ topology_template: properties: fixed_ips: - subnet: - get_input: ecomp_private_subnet_id + get_input: onap_private_subnet_id ip_address: get_input: vfw_private_ip_2 network: - get_input: ecomp_private_net_id + get_input: onap_private_net_id requirements: - binding: capability: tosca.capabilities.network.Bindable node: vfw_0 relationship: tosca.relationships.network.BindsTo vpg_0: - type: org.openecomp.resource.vfc.Eace933104d443b496b8.abstact.nodes.heat.vpg + type: org.onap.resource.vfc.Eace933104d443b496b8.abstact.nodes.heat.vpg metadata: invariantUUID: 7654ae14-4e98-45bc-a8c0-2c43e1805bb4 UUID: 5267d6dd-f676-4f98-abec-6387ce6beaf2 @@ -383,7 +383,7 @@ topology_template: name: get_input: vpg_name_0 protected_private_network: - type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net + type: org.onap.resource.vl.nodes.heat.network.neutron.Net metadata: invariantUUID: 2870cc3a-d6cd-4423-b7f6-2d63619b0eeb UUID: b7e764ba-17f9-4f0a-ad29-29877766ef21 @@ -402,7 +402,7 @@ topology_template: get_input: protected_private_net_cidr groups: base_vfw: - type: org.openecomp.groups.heat.HeatStack + type: org.onap.groups.heat.HeatStack members: - vfw_private_0_port - vsn_private_1_port @@ -422,7 +422,7 @@ topology_template: version: '1' name: base_vfw Eace933104d443b496b8..base_vfw..module-0: - type: org.openecomp.groups.VfModule + type: org.onap.groups.VfModule members: - vfw_private_0_port - vsn_private_1_port @@ -446,10 +446,10 @@ topology_template: vf_module_description: volume_group: false substitution_mappings: - node_type: org.openecomp.resource.vf.Eace933104d443b496b8 + node_type: org.onap.resource.vf.Eace933104d443b496b8 capabilities: vfw_0.instance: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Existence of instance occurrences: - 1 @@ -521,7 +521,7 @@ topology_template: default_instances: type: integer vfw_0.instance:type: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Existence of instance (OpenStack types) occurrences: - 1 @@ -584,7 +584,7 @@ topology_template: - 0 - UNBOUNDED vsn_0.cpu: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: CPU time used occurrences: - 1 @@ -642,7 +642,7 @@ topology_template: type: string required: false vpg_0.instance:type: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Existence of instance (OpenStack types) occurrences: - 1 @@ -705,7 +705,7 @@ topology_template: - 1 - UNBOUNDED vfw_0.memory: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Volume of RAM allocated to the instance occurrences: - 1 @@ -763,7 +763,7 @@ topology_template: type: string required: false vpg_0.cpu_util: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Average CPU utilization occurrences: - 1 @@ -869,7 +869,7 @@ topology_template: - 1 - UNBOUNDED vpg_0.cpu: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: CPU time used occurrences: - 1 @@ -932,7 +932,7 @@ topology_template: - 1 - UNBOUNDED vsn_0.vcpus: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Average disk latency occurrences: - 1 @@ -990,7 +990,7 @@ topology_template: type: string required: false vpg_0.cpu.delta: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: CPU time used since previous datapoint occurrences: - 1 @@ -1053,7 +1053,7 @@ topology_template: - 1 - UNBOUNDED vsn_0.cpu_util: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Average CPU utilization occurrences: - 1 @@ -1111,7 +1111,7 @@ topology_template: type: string required: false vpg_0.instance: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Existence of instance occurrences: - 1 @@ -1188,7 +1188,7 @@ topology_template: default_instances: type: integer vpg_0.memory: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Volume of RAM allocated to the instance occurrences: - 1 @@ -1269,7 +1269,7 @@ topology_template: type: string required: false vfw_0.memory.resident: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Volume of RAM used by the instance on the physical machine occurrences: - 1 @@ -1341,7 +1341,7 @@ topology_template: default_instances: type: integer vsn_0.instance: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Existence of instance occurrences: - 1 @@ -1432,7 +1432,7 @@ topology_template: type: string required: false vsn_0.cpu.delta: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: CPU time used since previous datapoint occurrences: - 1 @@ -1518,7 +1518,7 @@ topology_template: - 1 - UNBOUNDED vfw_0.memory.usage: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Volume of RAM used by the instance from the amount of its allocated memory occurrences: - 1 @@ -1596,7 +1596,7 @@ topology_template: type: scalar-unit.size required: false vsn_0.memory: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Volume of RAM allocated to the instance occurrences: - 1 @@ -1694,7 +1694,7 @@ topology_template: - 1 - UNBOUNDED vpg_0.vcpus: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Average disk latency occurrences: - 1 @@ -1792,7 +1792,7 @@ topology_template: - 0 - UNBOUNDED vpg_0.memory.usage: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Volume of RAM used by the instance from the amount of its allocated memory occurrences: - 1 @@ -1898,7 +1898,7 @@ topology_template: - 1 - UNBOUNDED vfw_0.cpu: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: CPU time used occurrences: - 1 @@ -1956,7 +1956,7 @@ topology_template: type: string required: false vsn_0.instance:type: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Existence of instance (OpenStack types) occurrences: - 1 @@ -2037,7 +2037,7 @@ topology_template: - 1 - UNBOUNDED vfw_0.vcpus: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Average disk latency occurrences: - 1 @@ -2095,7 +2095,7 @@ topology_template: type: string required: false vfw_0.cpu.delta: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: CPU time used since previous datapoint occurrences: - 1 @@ -2153,7 +2153,7 @@ topology_template: type: string required: false vsn_0.memory.resident: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Volume of RAM used by the instance on the physical machine occurrences: - 1 @@ -2211,7 +2211,7 @@ topology_template: type: string required: false vsn_0.memory.usage: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Volume of RAM used by the instance from the amount of its allocated memory occurrences: - 1 @@ -2274,7 +2274,7 @@ topology_template: - 1 - UNBOUNDED vfw_0.cpu_util: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Average CPU utilization occurrences: - 1 @@ -2332,7 +2332,7 @@ topology_template: type: string required: false vpg_0.memory.resident: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Volume of RAM used by the instance on the physical machine occurrences: - 1 diff --git a/controlloop/common/policy-yaml/src/test/resources/v2.0.0/Demo-1.0.0-HeatTemplates/service-57e66ea70ed645c7970f-template.yml b/controlloop/common/policy-yaml/src/test/resources/v2.0.0/Demo-1.0.0-HeatTemplates/service-57e66ea70ed645c7970f-template.yml index b59c85269..4bfd629e9 100644 --- a/controlloop/common/policy-yaml/src/test/resources/v2.0.0/Demo-1.0.0-HeatTemplates/service-57e66ea70ed645c7970f-template.yml +++ b/controlloop/common/policy-yaml/src/test/resources/v2.0.0/Demo-1.0.0-HeatTemplates/service-57e66ea70ed645c7970f-template.yml @@ -6,7 +6,7 @@ metadata: description: catalog service description type: Service category: Network L1-3 - serviceEcompNaming: false + serviceOnapNaming: false serviceHoming: false imports: - eace9331-04d4-43b4-96b8: @@ -14,7 +14,7 @@ imports: topology_template: node_templates: eace9331-04d4-43b4-96b8 1: - type: org.openecomp.resource.vf.Eace933104d443b496b8 + type: org.onap.resource.vf.Eace933104d443b496b8 metadata: invariantUUID: 06fe411e-d006-4ac3-8b0e-fb4f13cd78d3 UUID: 172ce7c5-c2e4-4f8d-b66c-edb49e8e548a @@ -25,10 +25,10 @@ topology_template: category: Generic subcategory: Abstract substitution_mappings: - node_type: org.openecomp.service.57e66ea70ed645c7970f + node_type: org.onap.service.57e66ea70ed645c7970f capabilities: eace9331-04d4-43b4-96b8 1.memory.resident: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Volume of RAM used by the instance on the physical machine occurrences: - 1 @@ -129,7 +129,7 @@ topology_template: type: scalar-unit.size required: false eace9331-04d4-43b4-96b8 1.instance: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Existence of instance occurrences: - 1 @@ -201,7 +201,7 @@ topology_template: default_instances: type: integer eace9331-04d4-43b4-96b8 1.memory: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Volume of RAM allocated to the instance occurrences: - 1 @@ -264,7 +264,7 @@ topology_template: - 1 - UNBOUNDED eace9331-04d4-43b4-96b8 1.vcpus: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Average disk latency occurrences: - 1 @@ -322,7 +322,7 @@ topology_template: type: string required: false eace9331-04d4-43b4-96b8 1.cpu_util: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Average CPU utilization occurrences: - 1 @@ -380,7 +380,7 @@ topology_template: type: string required: false eace9331-04d4-43b4-96b8 1.cpu.delta: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: CPU time used since previous datapoint occurrences: - 1 @@ -443,7 +443,7 @@ topology_template: - 1 - UNBOUNDED eace9331-04d4-43b4-96b8 1.cpu: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: CPU time used occurrences: - 1 @@ -501,7 +501,7 @@ topology_template: type: string required: false eace9331-04d4-43b4-96b8 1.instance:type: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Existence of instance (OpenStack types) occurrences: - 1 @@ -564,7 +564,7 @@ topology_template: - 0 - UNBOUNDED eace9331-04d4-43b4-96b8 1.memory.usage: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Volume of RAM used by the instance from the amount of its allocated memory occurrences: - 1 diff --git a/controlloop/common/policy-yaml/src/test/resources/v2.0.0/Demo-1.0.0-HeatTemplates/service-D473899264974dca9db9-template.yml b/controlloop/common/policy-yaml/src/test/resources/v2.0.0/Demo-1.0.0-HeatTemplates/service-D473899264974dca9db9-template.yml index 302cacc0a..2293b3aca 100644 --- a/controlloop/common/policy-yaml/src/test/resources/v2.0.0/Demo-1.0.0-HeatTemplates/service-D473899264974dca9db9-template.yml +++ b/controlloop/common/policy-yaml/src/test/resources/v2.0.0/Demo-1.0.0-HeatTemplates/service-D473899264974dca9db9-template.yml @@ -6,7 +6,7 @@ metadata: description: catalog service description type: Service category: Network L1-3 - serviceEcompNaming: false + serviceOnapNaming: false serviceHoming: false imports: - 59a2ee3f-b580-45fe-b5a1: @@ -14,7 +14,7 @@ imports: topology_template: node_templates: 59a2ee3f-b580-45fe-b5a1 1: - type: org.openecomp.resource.vf.59a2ee3fB58045feB5a1 + type: org.onap.resource.vf.59a2ee3fB58045feB5a1 metadata: invariantUUID: 4b8d4018-068b-4c33-b9bb-d980798e52c2 UUID: d7d28881-b24d-4512-bfee-1e2eb335591f @@ -25,10 +25,10 @@ topology_template: category: Generic subcategory: Abstract substitution_mappings: - node_type: org.openecomp.service.D473899264974dca9db9 + node_type: org.onap.service.D473899264974dca9db9 capabilities: 59a2ee3f-b580-45fe-b5a1 1.memory.resident: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Volume of RAM used by the instance on the physical machine occurrences: - 1 @@ -134,7 +134,7 @@ topology_template: - 0 - UNBOUNDED 59a2ee3f-b580-45fe-b5a1 1.vcpus: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Average disk latency occurrences: - 1 @@ -212,7 +212,7 @@ topology_template: type: scalar-unit.size required: false 59a2ee3f-b580-45fe-b5a1 1.memory.usage: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Volume of RAM used by the instance from the amount of its allocated memory occurrences: - 1 @@ -270,7 +270,7 @@ topology_template: type: string required: false 59a2ee3f-b580-45fe-b5a1 1.instance: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Existence of instance occurrences: - 1 @@ -342,7 +342,7 @@ topology_template: default_instances: type: integer 59a2ee3f-b580-45fe-b5a1 1.cpu_util: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Average CPU utilization occurrences: - 1 @@ -400,7 +400,7 @@ topology_template: type: string required: false 59a2ee3f-b580-45fe-b5a1 1.instance:type: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Existence of instance (OpenStack types) occurrences: - 1 @@ -458,7 +458,7 @@ topology_template: type: string required: false 59a2ee3f-b580-45fe-b5a1 1.cpu.delta: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: CPU time used since previous datapoint occurrences: - 1 @@ -516,7 +516,7 @@ topology_template: type: string required: false 59a2ee3f-b580-45fe-b5a1 1.memory: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: Volume of RAM allocated to the instance occurrences: - 1 @@ -579,7 +579,7 @@ topology_template: - 0 - UNBOUNDED 59a2ee3f-b580-45fe-b5a1 1.cpu: - type: org.openecomp.capabilities.metric.Ceilometer + type: org.onap.capabilities.metric.Ceilometer description: CPU time used occurrences: - 1 -- cgit 1.2.3-korg