From 347f178c656d82aa0c6d4ab56eb0846a94d7af40 Mon Sep 17 00:00:00 2001 From: "aravind.est" Date: Fri, 14 Jul 2023 09:53:41 +0100 Subject: [PATCH] Add initial version of code Initial version of rapp manager code added. Issue-ID: NONRTRIC-872 Signed-off-by: aravind.est Change-Id: I124b20a0790ba701d32089b66f81fc8b4e647e79 --- .gitignore | 33 + .gitmodules | 4 + README.md | 10 + pom.xml | 26 + rapp-manager-acm/pom.xml | 123 ++ .../acm/configuration/ACMConfiguration.java | 36 + .../rappmanager/acm/service/AcmDeployer.java | 201 +++ .../AutomationCompositionLifeCycleManager.java | 104 ++ .../src/main/resources/openapi/acm-spec.yaml | 1388 ++++++++++++++++++++ rapp-manager-application/pom.xml | 162 +++ .../com/oransc/rappmanager/BeanConfiguration.java | 110 ++ .../oransc/rappmanager/RappManagerApplication.java | 37 + .../java/com/oransc/rappmanager/WriteCsarFile.java | 95 ++ .../configuration/RappManagerConfiguration.java | 31 + .../ACMInvalidStateTransitionException.java | 29 + .../rappmanager/rest/OnboardingController.java | 131 ++ .../src/main/resources/application.yaml | 30 + .../src/main/resources/compositiondefinition.json | 320 +++++ .../Artifacts/Deployment/HELM/free5gc-1.1.3.tgz | Bin 0 -> 257267 bytes .../Artifacts/Deployment/HELM/ueransim-2.0.14.tgz | Bin 0 -> 9102 bytes .../resources/resource-csar/Definitions/asd.yaml | 112 ++ .../resource-csar/Definitions/asd_types.yaml | 448 +++++++ .../resource-csar/Files/Acm/instantiation.json | 72 + .../resources/resource-csar/Files/ChangeLog.txt | 1 + .../resource-csar/Files/Events/MyASD_v1.yaml | 213 +++ .../resource-csar/Files/Guides/user_guide.txt | 1 + .../Files/Measurements/PM_Dictionary.yaml | 186 +++ .../resource-csar/Files/Scripts/my_script.sh | 2 + .../resources/resource-csar/Files/Sme/invoker.json | 14 + .../resource-csar/Files/Sme/provider-api.json | 45 + .../resource-csar/Files/Sme/provider-domain.json | 34 + .../resource-csar/Files/Yang_module/mynetconf.yang | 26 + .../resources/resource-csar/Files/rapp1/rapp.zip | Bin 0 -> 281 bytes .../resource-csar/TOSCA-Metadata/TOSCA.meta | 5 + .../src/main/resources/resource-csar/asd.mf | 35 + .../rappmanager/rest/OnboardingControllerTest.java | 149 +++ .../rappmanager/service/AcmDeployerTest.java | 313 +++++ .../service/RappCsarConfigurationHandlerTest.java | 87 ++ .../rappmanager/sme/service/SmeDeployerTest.java | 440 +++++++ .../statemachine/RappStateMachineTest.java | 166 +++ .../src/test/resources/invalid-rapp-package.csar | Bin 0 -> 280225 bytes .../src/test/resources/valid-rapp-package.csar | Bin 0 -> 281345 bytes rapp-manager-models/pom.xml | 54 + .../java/com/oransc/rappmanager/models/Rapp.java | 51 + .../models/RappCsarConfigurationHandler.java | 115 ++ .../oransc/rappmanager/models/RappDeployer.java | 6 + .../com/oransc/rappmanager/models/RappEvent.java | 6 + .../com/oransc/rappmanager/models/RappState.java | 23 + .../rappmanager/models/cache/RappCacheService.java | 61 + .../models/statemachine/RappStateMachine.java | 44 + .../statemachine/RappStateMachineConfig.java | 87 ++ rapp-manager-sme/pom.xml | 178 +++ .../sme/configuration/SmeConfiguration.java | 36 + .../rappmanager/sme/service/SmeDeployer.java | 225 ++++ .../sme/service/SmeLifecycleManager.java | 63 + scripts/init/getsmeswagger.go | 95 ++ scripts/init/init-sme-spec.sh | 46 + sme | 1 + 58 files changed, 6310 insertions(+) create mode 100755 .gitignore create mode 100644 .gitmodules create mode 100755 README.md create mode 100755 pom.xml create mode 100755 rapp-manager-acm/pom.xml create mode 100755 rapp-manager-acm/src/main/java/com/oransc/rappmanager/acm/configuration/ACMConfiguration.java create mode 100755 rapp-manager-acm/src/main/java/com/oransc/rappmanager/acm/service/AcmDeployer.java create mode 100755 rapp-manager-acm/src/main/java/com/oransc/rappmanager/acm/service/AutomationCompositionLifeCycleManager.java create mode 100755 rapp-manager-acm/src/main/resources/openapi/acm-spec.yaml create mode 100755 rapp-manager-application/pom.xml create mode 100755 rapp-manager-application/src/main/java/com/oransc/rappmanager/BeanConfiguration.java create mode 100755 rapp-manager-application/src/main/java/com/oransc/rappmanager/RappManagerApplication.java create mode 100755 rapp-manager-application/src/main/java/com/oransc/rappmanager/WriteCsarFile.java create mode 100755 rapp-manager-application/src/main/java/com/oransc/rappmanager/configuration/RappManagerConfiguration.java create mode 100755 rapp-manager-application/src/main/java/com/oransc/rappmanager/exception/ACMInvalidStateTransitionException.java create mode 100755 rapp-manager-application/src/main/java/com/oransc/rappmanager/rest/OnboardingController.java create mode 100755 rapp-manager-application/src/main/resources/application.yaml create mode 100755 rapp-manager-application/src/main/resources/compositiondefinition.json create mode 100755 rapp-manager-application/src/main/resources/resource-csar/Artifacts/Deployment/HELM/free5gc-1.1.3.tgz create mode 100755 rapp-manager-application/src/main/resources/resource-csar/Artifacts/Deployment/HELM/ueransim-2.0.14.tgz create mode 100755 rapp-manager-application/src/main/resources/resource-csar/Definitions/asd.yaml create mode 100755 rapp-manager-application/src/main/resources/resource-csar/Definitions/asd_types.yaml create mode 100755 rapp-manager-application/src/main/resources/resource-csar/Files/Acm/instantiation.json create mode 100755 rapp-manager-application/src/main/resources/resource-csar/Files/ChangeLog.txt create mode 100755 rapp-manager-application/src/main/resources/resource-csar/Files/Events/MyASD_v1.yaml create mode 100755 rapp-manager-application/src/main/resources/resource-csar/Files/Guides/user_guide.txt create mode 100755 rapp-manager-application/src/main/resources/resource-csar/Files/Measurements/PM_Dictionary.yaml create mode 100755 rapp-manager-application/src/main/resources/resource-csar/Files/Scripts/my_script.sh create mode 100755 rapp-manager-application/src/main/resources/resource-csar/Files/Sme/invoker.json create mode 100755 rapp-manager-application/src/main/resources/resource-csar/Files/Sme/provider-api.json create mode 100755 rapp-manager-application/src/main/resources/resource-csar/Files/Sme/provider-domain.json create mode 100755 rapp-manager-application/src/main/resources/resource-csar/Files/Yang_module/mynetconf.yang create mode 100755 rapp-manager-application/src/main/resources/resource-csar/Files/rapp1/rapp.zip create mode 100755 rapp-manager-application/src/main/resources/resource-csar/TOSCA-Metadata/TOSCA.meta create mode 100755 rapp-manager-application/src/main/resources/resource-csar/asd.mf create mode 100755 rapp-manager-application/src/test/java/com/oransc/rappmanager/rest/OnboardingControllerTest.java create mode 100755 rapp-manager-application/src/test/java/com/oransc/rappmanager/service/AcmDeployerTest.java create mode 100755 rapp-manager-application/src/test/java/com/oransc/rappmanager/service/RappCsarConfigurationHandlerTest.java create mode 100755 rapp-manager-application/src/test/java/com/oransc/rappmanager/sme/service/SmeDeployerTest.java create mode 100755 rapp-manager-application/src/test/java/com/oransc/rappmanager/statemachine/RappStateMachineTest.java create mode 100755 rapp-manager-application/src/test/resources/invalid-rapp-package.csar create mode 100755 rapp-manager-application/src/test/resources/valid-rapp-package.csar create mode 100755 rapp-manager-models/pom.xml create mode 100755 rapp-manager-models/src/main/java/com/oransc/rappmanager/models/Rapp.java create mode 100755 rapp-manager-models/src/main/java/com/oransc/rappmanager/models/RappCsarConfigurationHandler.java create mode 100755 rapp-manager-models/src/main/java/com/oransc/rappmanager/models/RappDeployer.java create mode 100755 rapp-manager-models/src/main/java/com/oransc/rappmanager/models/RappEvent.java create mode 100755 rapp-manager-models/src/main/java/com/oransc/rappmanager/models/RappState.java create mode 100755 rapp-manager-models/src/main/java/com/oransc/rappmanager/models/cache/RappCacheService.java create mode 100755 rapp-manager-models/src/main/java/com/oransc/rappmanager/models/statemachine/RappStateMachine.java create mode 100755 rapp-manager-models/src/main/java/com/oransc/rappmanager/models/statemachine/RappStateMachineConfig.java create mode 100755 rapp-manager-sme/pom.xml create mode 100755 rapp-manager-sme/src/main/java/com/oransc/rappmanager/sme/configuration/SmeConfiguration.java create mode 100755 rapp-manager-sme/src/main/java/com/oransc/rappmanager/sme/service/SmeDeployer.java create mode 100755 rapp-manager-sme/src/main/java/com/oransc/rappmanager/sme/service/SmeLifecycleManager.java create mode 100755 scripts/init/getsmeswagger.go create mode 100755 scripts/init/init-sme-spec.sh create mode 160000 sme diff --git a/.gitignore b/.gitignore new file mode 100755 index 0000000..549e00a --- /dev/null +++ b/.gitignore @@ -0,0 +1,33 @@ +HELP.md +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..343a972 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,4 @@ +[submodule "sme"] + path = sme + url = https://gerrit.o-ran-sc.org/r/nonrtric/plt/sme + branch = master diff --git a/README.md b/README.md new file mode 100755 index 0000000..ce1339b --- /dev/null +++ b/README.md @@ -0,0 +1,10 @@ +# Rapp Manager (This is a prototype) +Rapp manager is an application which lifecycle manages the Rapp. + +**Rapp packaging model used here is purely a prototype** + +# Integration of ONAP ACM + +ONAP ACM is used here as a backend of Rapp manager to lifecycle manage the deployment items as part of Rapp. + +ONAP ACM related details can be found [here](https://docs.onap.org/projects/onap-policy-parent/en/london/clamp/clamp.html). diff --git a/pom.xml b/pom.xml new file mode 100755 index 0000000..d1f051e --- /dev/null +++ b/pom.xml @@ -0,0 +1,26 @@ + + + 4.0.0 + + org.springframework.boot + spring-boot-starter-parent + 3.0.6 + + com.oransc + rappmanager + 0.0.1-SNAPSHOT + pom + rappmanager + Rapp Manager(ACM) in ORANSC + + rapp-manager-models + rapp-manager-acm + rapp-manager-sme + rapp-manager-application + + + 17 + 6.6.0 + + diff --git a/rapp-manager-acm/pom.xml b/rapp-manager-acm/pom.xml new file mode 100755 index 0000000..9740db8 --- /dev/null +++ b/rapp-manager-acm/pom.xml @@ -0,0 +1,123 @@ + + + 4.0.0 + + com.oransc + rappmanager + 0.0.1-SNAPSHOT + + + com.oransc.rappmanager + rapp-manager-acm + + + ${java.version} + ${java.version} + UTF-8 + + + + + com.oransc.rappmanager + rapp-manager-models + ${project.version} + + + org.onap.policy.clamp + policy-clamp-models + 6.4.2 + + + org.springframework.boot + spring-boot-starter-data-jpa + + + org.springframework.boot + spring-boot-starter-aop + + + org.springframework.boot + spring-boot-starter-security + + + org.springframework.boot + spring-boot-starter-validation + + + org.springframework.boot + spring-boot-starter-webflux + + + + + org.openapitools + jackson-databind-nullable + 0.2.6 + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + + org.openapitools + openapi-generator-maven-plugin + ${openapi.maven.version} + + + acm-spec-generator + + generate + + + rapp-manager-acm/src/main/resources/openapi/acm-spec.yaml + java + resttemplate + false + false + false + false + true + + ToscaServiceTemplates=org.onap.policy.models.tosca.authorative.concepts.ToscaServiceTemplates, + ToscaServiceTemplate=org.onap.policy.models.tosca.authorative.concepts.ToscaServiceTemplate, + ToscaNodeTemplate=org.onap.policy.models.tosca.authorative.concepts.ToscaNodeTemplate, + AutomationCompositions=org.onap.policy.clamp.models.acm.concepts.AutomationCompositions, + AutomationComposition=org.onap.policy.clamp.models.acm.concepts.AutomationComposition, + + SimpleResponse=org.onap.policy.clamp.models.acm.messages.rest.SimpleResponse, + AcTypeStateUpdate=org.onap.policy.clamp.models.acm.messages.rest.commissioning.AcTypeStateUpdate, + AcInstanceStateUpdate=org.onap.policy.clamp.models.acm.messages.rest.instantiation.AcInstanceStateUpdate, + InstancePropertiesResponse=org.onap.policy.clamp.models.acm.messages.rest.instantiation.InstancePropertiesResponse, + CommissioningResponse=org.onap.policy.clamp.models.acm.messages.rest.commissioning.CommissioningResponse, + InstantiationCommand=org.onap.policy.clamp.models.acm.messages.rest.instantiation.InstantiationCommand, + InstantiationResponse=org.onap.policy.clamp.models.acm.messages.rest.instantiation.InstantiationResponse, + InstantiationUpdate=org.onap.policy.clamp.models.acm.messages.rest.instantiation.InstantiationUpdate, + ParticipantInformation=org.onap.policy.clamp.models.acm.concepts.ParticipantInformation + + + apiNameSuffix=ApiClient + + + src/main/java + true + com.oransc.rappmanager.acm + com.oransc.rappmanager.acm.rest + com.oransc.rappmanager.acm.data + false + + + + + + + + + \ No newline at end of file diff --git a/rapp-manager-acm/src/main/java/com/oransc/rappmanager/acm/configuration/ACMConfiguration.java b/rapp-manager-acm/src/main/java/com/oransc/rappmanager/acm/configuration/ACMConfiguration.java new file mode 100755 index 0000000..6582775 --- /dev/null +++ b/rapp-manager-acm/src/main/java/com/oransc/rappmanager/acm/configuration/ACMConfiguration.java @@ -0,0 +1,36 @@ +/*- + * ============LICENSE_START====================================================================== + * Copyright (C) 2023 Nordix Foundation. All rights reserved. + * =============================================================================================== + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS 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.oransc.rappmanager.acm.configuration; + +import lombok.Data; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.context.annotation.Configuration; + +@Configuration +@ConfigurationProperties(prefix = "rappmanager.acm") +@Data +public class ACMConfiguration { + + String baseUrl; + String username; + String password; + String compositionDefinitionLocation; + int maxRetries; + int retryInterval; +} diff --git a/rapp-manager-acm/src/main/java/com/oransc/rappmanager/acm/service/AcmDeployer.java b/rapp-manager-acm/src/main/java/com/oransc/rappmanager/acm/service/AcmDeployer.java new file mode 100755 index 0000000..def268b --- /dev/null +++ b/rapp-manager-acm/src/main/java/com/oransc/rappmanager/acm/service/AcmDeployer.java @@ -0,0 +1,201 @@ +/*- + * ============LICENSE_START====================================================================== + * Copyright (C) 2023 Nordix Foundation. All rights reserved. + * =============================================================================================== + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS 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.oransc.rappmanager.acm.service; + +import com.oransc.rappmanager.acm.configuration.ACMConfiguration; +import com.oransc.rappmanager.acm.rest.AutomationCompositionDefinitionApiClient; +import com.oransc.rappmanager.acm.rest.AutomationCompositionInstanceApiClient; +import com.oransc.rappmanager.acm.rest.ParticipantMonitoringApiClient; +import com.oransc.rappmanager.models.Rapp; +import com.oransc.rappmanager.models.RappCsarConfigurationHandler; +import com.oransc.rappmanager.models.RappDeployer; +import com.oransc.rappmanager.models.RappEvent; +import com.oransc.rappmanager.models.RappState; +import com.oransc.rappmanager.models.cache.RappCacheService; +import com.oransc.rappmanager.models.statemachine.RappStateMachine; +import java.util.List; +import java.util.UUID; +import java.util.concurrent.TimeUnit; +import lombok.Getter; +import lombok.RequiredArgsConstructor; +import org.onap.policy.clamp.models.acm.concepts.AcTypeState; +import org.onap.policy.clamp.models.acm.concepts.AutomationComposition; +import org.onap.policy.clamp.models.acm.concepts.DeployState; +import org.onap.policy.clamp.models.acm.concepts.LockState; +import org.onap.policy.clamp.models.acm.concepts.ParticipantInformation; +import org.onap.policy.clamp.models.acm.messages.rest.commissioning.AcTypeStateUpdate; +import org.onap.policy.clamp.models.acm.messages.rest.commissioning.CommissioningResponse; +import org.onap.policy.clamp.models.acm.messages.rest.commissioning.PrimeOrder; +import org.onap.policy.clamp.models.acm.messages.rest.instantiation.AcInstanceStateUpdate; +import org.onap.policy.clamp.models.acm.messages.rest.instantiation.DeployOrder; +import org.onap.policy.clamp.models.acm.messages.rest.instantiation.InstantiationResponse; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Service; +import org.springframework.web.client.RestClientException; + +@Service +@RequiredArgsConstructor +public class AcmDeployer implements RappDeployer { + + Logger logger = LoggerFactory.getLogger(AcmDeployer.class); + + private final ParticipantMonitoringApiClient participantMonitoringApiClient; + private final AutomationCompositionDefinitionApiClient automationCompositionDefinitionApiClient; + private final AutomationCompositionInstanceApiClient automationCompositionInstanceApiClient; + private final RappCsarConfigurationHandler rappCsarConfigurationHandler; + private final RappCacheService rappCacheService; + private final RappStateMachine rappStateMachine; + private final ACMConfiguration acmConfiguration; + @Getter + private UUID compositionId; + + public List getAllParticipants() { + return participantMonitoringApiClient.queryParticipants(null, null, UUID.randomUUID()); + } + + + void updateACMInstanceState(Rapp rapp, DeployOrder deployOrder) { + AcInstanceStateUpdate acInstanceStateUpdate = new AcInstanceStateUpdate(); + acInstanceStateUpdate.setDeployOrder(deployOrder); + automationCompositionInstanceApiClient.compositionInstanceState(rapp.getCompositionId(), + rapp.getCompositionInstanceId(), acInstanceStateUpdate, UUID.randomUUID()); + } + + public void primeACMComposition(UUID compositionId, PrimeOrder primeOrder) { + AcTypeStateUpdate acTypeStateUpdate = new AcTypeStateUpdate(); + acTypeStateUpdate.setPrimeOrder(primeOrder); + automationCompositionDefinitionApiClient.compositionDefinitionPriming(compositionId, UUID.randomUUID(), + acTypeStateUpdate); + } + + public CommissioningResponse createComposition(String compositionPayload) { + CommissioningResponse commissioningResponse = null; + try { + commissioningResponse = + automationCompositionDefinitionApiClient.createCompositionDefinitions(compositionPayload, + UUID.randomUUID()); + compositionId = commissioningResponse.getCompositionId(); + } catch (Exception e) { + logger.warn("Error in creating composition", e); + } + return commissioningResponse; + } + + public CommissioningResponse deleteComposition(UUID compositionId) { + return automationCompositionDefinitionApiClient.deleteCompositionDefinition(compositionId, UUID.randomUUID()); + } + + public boolean isCompositionStateEquals(UUID compositionId, AcTypeState acTypeState) { + //automationCompositionDefinitionApiClient.getCompositionDefinition(compositionId, UUID.randomUUID()).getState().equals(acTypeState); + //TODO httpmessage converter doesn't map AutomationCompositionDefinition properly, Fix that and check the response + return true; + } + + boolean isCompositionInstanceStateEquals(UUID compositionId, UUID compositionIntanceId, DeployState deployState) { + return automationCompositionInstanceApiClient.getCompositionInstance(compositionId, compositionIntanceId, + UUID.randomUUID()).getDeployState().equals(deployState); + } + + boolean waitForCompositionInstanceTargetState(Rapp rapp, DeployState deployState) { + boolean targetInstanceStateTransition = false; + try { + for (int i = 0; i < acmConfiguration.getMaxRetries(); i++) { + logger.debug("Composition instance state check {}", i + 1); + if (isCompositionInstanceStateEquals(rapp.getCompositionId(), rapp.getCompositionInstanceId(), + deployState)) { + sendRappStateEvent(rapp, deployState); + logger.info("Composition instance {} state is {}", rapp.getCompositionInstanceId(), deployState); + targetInstanceStateTransition = true; + break; + } else { + TimeUnit.SECONDS.sleep(acmConfiguration.getRetryInterval()); + } + } + } catch (Exception e) { + logger.warn("Unable to get composition instance state for composition {}", rapp.getCompositionId()); + } + return targetInstanceStateTransition; + } + + @Override + public boolean deployRapp(Rapp rapp) { + try { + rapp.setCompositionId(getCompositionId()); + String instantiationPayload = + rappCsarConfigurationHandler.getInstantiationPayload(rapp, getCompositionId()); + InstantiationResponse instantiationResponse = + automationCompositionInstanceApiClient.createCompositionInstance(getCompositionId(), + instantiationPayload, UUID.randomUUID()); + if (instantiationResponse.getInstanceId() != null) { + rapp.setCompositionInstanceId(instantiationResponse.getInstanceId()); + updateACMInstanceState(rapp, DeployOrder.DEPLOY); + return true; + } + } catch (Exception e) { + logger.warn("Error in deploying Rapp", e); + } + return false; + } + + @Override + public boolean undeployRapp(Rapp rapp) { + AutomationComposition automationComposition = + automationCompositionInstanceApiClient.getCompositionInstance(rapp.getCompositionId(), + rapp.getCompositionInstanceId(), UUID.randomUUID()); + if (automationComposition.getDeployState().equals(DeployState.DEPLOYED) && automationComposition.getLockState() + .equals(LockState.LOCKED)) { + updateACMInstanceState(rapp, DeployOrder.UNDEPLOY); + if (waitForCompositionInstanceTargetState(rapp, DeployState.UNDEPLOYED)) { + automationCompositionInstanceApiClient.deleteCompositionInstance( + automationComposition.getCompositionId(), automationComposition.getInstanceId(), + UUID.randomUUID()); + rappStateMachine.sendRappEvent(rapp, RappEvent.ACMUNDEPLOYED); + return true; + } + } + return false; + } + + public void syncRappStatus(Rapp rapp) { + if (rapp.getCompositionId() != null && rapp.getCompositionInstanceId() != null) { + try { + AutomationComposition compositionInstance = + automationCompositionInstanceApiClient.getCompositionInstance(rapp.getCompositionId(), + rapp.getCompositionInstanceId(), UUID.randomUUID()); + logger.info("ACM details are " + compositionInstance.toString()); + sendRappStateEvent(rapp, compositionInstance.getDeployState()); + } catch (RestClientException exception) { + logger.warn("Unable to get the ACM details for rapp {}", rapp.getName()); + } + } + } + + void sendRappStateEvent(Rapp rapp, DeployState deployState) { + if (deployState.equals(DeployState.DEPLOYED)) { + rappStateMachine.sendRappEvent(rapp, RappEvent.ACMDEPLOYED); + } else if (deployState.equals(DeployState.UNDEPLOYED)) { + rappStateMachine.sendRappEvent(rapp, RappEvent.ACMUNDEPLOYED); + } else if (deployState.equals(DeployState.DEPLOYING)) { + rappStateMachine.sendRappEvent(rapp, RappEvent.DEPLOYING); + } else if (deployState.equals(DeployState.UNDEPLOYING)) { + rappStateMachine.sendRappEvent(rapp, RappEvent.UNDEPLOYING); + } + } +} diff --git a/rapp-manager-acm/src/main/java/com/oransc/rappmanager/acm/service/AutomationCompositionLifeCycleManager.java b/rapp-manager-acm/src/main/java/com/oransc/rappmanager/acm/service/AutomationCompositionLifeCycleManager.java new file mode 100755 index 0000000..8498bdf --- /dev/null +++ b/rapp-manager-acm/src/main/java/com/oransc/rappmanager/acm/service/AutomationCompositionLifeCycleManager.java @@ -0,0 +1,104 @@ +/*- + * ============LICENSE_START====================================================================== + * Copyright (C) 2023 Nordix Foundation. All rights reserved. + * =============================================================================================== + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS 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.oransc.rappmanager.acm.service; + + +import com.oransc.rappmanager.acm.configuration.ACMConfiguration; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.concurrent.TimeUnit; +import lombok.RequiredArgsConstructor; +import org.onap.policy.clamp.models.acm.concepts.AcTypeState; +import org.onap.policy.clamp.models.acm.messages.rest.commissioning.CommissioningResponse; +import org.onap.policy.clamp.models.acm.messages.rest.commissioning.PrimeOrder; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.context.SmartLifecycle; +import org.springframework.stereotype.Service; + +@Service +@RequiredArgsConstructor +public class AutomationCompositionLifeCycleManager implements SmartLifecycle { + + Logger logger = LoggerFactory.getLogger(AutomationCompositionLifeCycleManager.class); + private final ACMConfiguration acmConfiguration; + private final AcmDeployer acmDeployer; + private boolean running; + + @Override + public void start() { + logger.info("Initializing automation Composition"); + try { + String compositionPayload = Files.readString(Path.of(acmConfiguration.getCompositionDefinitionLocation())); + CommissioningResponse commissioningResponse = + acmDeployer.createComposition(compositionPayload); + if (commissioningResponse != null && commissioningResponse.getCompositionId() != null) { + logger.info("Priming automation Composition"); + acmDeployer.primeACMComposition(commissioningResponse.getCompositionId(), + PrimeOrder.PRIME); + for (int i = 0; i < acmConfiguration.getMaxRetries(); i++) { + logger.debug("Composition priming check {}", i + 1); + if (acmDeployer.isCompositionStateEquals(commissioningResponse.getCompositionId(), + AcTypeState.PRIMED)) { + logger.info("Composition {} is primed", commissioningResponse.getCompositionId()); + running = true; + break; + } else { + TimeUnit.SECONDS.sleep(acmConfiguration.getRetryInterval()); + } + } + } else { + logger.error("Failed to create automation composition"); + } + } catch (Exception e) { + logger.error("Failed to create automation composition", e); + } + } + + @Override + public void stop() { + logger.info("Depriming automation Composition"); + if (running) { + try { + acmDeployer.primeACMComposition(acmDeployer.getCompositionId(), + PrimeOrder.DEPRIME); + for (int i = 0; i < acmConfiguration.getMaxRetries(); i++) { + logger.debug("Composition depriming check {}", i + 1); + if (acmDeployer.isCompositionStateEquals( + acmDeployer.getCompositionId(), AcTypeState.COMMISSIONED)) { + logger.info("Composition {} is deprimed", acmDeployer.getCompositionId()); + logger.info("Deleting automation Composition"); + acmDeployer.deleteComposition(acmDeployer.getCompositionId()); + running = false; + break; + } else { + TimeUnit.SECONDS.sleep(acmConfiguration.getRetryInterval()); + } + } + } catch (Exception e) { + logger.error("Failed to cleanup automation composition"); + } + } + } + + @Override + public boolean isRunning() { + return running; + } +} diff --git a/rapp-manager-acm/src/main/resources/openapi/acm-spec.yaml b/rapp-manager-acm/src/main/resources/openapi/acm-spec.yaml new file mode 100755 index 0000000..6eae87b --- /dev/null +++ b/rapp-manager-acm/src/main/resources/openapi/acm-spec.yaml @@ -0,0 +1,1388 @@ +# ============LICENSE_START======================================================= +# Copyright (C) 2022-2023 Nordix Foundation +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# ============LICENSE_END========================================================= +openapi: 3.0.1 +info: + title: Api Documentation + description: Api Documentation + termsOfService: urn:tos + contact: {} + license: + name: Apache 2.0 + url: http://www.apache.org/licenses/LICENSE-2.0 + version: "1.0" +servers: + - url: https://{server} + variables: + server: + default: onap/policy/clamp/acm/v2 + description: This value is assigned by the service provider +tags: + - name: Participant Monitoring + description: Pariticipant Monitoring Controller, for monitoring of and requesting information from participants + - name: Automation Composition Definition + description: Automation Composition Definition Controller, for definition and management of Automation Composition Types + - name: Automation Composition Instance + description: Automation Composition Instance Controller, for definition and management of Automation Composition Instances + +paths: + /participants: + get: + tags: + - Participant Monitoring + summary: Query Particicpants + description: Query the participants that are registered on the ACM runtime + operationId: queryParticipants + parameters: + - name: name + in: query + required: false + description: Automation composition definition name. Regular expressions are supported for filtering. If + this parameter is not specified, all automation composition definitions are returned. + schema: + type: string + - name: version + in: query + required: false + description: Automation composition definition version. Regular expressions are supported for filtering. If this + parameter is not specified, all automation composition definitions that match the "name" filter are are returned. + schema: + type: string + - name: X-onap-RequestId + in: header + description: RequestID for http transaction + schema: + type: string + format: uuid + responses: + 200: + description: OK, serialised array of instances of + [ParticipantInformation](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/concepts/ParticipantInformation.java) + that contains information on participants with their information and status. Each participant entry contains + a list of AC Element types on the participant. Each AC Element type entry contains a list of AC Element + instances on the Participant. + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/ParticipantInformation' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/getMultiParticipantResponse.json' + application/yaml: + schema: + type: array + items: + $ref: '#/components/schemas/ParticipantInformation' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/getMultiParticipantResponse.yaml' + 401: + description: Authentication Error, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + security: + - basicAuth: [] + x-interface info: + api-version: 1.0.0 + last-mod-release: London + put: + tags: + - Participant Monitoring + summary: Order an immendiate Participant Report from all participants + description: Requests all participants to immediately generate a heartbeat report with their information and status + and the information and status of all their AC Element Types and Instances. The results are published on subsequent + GET REST requests on the "participants" endpoint. + operationId: orderAllParticipantsReport + parameters: + - name: X-onap-RequestId + in: header + description: RequestID for http transaction + schema: + type: string + format: uuid + responses: + 202: + description: Accepted, the request has been accepted and forwarded to participants + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + 400: + description: Bad Request, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + 401: + description: Authentication Error, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + security: + - basicAuth: [] + x-interface info: + api-version: 1.0.0 + last-mod-release: London + x-codegen-request-body-name: body + /participants/{participantId}: + get: + tags: + - Participant Monitoring + summary: Get details of the requested participant + definitions + description: Get details of the requested commissioned participant, returning all pariticipant details + operationId: getParticipant + parameters: + - name : participantId + in: path + description: The UUID of the participant to get + required: true + schema: + type: string + format: uuid + - name: X-onap-RequestId + in: header + description: RequestID for http transaction + schema: + type: string + format: uuid + responses: + 200: + description: Serialised instance of + [ParticipantInformation](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/concepts/ParticipantInformation.java) + that information on the participant with its information and status. The participant entry contains + a list of AC Element types on the participant. Each AC Element type entry contains a list of AC Element + instances on the Participant. + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/ParticipantInformation' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/getSingleParticipantResponse.json' + application/yaml: + schema: + $ref: '#/components/schemas/ToscaServiceTemplate' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/getParticipantResponse.yaml' + 401: + description: Authentication Error, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + 404: + description: Specified participant not found, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + security: + - basicAuth: [] + x-interface info: + api-version: 1.0.0 + last-mod-release: London + put: + tags: + - Participant Monitoring + summary: Order an immendiate Participant Report from a participant + description: Requests the participants to immediately generate a heartbeat report with its information and status + and the information and status of all its AC Element Types and Instances. The results are published on subsequent + GET REST requests on the "participants" endpoint. + operationId: orderParticipantReport + parameters: + - name : participantId + in: path + description: The UUID of the participant to get + required: true + schema: + type: string + format: uuid + - name: X-onap-RequestId + in: header + description: RequestID for http transaction + schema: + type: string + format: uuid + responses: + 202: + description: Accepted, the request has been accepted and forwarded to participants + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + 400: + description: Bad Request, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + 401: + description: Authentication Error, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + 404: + description: Specified participant not found, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + security: + - basicAuth: [] + x-interface info: + api-version: 1.0.0 + last-mod-release: London + x-codegen-request-body-name: body + /compositions: + get: + tags: + - Automation Composition Definition + summary: Query the commissioned automation composition definitions + definitions + description: Query the commissioned automation composition + definitions, returning the automation composition details + operationId: queryCompositionDefinitions + parameters: + - name: name + in: query + required: false + description: Automation composition definition name. Regular expressions are supported for filtering. If + this parameter is not specified, all automation composition definitions are returned. + schema: + type: string + - name: version + in: query + required: false + description: Automation composition definition version. Regular expressions are supported for filtering. If this + parameter is not specified, all automation composition definitions that match the "name" filter are are returned. + schema: + type: string + - name: X-onap-RequestId + in: header + description: RequestID for http transaction + schema: + type: string + format: uuid + responses: + 200: + description: Serialised instance of + [ToscaServiceTemplates](https://github.com/onap/policy-models/blob/master/models-tosca/src/main/java/org/onap/policy/models/tosca/authorative/concepts/ToscaServiceTemplates.java) + that contains the automation composition definitions that match the requested filters. + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/ToscaServiceTemplates' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/getAllCompositionDefinitions.json' + application/yaml: + schema: + $ref: '#/components/schemas/ToscaServiceTemplates' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/getAllCompositionDefinitions.yaml' + 401: + description: Authentication Error, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + security: + - basicAuth: [] + x-interface info: + api-version: 1.0.0 + last-mod-release: London + post: + tags: + - Automation Composition Definition + summary: Commissions automation composition definitions + description: Commissions automation composition definitions, returning the UUIDs of + automation composition definitions commissioned by this request. + operationId: createCompositionDefinitions + parameters: + - name: X-onap-RequestId + in: header + description: RequestID for http transaction + schema: + type: string + format: uuid + requestBody: + description: Serialised instance of + [ToscaServiceTemplate](https://github.com/onap/policy-models/blob/master/models-tosca/src/main/java/org/onap/policy/models/tosca/authorative/concepts/ToscaServiceTemplate.java) + containing the automation composition definitions to be commissioned. + content: + application/json: + schema: + $ref: '#/components/schemas/ToscaServiceTemplate' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/postCompositionDefinitions.json' + application/yaml: + schema: + $ref: '#/components/schemas/ToscaServiceTemplate' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/postCompositionDefinitions.yaml' + required: true + responses: + 201: + description: Serialised instance of + [CommissioningResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/commissioning/CommissioningResponse.java) + containing the UUIDs of automation composition definitions created by this request + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/CommissioningResponse' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/postCommissionCompositionDefinitionsResponse.json' + application/yaml: + schema: + $ref: '#/components/schemas/CommissioningResponse' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/postCommissionCompositionDefinitionsResponse.yaml' + 401: + description: Authentication Error, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + 400: + description: Bad Request, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + security: + - basicAuth: [] + x-interface info: + api-version: 1.0.0 + last-mod-release: London + x-codegen-request-body-name: body + /compositions/{compositionId}: + get: + tags: + - Automation Composition Definition + summary: Get details of the requested commissioned automation composition + definitions + description: Get details of the requested commissioned automation composition + definitions, returning all automation composition details + operationId: getCompositionDefinition + parameters: + - name : compositionId + in: path + description: The UUID of the automation composition definition to get + required: true + schema: + type: string + format: uuid + - name: X-onap-RequestId + in: header + description: RequestID for http transaction + schema: + type: string + format: uuid + responses: + 200: + description: + Serialised instance of + [AutomationCompositionDefinition](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/concepts/AutomationCompositionDefinition.java) + containing the requested automation composition definition. + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/AutomationCompositionDefinition' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/getSingleCompositionDefinition.json' + application/yaml: + schema: + $ref: '#/components/schemas/AutomationCompositionDefinition' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/getSingleCompositionDefinition.yaml' + 401: + description: Authentication Error, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + 404: + description: Specified automation composition definition not found, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + security: + - basicAuth: [] + x-interface info: + api-version: 1.0.0 + last-mod-release: London + put: + tags: + - Automation Composition Definition + summary: Primes or deprimes an automation composition definition + description: Primes or deprimes an automation composition definition by sending the AC Element Types to participants and + getting participants to take responsibility for AC Element Types in this AC Type. + operationId: compositionDefinitionPriming + parameters: + - name : compositionId + in: path + description: The UUID of the automation composition definition to update + required: true + schema: + type: string + format: uuid + - name: X-onap-RequestId + in: header + description: RequestID for http transaction + schema: + type: string + format: uuid + requestBody: + description: Serialised instance of + [AcTypeStateUpdate](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/commissioning/AcTypeStateUpdate.java) + which specifies the requested state change on the automation concept instance + content: + application/json: + schema: + $ref: '#/components/schemas/AcTypeStateUpdate' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/putAcTypeStateUpdate.json' + application/yaml: + schema: + $ref: '#/components/schemas/AcTypeStateUpdate' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/putAcTypeStateUpdate.yaml' + responses: + 202: + description: Accepted, the request has been accepted and forwarded to participants + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + 400: + description: Bad Request, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + 401: + description: Authentication Error, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + 404: + description: Specified automation composition definition not found, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + security: + - basicAuth: [] + x-interface info: + api-version: 1.0.0 + last-mod-release: London + x-codegen-request-body-name: body + delete: + tags: + - Automation Composition Definition + summary: Delete a commissioned automation composition definition + description: Deletes a commissioned automation composition definition,returning the UUID of the automation composition definition deleted by this request + operationId: deleteCompositionDefinition + parameters: + - name : compositionId + in: path + description: The UUID of the automation composition definition to delete + required: true + schema: + type: string + format: uuid + - name: X-onap-RequestId + in: header + description: RequestID for http transaction + schema: + type: string + format: uuid + responses: + 200: + description: Serialised instance of + [CommissioningResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/commissioning/CommissioningResponse.java) + containing the UUID of the automation composition deleted by this request + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/CommissioningResponse' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/deleteCompositionDefinitionResponse.json' + application/yaml: + schema: + $ref: '#/components/schemas/CommissioningResponse' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/deleteCompositionDefinitionResponse.yaml' + 401: + description: Authentication Error, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + 404: + description: Specified automation composition definition not found, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + 400: + description: Bad Request, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + security: + - basicAuth: [] + x-interface info: + api-version: 1.0.0 + last-mod-release: London + /compositions/{compositionId}/instances: + get: + tags: + - Automation Composition Instance + summary: Query details of the requested automation composition instances + description: Query details of the requested automation composition instances for the given automation composition definition ID, returning + details of all its automation composition instances + operationId: queryCompositionInstances + parameters: + - name : compositionId + in: path + description: The UUID of the automation composition definition for which to return instances + required: true + schema: + type: string + format: uuid + - name: name + in: query + description: Automation composition instance name. Regular expressions are supported for filtering. If + this parameter is not specified, all automation composition instances for the specified definition are returned. + schema: + type: string + - name: version + in: query + description: Automation composition instance version. Regular expressions are supported for filtering. If this + parameter is not specified, all automation composition instances for the specified definition that match the "name" filter are are returned. + schema: + type: string + - name: X-onap-RequestId + in: header + description: RequestID for http transaction + schema: + type: string + format: uuid + responses: + 200: + description: Serialised instance of + [AutomationCompositions](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/concepts/AutomationCompositions.java) + containing a list of automation composition instances found + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/AutomationCompositions' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/getCompositionInstancesResponse.json' + application/yaml: + schema: + $ref: '#/components/schemas/AutomationCompositions' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/getCompositionInstancesResponse.yaml' + 401: + description: Authentication Error, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + 404: + description: The specified automation composition definition was not found, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + security: + - basicAuth: [] + x-interface info: + api-version: 1.0.0 + last-mod-release: London + post: + tags: + - Automation Composition Instance + summary: Create automation composition instance + description: Creates automation composition instance that use the sepcified automation composition definition. The ID of the created + automation composition instance is returned. + operationId: createCompositionInstance + parameters: + - name : compositionId + in: path + description: The UUID of the automation composition definition on which to create instance + required: true + schema: + type: string + format: uuid + - name: X-onap-RequestId + in: header + description: RequestID for http transaction + schema: + type: string + format: uuid + requestBody: + description: Serialised instance of + [AutomationComposition](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/concepts/AutomationComposition.java) + containing a automation composition instance to create + content: + application/json: + schema: + $ref: '#/components/schemas/AutomationComposition' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/postCompositionInstance.json' + application/yaml: + schema: + $ref: '#/components/schemas/AutomationComposition' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/postCompositionInstance.yaml' + required: true + responses: + 201: + description: Serialised instance of + [InstantiationResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/instantiation/InstantiationResponse.java) + containing the UUID of the created automation composition instance + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/InstantiationResponse' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/postCompositionInstancesResponse.json' + application/yaml: + schema: + $ref: '#/components/schemas/InstantiationResponse' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/postCompositionInstancesResponse.yaml' + 401: + description: Authentication Error, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + 404: + description: The specified automation composition definition was not found, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + 400: + description: Bad Request, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + security: + - basicAuth: [] + x-interface info: + api-version: 1.0.0 + last-mod-release: London + x-codegen-request-body-name: body + /compositions/{compositionId}/instances/{instanceId}: + get: + tags: + - Automation Composition Instance + summary: Get automation composition instance details. + description: Get details of the requested automation composition instance. + operationId: getCompositionInstance + parameters: + - name : compositionId + in: path + description: The UUID of the automation composition definition on which to get an instance + required: true + schema: + type: string + format: uuid + - name : instanceId + in: path + description: The UUID of the automation composition instance to get + required: true + schema: + type: string + format: uuid + - name: X-onap-RequestId + in: header + description: RequestID for http transaction + schema: + type: string + format: uuid + responses: + 200: + description: Serialised instance of + [AutomationComposition](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/concepts/AutomationComposition.java) + containing the automation composition instance + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/AutomationComposition' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/getCompositionInstanceResponse.json' + application/yaml: + schema: + $ref: '#/components/schemas/AutomationComposition' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/getCompositionInstanceResponse.yaml' + 401: + description: Authentication Error, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + 404: + description: The automation composition instance was not found, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + security: + - basicAuth: [] + x-interface info: + api-version: 1.0.0 + last-mod-release: London + put: + tags: + - Automation Composition Instance + summary: Manage deployment and locking of an automation composition instance + description: This request manages deployment and locking of an automation composition instance. This endpoint can + order deployment and undeployment of an AC Instance to participants and order unlocking and locking of AC instances + on participants + operationId: compositionInstanceState + parameters: + - name : compositionId + in: path + description: The UUID of the automation composition definition on which to update an instance + required: true + schema: + type: string + format: uuid + - name : instanceId + in: path + description: The UUID of the automation composition instance to update + required: true + schema: + type: string + format: uuid + - name: X-onap-RequestId + in: header + description: RequestID for http transaction + schema: + type: string + format: uuid + requestBody: + description: Serialised instance of + [AcInstanceStateUpdate](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/instantiation/AcInstanceStateUpdate.java) + which specifies the requested state change on the automation concept instance + content: + application/json: + schema: + $ref: '#/components/schemas/AcInstanceStateUpdate' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/putAcInstanceStateUpdate.json' + application/yaml: + schema: + $ref: '#/components/schemas/AcInstanceStateUpdate' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/putAcInstanceStateUpdate.yaml' + required: true + responses: + 202: + description: Accepted, the request has been accepted and forwarded to participants + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + 400: + description: Bad Request, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + 401: + description: Authentication Error, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + 404: + description: The specified automation composition instance was not found, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + security: + - basicAuth: [] + x-interface info: + api-version: 1.0.0 + last-mod-release: London + x-codegen-request-body-name: body + delete: + tags: + - Automation Composition Instance + summary: Delete an automation composition instance + description: Deletes a automation composition instance, returning the UUID of the deleted automation composition instance + operationId: deleteCompositionInstance + parameters: + - name : compositionId + in: path + description: The UUID of the automation composition definition on which to delete an instance + required: true + schema: + type: string + format: uuid + - name : instanceId + in: path + description: The UUID of the automation composition instance to delete + required: true + schema: + type: string + format: uuid + - name: X-onap-RequestId + in: header + description: RequestID for http transaction + schema: + type: string + format: uuid + responses: + 200: + description: Serialised instance of + [InstantiationResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/instantiation/InstantiationResponse.java) + containing the UUID of the deleted automation composition instance + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/InstantiationResponse' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/deleteCompositionInstanceResponse.json' + application/yaml: + schema: + $ref: '#/components/schemas/InstantiationResponse' + example: + externalValue: 'https://raw.githubusercontent.com/onap/policy-clamp/master/runtime-acm/src/main/resources/openapi/examples/deleteCompositionInstanceResponse.yaml' + 401: + description: Authentication Error, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + 404: + description: The specified automation composition instance was not found, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + 400: + description: Bad Request, returns an instance of + [SimpleResponse](https://github.com/onap/policy-clamp/blob/master/models/src/main/java/org/onap/policy/clamp/models/acm/messages/rest/SimpleResponse.java) + headers: + X-LatestVersion: + $ref: '#/components/headers/X-LatestVersion' + X-PatchVersion: + $ref: '#/components/headers/X-PatchVersion' + X-MinorVersion: + $ref: '#/components/headers/X-MinorVersion' + X-onap-RequestId: + $ref: '#/components/headers/X-onap-RequestId' + content: + application/json: + schema: + $ref: '#/components/schemas/SimpleResponse' + security: + - basicAuth: [] + x-interface info: + api-version: 1.0.0 + last-mod-release: London + +components: + securitySchemes: + basicAuth: + type: http + scheme: basic + schemas: + ParticipantInformation: + title: ParticipantInformation + type: object + ToscaServiceTemplates: + title: ToscaServiceTemplates + type: object + ToscaServiceTemplate: + title: ToscaServiceTemplate + type: object + AutomationCompositionDefinition: + title: AutomationCompositionDefinition + type: object + AutomationComposition: + title: AutomationComposition + type: object + AutomationCompositions: + title: AutomationCompositions + type: object + SimpleResponse: + title: SimpleResponse + type: object + CommissioningResponse: + title: CommissioningResponse + type: object + AcTypeStateUpdate: + title: AcTypeStateUpdate + type: object + AcInstanceStateUpdate: + title: AcInstanceStateUpdate + type: object + InstantiationResponse: + title: InstantiationResponse + type: object + headers: + X-LatestVersion: + schema: + type: string + X-PatchVersion: + schema: + type: string + X-MinorVersion: + schema: + type: string + X-onap-RequestId: + schema: + type: string + format: uuid diff --git a/rapp-manager-application/pom.xml b/rapp-manager-application/pom.xml new file mode 100755 index 0000000..c88f1fe --- /dev/null +++ b/rapp-manager-application/pom.xml @@ -0,0 +1,162 @@ + + + 4.0.0 + + com.oransc + rappmanager + 0.0.1-SNAPSHOT + + + rapp-manager-application + + + ${java.version} + ${java.version} + UTF-8 + + + + + com.oransc.rappmanager + rapp-manager-models + ${project.version} + + + com.oransc.rappmanager + rapp-manager-acm + ${project.version} + + + com.oransc.rappmanager + rapp-manager-sme + ${project.version} + + + org.onap.policy.clamp + policy-clamp-models + 6.4.2 + + + org.springframework.boot + spring-boot-starter-data-jpa + + + org.springframework.boot + spring-boot-starter-aop + + + org.springframework.boot + spring-boot-starter-security + + + org.springframework.boot + spring-boot-starter-validation + + + org.springframework.boot + spring-boot-starter-webflux + + + + + org.springframework.boot + spring-boot-starter-actuator + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-cache + + + org.springframework.boot + spring-boot-configuration-processor + true + + + org.springframework.retry + spring-retry + 2.0.1 + + + org.springframework.statemachine + spring-statemachine-core + 3.2.1 + + + org.springframework.statemachine + spring-statemachine-test + 3.2.1 + test + + + org.aspectj + aspectjweaver + compile + + + org.projectlombok + lombok + true + + + org.openapitools + jackson-databind-nullable + 0.2.6 + + + + javax.validation + validation-api + 2.0.1.Final + + + javax.annotation + javax.annotation-api + 1.3.2 + + + io.swagger.core.v3 + swagger-annotations + 2.2.9 + + + io.swagger.core.v3 + swagger-models + 2.2.9 + + + javax.servlet + servlet-api + 2.5 + provided + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + org.projectlombok + lombok + + + + + + + + \ No newline at end of file diff --git a/rapp-manager-application/src/main/java/com/oransc/rappmanager/BeanConfiguration.java b/rapp-manager-application/src/main/java/com/oransc/rappmanager/BeanConfiguration.java new file mode 100755 index 0000000..0fd2dfa --- /dev/null +++ b/rapp-manager-application/src/main/java/com/oransc/rappmanager/BeanConfiguration.java @@ -0,0 +1,110 @@ +/*- + * ============LICENSE_START====================================================================== + * Copyright (C) 2023 Nordix Foundation. All rights reserved. + * =============================================================================================== + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS 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.oransc.rappmanager; + +import com.oransc.rappmanager.acm.ApiClient; +import com.oransc.rappmanager.acm.configuration.ACMConfiguration; +import com.oransc.rappmanager.acm.rest.AutomationCompositionDefinitionApiClient; +import com.oransc.rappmanager.acm.rest.AutomationCompositionInstanceApiClient; +import com.oransc.rappmanager.acm.rest.ParticipantMonitoringApiClient; +import com.oransc.rappmanager.sme.configuration.SmeConfiguration; +import com.oransc.rappmanager.sme.provider.rest.DefaultApiClient; +import lombok.RequiredArgsConstructor; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.boot.web.client.RestTemplateBuilder; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.client.RestTemplate; + +@Configuration +@RequiredArgsConstructor +public class BeanConfiguration { + + private final ACMConfiguration acmConfiguration; + private final SmeConfiguration smeConfiguration; + + @Bean + public RestTemplate restTemplate(RestTemplateBuilder builder) { + return builder.build(); + } + + @Bean("acmApiClient") + public ApiClient acmApiClient(RestTemplate restTemplate) { + ApiClient apiClient = new ApiClient(restTemplate); + // apiClient.setDebugging(true); + apiClient.setUsername(acmConfiguration.getUsername()); + apiClient.setPassword(acmConfiguration.getPassword()); + return apiClient.setBasePath(acmConfiguration.getBaseUrl()); + } + + @Bean("smeProviderApiClient") + public com.oransc.rappmanager.sme.provider.ApiClient smeProviderApiClient(RestTemplate restTemplate) { + return new com.oransc.rappmanager.sme.provider.ApiClient(restTemplate); + } + + @Bean("smePublishServiceApiClient") + public com.oransc.rappmanager.sme.publishservice.ApiClient smePublishServiceApiClient(RestTemplate restTemplate) { + return new com.oransc.rappmanager.sme.publishservice.ApiClient(restTemplate); + } + + @Bean("smeInvokerApiClient") + public com.oransc.rappmanager.sme.invoker.ApiClient smeInvokerApiClient(RestTemplate restTemplate) { + return new com.oransc.rappmanager.sme.invoker.ApiClient(restTemplate); + } + + @Bean + public ParticipantMonitoringApiClient participantMonitoringApiClient( + @Qualifier("acmApiClient") ApiClient apiClient) { + return new ParticipantMonitoringApiClient(apiClient); + } + + @Bean + public AutomationCompositionDefinitionApiClient automationCompositionDefinitionApiClient( + @Qualifier("acmApiClient") ApiClient apiClient) { + return new AutomationCompositionDefinitionApiClient(apiClient); + } + + @Bean + public AutomationCompositionInstanceApiClient automationCompositionInstanceApiClient( + @Qualifier("acmApiClient") ApiClient apiClient) { + return new AutomationCompositionInstanceApiClient(apiClient); + } + + @Bean + public DefaultApiClient defaultProviderApiClient( + @Qualifier("smeProviderApiClient") com.oransc.rappmanager.sme.provider.ApiClient apiClient) { + apiClient.setBasePath(smeConfiguration.getBaseUrl() + smeConfiguration.getProviderBasePath()); + return new DefaultApiClient(apiClient); + } + + @Bean + public com.oransc.rappmanager.sme.publishservice.rest.DefaultApiClient defaultPublishServiceApiClient( + @Qualifier("smePublishServiceApiClient") com.oransc.rappmanager.sme.publishservice.ApiClient apiClient) { + apiClient.setBasePath(smeConfiguration.getBaseUrl() + smeConfiguration.getPublishApiBasePath()); + return new com.oransc.rappmanager.sme.publishservice.rest.DefaultApiClient(apiClient); + } + + @Bean + public com.oransc.rappmanager.sme.invoker.rest.DefaultApiClient defaultInvokerApiClient( + @Qualifier("smeInvokerApiClient") com.oransc.rappmanager.sme.invoker.ApiClient apiClient) { + apiClient.setBasePath(smeConfiguration.getBaseUrl() + smeConfiguration.getInvokerBasePath()); + return new com.oransc.rappmanager.sme.invoker.rest.DefaultApiClient(apiClient); + } + +} diff --git a/rapp-manager-application/src/main/java/com/oransc/rappmanager/RappManagerApplication.java b/rapp-manager-application/src/main/java/com/oransc/rappmanager/RappManagerApplication.java new file mode 100755 index 0000000..94f865a --- /dev/null +++ b/rapp-manager-application/src/main/java/com/oransc/rappmanager/RappManagerApplication.java @@ -0,0 +1,37 @@ +/*- + * ============LICENSE_START====================================================================== + * Copyright (C) 2023 Nordix Foundation. All rights reserved. + * =============================================================================================== + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS 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.oransc.rappmanager; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.cache.annotation.EnableCaching; +import org.springframework.retry.annotation.EnableRetry; + +@SpringBootApplication +@EnableConfigurationProperties +@EnableCaching +@EnableRetry +public class RappManagerApplication { + + public static void main(String[] args) { + SpringApplication.run(RappManagerApplication.class, args); + } + +} diff --git a/rapp-manager-application/src/main/java/com/oransc/rappmanager/WriteCsarFile.java b/rapp-manager-application/src/main/java/com/oransc/rappmanager/WriteCsarFile.java new file mode 100755 index 0000000..c421486 --- /dev/null +++ b/rapp-manager-application/src/main/java/com/oransc/rappmanager/WriteCsarFile.java @@ -0,0 +1,95 @@ +/*- + * ============LICENSE_START====================================================================== + * Copyright (C) 2023 Nordix Foundation. All rights reserved. + * =============================================================================================== + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS 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.oransc.rappmanager; + +import java.io.File; +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.List; +import java.util.zip.ZipEntry; +import java.util.zip.ZipOutputStream; + +public class WriteCsarFile { + + public static void main(String[] args) { + String zipFileName = + "rapp-manager-application\\src\\main\\resources\\resource-csar\\rapp.csar"; + String csarPath = + "rapp-manager-application\\src\\main\\resources\\resource-csar"; + + try { + FileOutputStream fos = new FileOutputStream(zipFileName); + ZipOutputStream zos = new ZipOutputStream(fos); + + File directory = new File(csarPath); + System.out.println("Is directory " + directory.isDirectory()); + List fileList = new ArrayList<>(); + getFiles(directory, directory, fileList); + File[] files = fileList.toArray(new File[0]); + System.out.println("File size :" + files.length); + Arrays.sort(files, Collections.reverseOrder()); + + + for (File file : files) { + System.out.println("Processing " + file.getPath()); + if (!file.isDirectory()) { + System.out.println("Processing " + file.getPath()); + FileInputStream fis = new FileInputStream(csarPath + File.separator + file.getPath()); + + ZipEntry zipEntry = new ZipEntry(file.getPath().replaceAll("\\\\", "/")); + zos.putNextEntry(zipEntry); + + byte[] bytes = new byte[1024]; + int length; + while ((length = fis.read(bytes)) >= 0) { + zos.write(bytes, 0, length); + } + fis.close(); + } else { + System.out.println("Not a file: " + file.getPath()); + } + } + + zos.close(); + fos.close(); + + System.out.println("Zip file created successfully!"); + + } catch (IOException e) { + e.printStackTrace(); + } + } + + private static void getFiles(File baseDirectory, File directory, List fileList) { + File[] files = directory.listFiles(); + if (files != null) { + for (File file : files) { + if (file.isDirectory()) { + getFiles(baseDirectory, file, fileList); + } else { + fileList.add(new File(file.getPath().replace(baseDirectory.getPath() + File.separator, ""))); + } + } + } + } +} diff --git a/rapp-manager-application/src/main/java/com/oransc/rappmanager/configuration/RappManagerConfiguration.java b/rapp-manager-application/src/main/java/com/oransc/rappmanager/configuration/RappManagerConfiguration.java new file mode 100755 index 0000000..85d3498 --- /dev/null +++ b/rapp-manager-application/src/main/java/com/oransc/rappmanager/configuration/RappManagerConfiguration.java @@ -0,0 +1,31 @@ +/*- + * ============LICENSE_START====================================================================== + * Copyright (C) 2023 Nordix Foundation. All rights reserved. + * =============================================================================================== + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS 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.oransc.rappmanager.configuration; + +import lombok.Data; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.context.annotation.Configuration; + +@Configuration +@ConfigurationProperties(prefix = "rappmanager") +@Data +public class RappManagerConfiguration { + + String csarLocation; +} diff --git a/rapp-manager-application/src/main/java/com/oransc/rappmanager/exception/ACMInvalidStateTransitionException.java b/rapp-manager-application/src/main/java/com/oransc/rappmanager/exception/ACMInvalidStateTransitionException.java new file mode 100755 index 0000000..efc7175 --- /dev/null +++ b/rapp-manager-application/src/main/java/com/oransc/rappmanager/exception/ACMInvalidStateTransitionException.java @@ -0,0 +1,29 @@ +/*- + * ============LICENSE_START====================================================================== + * Copyright (C) 2023 Nordix Foundation. All rights reserved. + * =============================================================================================== + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS 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.oransc.rappmanager.exception; + +public class ACMInvalidStateTransitionException extends RuntimeException { + public ACMInvalidStateTransitionException() { + super(); + } + + public ACMInvalidStateTransitionException(String targetState, String actualState) { + super(); + } +} diff --git a/rapp-manager-application/src/main/java/com/oransc/rappmanager/rest/OnboardingController.java b/rapp-manager-application/src/main/java/com/oransc/rappmanager/rest/OnboardingController.java new file mode 100755 index 0000000..6742686 --- /dev/null +++ b/rapp-manager-application/src/main/java/com/oransc/rappmanager/rest/OnboardingController.java @@ -0,0 +1,131 @@ +/*- + * ============LICENSE_START====================================================================== + * Copyright (C) 2023 Nordix Foundation. All rights reserved. + * =============================================================================================== + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS 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.oransc.rappmanager.rest; + +import com.oransc.rappmanager.acm.service.AcmDeployer; +import com.oransc.rappmanager.configuration.RappManagerConfiguration; +import com.oransc.rappmanager.models.Rapp; +import com.oransc.rappmanager.models.RappCsarConfigurationHandler; +import com.oransc.rappmanager.models.RappEvent; +import com.oransc.rappmanager.models.RappState; +import com.oransc.rappmanager.models.cache.RappCacheService; +import com.oransc.rappmanager.models.statemachine.RappStateMachine; +import com.oransc.rappmanager.sme.service.SmeDeployer; +import java.io.File; +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.StandardCopyOption; +import java.util.Optional; +import lombok.RequiredArgsConstructor; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.cache.Cache; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestPart; +import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.multipart.MultipartFile; + +@RestController +@RequestMapping(path = "rapps") +@RequiredArgsConstructor +public class OnboardingController { + + Logger logger = LoggerFactory.getLogger(OnboardingController.class); + private final RappCsarConfigurationHandler rappCsarConfigurationHandler; + private final AcmDeployer acmDeployer; + private final SmeDeployer smeDeployer; + private final RappManagerConfiguration rappManagerConfiguration; + private final RappStateMachine rappStateMachine; + private final RappCacheService rappCacheService; + + + @GetMapping + public ResponseEntity getRapps() { + return ResponseEntity.ok(rappCacheService.getAllRapp()); + } + + @GetMapping("{rapp_id}") + public ResponseEntity getRapps(@PathVariable("rapp_id") String rappId) { + Optional rappOptional = rappCacheService.getRapp(rappId); + if (rappOptional.isPresent()) { + acmDeployer.syncRappStatus(rappOptional.get()); + return ResponseEntity.ok(rappCacheService.getRapp(rappId).get()); + } + return ResponseEntity.badRequest().build(); + } + + @PostMapping("{rapp_id}/onboard") + public ResponseEntity uploadRappCsarFile(@PathVariable("rapp_id") String rappId, + @RequestPart("file") MultipartFile csarFilePart) throws IOException { + if (rappCsarConfigurationHandler.isValidRappPackage(csarFilePart)) { + File csarFile = new File( + rappCsarConfigurationHandler.getRappPackageLocation(rappManagerConfiguration.getCsarLocation(), + rappId, csarFilePart.getOriginalFilename()).toUri()); + csarFile.getParentFile().mkdirs(); + Files.copy(csarFilePart.getInputStream(), csarFile.getAbsoluteFile().toPath(), + StandardCopyOption.REPLACE_EXISTING); + Rapp rapp = Rapp.builder().name(rappId).packageLocation(rappManagerConfiguration.getCsarLocation()) + .packageName(csarFile.getName()).state(RappState.ONBOARDED).build(); + rappCacheService.putRapp(rapp); + rappStateMachine.onboardRapp(rapp.getRappId()); + return ResponseEntity.accepted().build(); + } else { + logger.info("Invalid Rapp package for {}", rappId); + return ResponseEntity.badRequest().build(); + } + } + + @PostMapping("{rapp_id}/deploy") + public ResponseEntity deployRapp(@PathVariable("rapp_id") String rappId) { + Optional rappOptional = rappCacheService.getRapp(rappId); + rappOptional.ifPresent(rapp -> { + rappStateMachine.sendRappEvent(rapp, RappEvent.DEPLOYING); + }); + if (rappOptional.isPresent() && acmDeployer.deployRapp(rappOptional.get()) && smeDeployer.deployRapp( + rappOptional.get())) { + return ResponseEntity.accepted().build(); + } + return ResponseEntity.internalServerError().build(); + } + + @PostMapping("{rapp_id}/undeploy") + public ResponseEntity undeployRapp(@PathVariable("rapp_id") String rappId) { + Optional rappOptional = rappCacheService.getRapp(rappId); + rappOptional.ifPresent(rapp -> { + rappStateMachine.sendRappEvent(rapp, RappEvent.UNDEPLOYING); + }); + if (rappOptional.isPresent() && acmDeployer.undeployRapp(rappOptional.get()) && smeDeployer.undeployRapp( + rappOptional.get())) { + rappCacheService.deleteRapp(rappOptional.get()); + rappStateMachine.deleteRapp(rappOptional.get()); + return ResponseEntity.accepted().build(); + } + return ResponseEntity.internalServerError().build(); + } + + @GetMapping("info") + public ResponseEntity getInfo() { + return ResponseEntity.ok(acmDeployer.getAllParticipants()); + } + +} diff --git a/rapp-manager-application/src/main/resources/application.yaml b/rapp-manager-application/src/main/resources/application.yaml new file mode 100755 index 0000000..445297a --- /dev/null +++ b/rapp-manager-application/src/main/resources/application.yaml @@ -0,0 +1,30 @@ +rappmanager: + csarlocation: src/main/resources/csar + acm: + baseurl: http://10.101.2.254:30442/onap/policy/clamp/acm/v2/ + username: runtimeUser + password: zb!XztG34 + compositionDefinitionLocation: src/main/resources/compositiondefinition.json + maxRetries: 3 + retryInterval: 2 #seconds + sme: + baseurl: http://10.101.2.254:30232 + providerBasePath: /api-provider-management/v1/ + invokerBasePath: /api-invoker-management/v1/ + publishApiBasePath: /published-apis/v1/ + maxRetries: 3 + retryInterval: 2 #seconds + +logging: + level: + root: INFO + com.oransc.rapps: DEBUG + org.apache.http: DEBUG + httpclient.wire: DEBUG + org.springframework.web.client.RestTemplate: TRACE + +management: + endpoints: + web: + exposure: + include: "*" \ No newline at end of file diff --git a/rapp-manager-application/src/main/resources/compositiondefinition.json b/rapp-manager-application/src/main/resources/compositiondefinition.json new file mode 100755 index 0000000..bc568ad --- /dev/null +++ b/rapp-manager-application/src/main/resources/compositiondefinition.json @@ -0,0 +1,320 @@ +{ + "tosca_definitions_version": "tosca_simple_yaml_1_3", + "data_types": { + "onap.datatypes.ToscaConceptIdentifier": { + "derived_from": "tosca.datatypes.Root", + "properties": { + "name": { + "type": "string", + "required": true + }, + "version": { + "type": "string", + "required": true + } + } + }, + "org.onap.datatypes.policy.clamp.acm.kserveAutomationCompositionElement.KserveInferenceEntity": { + "version": "1.0.0", + "derived_from": "tosca.datatypes.Root", + "properties": { + "kserveEntityId": { + "type": "onap.datatypes.ToscaConceptIdentifier", + "required": true, + "description": "The name and version of a Configuration Entity to be handled by the Kserve Automation Composition Element" + }, + "name": { + "type": "string", + "required": true, + "description": "Inference service name to be created" + }, + "payload": { + "type": "string", + "required": true, + "description": "Inference Service payload" + } + } + }, + "org.onap.datatypes.policy.clamp.acm.a1pmsAutomationCompositionElement.A1PolicyServiceEntity": { + "version": "1.0.0", + "derived_from": "tosca.datatypes.Root", + "properties": { + "a1PolicyServiceEntityId": { + "type": "onap.datatypes.ToscaConceptIdentifier", + "required": true, + "description": "The name and version of a Configuration Entity to be handled by the A1 PMS Automation Composition Element" + }, + "clientId": { + "type": "string", + "required": true, + "description": "Client Id to be created" + }, + "callbackUrl": { + "type": "string", + "required": true, + "description": "The callback URL to get registered" + }, + "keepAliveIntervalSeconds": { + "type": "integer", + "required": true, + "description": "Keep alive interval time for the callback URL" + } + } + } + }, + "node_types": { + "org.onap.policy.clamp.acm.Participant": { + "version": "1.0.1", + "derived_from": "tosca.nodetypes.Root", + "properties": { + "provider": { + "type": "string", + "required": false + } + } + }, + "org.onap.policy.clamp.acm.AutomationCompositionElement": { + "version": "1.0.1", + "derived_from": "tosca.nodetypes.Root", + "properties": { + "provider": { + "type": "string", + "required": false + }, + "participantType": { + "type": "onap.datatypes.ToscaConceptIdentifier", + "required": true + }, + "startPhase": { + "type": "integer", + "required": false, + "constraints": [ + { + "greater-or-equal": 0 + } + ], + "metadata": { + "common": true + }, + "description": "A value indicating the start phase in which this automation composition element will be started, the first start phase is zero. Automation Composition Elements are started in their start_phase order and stopped in reverse start phase order. Automation Composition Elements with the same start phase are started and stopped simultaneously" + }, + "passiveToRunningTimeout": { + "type": "integer", + "required": false, + "constraints": [ + { + "greater_or_equal": 0 + } + ], + "default": 60, + "metadata": { + "common": true + }, + "description": "The maximum time in seconds to wait for a state chage from passive to running" + }, + "runningToPassiveTimeout": { + "type": "integer", + "required": false, + "constraints": [ + { + "greater_or_equal": 0 + } + ], + "default": 60, + "metadata": { + "common": true + }, + "description": "The maximum time in seconds to wait for a state chage from running to passive" + }, + "passiveToUninitializedTimeout": { + "type": "integer", + "required": false, + "constraints": [ + { + "greater_or_equal": 0 + } + ], + "default": 60, + "metadata": { + "common": true + }, + "description": "The maximum time in seconds to wait for a state chage from passive to uninitialized" + } + } + }, + "org.onap.policy.clamp.acm.AutomationComposition": { + "version": "1.0.1", + "derived_from": "tosca.nodetypes.Root", + "properties": { + "provider": { + "type": "string", + "required": false, + "metadata": { + "common": true + } + }, + "elements": { + "type": "list", + "required": true, + "metadata": { + "common": true + }, + "entry_schema": { + "type": "onap.datatypes.ToscaConceptIdentifier" + } + } + } + }, + "org.onap.policy.clamp.acm.KserveAutomationCompositionElement": { + "version": "1.0.1", + "derived_from": "org.onap.policy.clamp.acm.AutomationCompositionElement", + "properties": { + "kserveInferenceEntities": { + "type": "list", + "required": true, + "entry_schema": { + "type": "org.onap.datatypes.policy.clamp.acm.kserveAutomationCompositionElement.KserveInferenceEntity", + "type_version": "1.0.0" + }, + "description": "The configuration entities of Kserve inference service" + } + } + }, + "org.onap.policy.clamp.acm.A1PMSAutomationCompositionElement": { + "version": "1.0.1", + "derived_from": "org.onap.policy.clamp.acm.AutomationCompositionElement", + "properties": { + "policyServiceEntities": { + "type": "list", + "required": true, + "entry_schema": { + "type": "org.onap.datatypes.policy.clamp.acm.a1pmsAutomationCompositionElement.A1PolicyServiceEntity", + "type_version": "1.0.0" + }, + "description": "The configuration entities of A1 policy services" + } + } + }, + "org.onap.policy.clamp.acm.K8SMicroserviceAutomationCompositionElement": { + "version": "1.0.0", + "derived_from": "org.onap.policy.clamp.acm.AutomationCompositionElement", + "properties": { + "chart": { + "type": "string", + "required": true + }, + "configs": { + "type": "list", + "required": false + }, + "requirements": { + "type": "string", + "required": false + }, + "templates": { + "type": "list", + "required": false, + "entry_schema": null + }, + "values": { + "type": "string", + "required": true + } + } + } + }, + "topology_template": { + "node_templates": { + "org.onap.policy.clamp.acm.KserveParticipant": { + "version": "2.3.4", + "type": "org.onap.policy.clamp.acm.Participant", + "type_version": "1.0.1", + "description": "Participant for Kserve requests", + "properties": { + "provider": "ONAP" + } + }, + "org.onap.policy.clamp.acm.A1PMSAutomationCompositionParticipant": { + "version": "2.3.4", + "type": "org.onap.policy.clamp.acm.Participant", + "type_version": "1.0.1", + "description": "Participant for A1 PMS requests", + "properties": { + "provider": "ONAP" + } + }, + "org.onap.k8s.acm.K8SAutomationCompositionParticipant": { + "version": "2.3.4", + "type": "org.onap.policy.clamp.acm.Participant", + "type_version": "1.0.1", + "description": "Participant for K8S", + "properties": { + "provider": "ONAP" + } + }, + "onap.policy.clamp.ac.element.KserveAutomationCompositionElement": { + "version": "1.2.3", + "type": "org.onap.policy.clamp.acm.KserveAutomationCompositionElement", + "type_version": "1.0.1", + "description": "Automation composition element for the Kserve Requests", + "properties": { + "provider": "ONAP", + "participantType": { + "name": "org.onap.policy.clamp.acm.KserveParticipant", + "version": "2.3.4" + }, + "uninitializedToPassiveTimeout": 60, + "statusCheckInterval": 30 + } + }, + "onap.policy.clamp.ac.element.A1PMSAutomationCompositionElement": { + "version": "1.2.3", + "type": "org.onap.policy.clamp.acm.A1PMSAutomationCompositionElement", + "type_version": "1.0.1", + "description": "Automation composition element for the A1 PMS Requests", + "properties": { + "provider": "ONAP", + "participantType": { + "name": "org.onap.policy.clamp.acm.A1PMSParticipant", + "version": "2.3.4" + } + } + }, + "onap.policy.clamp.ac.element.K8S_StarterAutomationCompositionElement": { + "version": "1.2.3", + "type": "org.onap.policy.clamp.acm.K8SMicroserviceAutomationCompositionElement", + "type_version": "1.0.0", + "description": "Automation composition element for the K8S microservice for AC Element Starter", + "properties": { + "provider": "ONAP", + "startPhase": 0, + "uninitializedToPassiveTimeout": 300, + "podStatusCheckInterval": 30 + } + }, + "onap.policy.clamp.ac.element.AutomationCompositionDefinition": { + "version": "1.2.3", + "type": "org.onap.policy.clamp.acm.AutomationComposition", + "type_version": "1.0.1", + "description": "Automation composition for rapp deployment", + "properties": { + "provider": "ONAP", + "elements": [ + { + "name": "onap.policy.clamp.ac.element.KserveAutomationCompositionElement", + "version": "1.2.3" + }, + { + "name": "onap.policy.clamp.ac.element.A1PMSAutomationCompositionElement", + "version": "1.2.3" + }, + { + "name": "onap.policy.clamp.ac.element.K8S_StarterAutomationCompositionElement", + "version": "1.2.3" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/rapp-manager-application/src/main/resources/resource-csar/Artifacts/Deployment/HELM/free5gc-1.1.3.tgz b/rapp-manager-application/src/main/resources/resource-csar/Artifacts/Deployment/HELM/free5gc-1.1.3.tgz new file mode 100755 index 0000000000000000000000000000000000000000..df0a584057d46a09b7fb59a7d1f46eb62daf37df GIT binary patch literal 257267 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

4`ne6rp)#2v-f7i!z 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%0DRVe6&QamQXsB!dDu@%2KZ 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

SXe;)_IQVMzbYck)oBxT~r$Dp^ddFsm*$ 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

~}Cf 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 z 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 z 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 D<2a(C literal 0 HcmV?d00001 diff --git a/rapp-manager-application/src/test/resources/valid-rapp-package.csar b/rapp-manager-application/src/test/resources/valid-rapp-package.csar new file mode 100755 index 0000000000000000000000000000000000000000..205094e11edc2a5c2bc114f5a95d717bda4b7066 GIT binary patch literal 281345 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 MzIG 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

;3W6rGM>Zuuu>>f|PTidX)Xy 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

-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%0DR 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 J^m~GU{{t#YS1|wp literal 0 HcmV?d00001 diff --git a/rapp-manager-models/pom.xml b/rapp-manager-models/pom.xml new file mode 100755 index 0000000..918d936 --- /dev/null +++ b/rapp-manager-models/pom.xml @@ -0,0 +1,54 @@ + + + 4.0.0 + + com.oransc + rappmanager + 0.0.1-SNAPSHOT + + + com.oransc.rappmanager + rapp-manager-models + + + ${java.version} + ${java.version} + UTF-8 + + + + + org.springframework + spring-context + 6.0.8 + + + org.springframework + spring-web + 6.0.8 + + + org.springframework.statemachine + spring-statemachine-core + 3.2.1 + + + org.slf4j + slf4j-api + 2.0.7 + + + org.projectlombok + lombok + true + + + org.springframework.boot + spring-boot-starter-test + test + + + + \ No newline at end of file diff --git a/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/Rapp.java b/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/Rapp.java new file mode 100755 index 0000000..c8b4f6d --- /dev/null +++ b/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/Rapp.java @@ -0,0 +1,51 @@ +/*- + * ============LICENSE_START====================================================================== + * Copyright (C) 2023 Nordix Foundation. All rights reserved. + * =============================================================================================== + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS 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.oransc.rappmanager.models; + + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.UUID; +import lombok.Builder; +import lombok.Data; +import lombok.Getter; + +@Data +@Builder(toBuilder = true) +public class Rapp { + + @Builder.Default + UUID rappId = UUID.randomUUID(); + String name; + RappState state; + String packageLocation; + String packageName; + UUID compositionId; + UUID compositionInstanceId; + String smeApfId; + String smeAefId; + @Builder.Default + Map smeProviderFunctions = new HashMap<>(); + @Builder.Default + List smeServiceApis = new ArrayList<>(); + @Builder.Default + List smeInvokers = new ArrayList<>(); +} diff --git a/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/RappCsarConfigurationHandler.java b/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/RappCsarConfigurationHandler.java new file mode 100755 index 0000000..5574f38 --- /dev/null +++ b/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/RappCsarConfigurationHandler.java @@ -0,0 +1,115 @@ +/*- + * ============LICENSE_START====================================================================== + * Copyright (C) 2023 Nordix Foundation. All rights reserved. + * =============================================================================================== + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS 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.oransc.rappmanager.models; + +import java.io.ByteArrayOutputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.nio.file.Path; +import java.util.UUID; +import java.util.zip.ZipEntry; +import java.util.zip.ZipInputStream; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; + +@Service +public class RappCsarConfigurationHandler { + + Logger logger = LoggerFactory.getLogger(RappCsarConfigurationHandler.class); + private final String acmInstantiationJsonLocation = "Files/Acm/instantiation.json"; + + private final String smeProviderDomainLocation = "Files/Sme/provider-domain.json"; + + private final String smeProviderApiLocation = "Files/Sme/provider-api.json"; + + private final String smeInvokerLocation = "Files/Sme/invoker.json"; + + + public boolean isValidRappPackage(MultipartFile multipartFile) { + return multipartFile.getOriginalFilename() != null && multipartFile.getOriginalFilename().endsWith(".csar") + && isFileExistsInCsar(multipartFile, acmInstantiationJsonLocation); + } + + boolean isFileExistsInCsar(MultipartFile multipartFile, String fileLocation) { + try (ZipInputStream zipInputStream = new ZipInputStream(multipartFile.getInputStream())) { + ZipEntry zipEntry; + while ((zipEntry = zipInputStream.getNextEntry()) != null) { + if (zipEntry.getName().matches(fileLocation)) { + return Boolean.TRUE; + } + } + return Boolean.FALSE; + } catch (IOException e) { + logger.error("Unable to find the CSAR file", e); + return Boolean.FALSE; + } + } + + public Path getRappPackageLocation(String csarLocation, String rappId, String fileName) { + return Path.of(csarLocation, rappId, fileName); + } + + public String getInstantiationPayload(Rapp rapp, UUID compositionId) { + return getPayload(rapp, acmInstantiationJsonLocation).replaceAll("COMPOSITIONID", + String.valueOf(compositionId)); + } + + String getPayload(Rapp rapp, String location) { + File csarFile = new File( + getRappPackageLocation(rapp.getPackageLocation(), rapp.getName(), rapp.getPackageName()).toUri()); + return getFileFromCsar(csarFile, location).toString(); + } + + ByteArrayOutputStream getFileFromCsar(File csarFile, String fileLocation) { + ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); + try (FileInputStream fileInputStream = new FileInputStream(csarFile); + ZipInputStream zipInputStream = new ZipInputStream(fileInputStream)) { + ZipEntry entry; + while ((entry = zipInputStream.getNextEntry()) != null) { + if (!entry.isDirectory() && entry.getName().equals(fileLocation)) { + byte[] buffer = new byte[1024]; + int bytesRead; + while ((bytesRead = zipInputStream.read(buffer)) != -1) { + byteArrayOutputStream.write(buffer, 0, bytesRead); + } + } + } + } catch (IOException e) { + logger.error("Unable to find the CSAR file", e); + } + return byteArrayOutputStream; + } + + + public String getSmeProviderDomainPayload(Rapp rapp) { + return getPayload(rapp, smeProviderDomainLocation); + } + + public String getSmeProviderApiPayload(Rapp rapp) { + return getPayload(rapp, smeProviderApiLocation); + } + + public String getSmeInvokerPayload(Rapp rapp) { + return getPayload(rapp, smeInvokerLocation); + } + +} diff --git a/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/RappDeployer.java b/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/RappDeployer.java new file mode 100755 index 0000000..9c6a410 --- /dev/null +++ b/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/RappDeployer.java @@ -0,0 +1,6 @@ +package com.oransc.rappmanager.models; + +public interface RappDeployer { + boolean deployRapp(Rapp rapp); + boolean undeployRapp(Rapp rapp); +} diff --git a/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/RappEvent.java b/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/RappEvent.java new file mode 100755 index 0000000..0f64e55 --- /dev/null +++ b/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/RappEvent.java @@ -0,0 +1,6 @@ +package com.oransc.rappmanager.models; + +public enum RappEvent { + ONBOARDED, DEPLOYING, ACMDEPLOYED, SMEDEPLOYED, ACMDEPLOYFAILED, SMEDEPLOYFAILED, DEPLOYED, UNDEPLOYING, UNDEPLOYED, + ACMUNDEPLOYED, SMEUNDEPLOYED, ACMUNDEPLOYFAILED, SMEUNDEPLOYFAILED +} diff --git a/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/RappState.java b/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/RappState.java new file mode 100755 index 0000000..6198c47 --- /dev/null +++ b/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/RappState.java @@ -0,0 +1,23 @@ +/*- + * ============LICENSE_START====================================================================== + * Copyright (C) 2023 Nordix Foundation. All rights reserved. + * =============================================================================================== + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS 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.oransc.rappmanager.models; + +public enum RappState { + ONBOARDED, DEPLOYING, DEPLOYED, UNDEPLOYING, UNDEPLOYED, FAILED +} diff --git a/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/cache/RappCacheService.java b/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/cache/RappCacheService.java new file mode 100755 index 0000000..d2b273c --- /dev/null +++ b/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/cache/RappCacheService.java @@ -0,0 +1,61 @@ +/*- + * ============LICENSE_START====================================================================== + * Copyright (C) 2023 Nordix Foundation. All rights reserved. + * =============================================================================================== + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS 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.oransc.rappmanager.models.cache; + +import com.oransc.rappmanager.models.Rapp; +import com.oransc.rappmanager.models.statemachine.RappStateMachine; +import java.util.Optional; +import lombok.RequiredArgsConstructor; +import org.springframework.cache.Cache; +import org.springframework.cache.CacheManager; +import org.springframework.stereotype.Service; + +@Service +@RequiredArgsConstructor +public class RappCacheService { + + private final String RAPP_CACHE = "rapp-cache"; + private final CacheManager cacheManager; + private final RappStateMachine rappStateMachine; + + public Cache getAllRapp() { + return cacheManager.getCache(RAPP_CACHE); + } + + public Optional getRapp(String rappId) { + final Cache cache = cacheManager.getCache(RAPP_CACHE); + Optional rappOptional = Optional.ofNullable(cache.get(rappId, Rapp.class)); + rappOptional.ifPresent(rapp -> rapp.setState(rappStateMachine.getRappState(rapp.getRappId()))); + return rappOptional; + } + + public void putRapp(Rapp rapp) { + final Cache cache = cacheManager.getCache(RAPP_CACHE); + if (cache != null) { + cache.put(rapp.getName(), rapp); + } + } + + public void deleteRapp(Rapp rapp) { + final Cache cache = cacheManager.getCache(RAPP_CACHE); + if (cache != null) { + cache.evict(rapp.getName()); + } + } +} diff --git a/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/statemachine/RappStateMachine.java b/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/statemachine/RappStateMachine.java new file mode 100755 index 0000000..fcd6ed3 --- /dev/null +++ b/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/statemachine/RappStateMachine.java @@ -0,0 +1,44 @@ +package com.oransc.rappmanager.models.statemachine; + +import com.oransc.rappmanager.models.Rapp; +import com.oransc.rappmanager.models.RappEvent; +import com.oransc.rappmanager.models.RappState; +import java.util.HashMap; +import java.util.Map; +import java.util.UUID; +import lombok.RequiredArgsConstructor; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.statemachine.StateMachine; +import org.springframework.statemachine.config.StateMachineFactory; +import org.springframework.stereotype.Service; + +@Service +@RequiredArgsConstructor +public class RappStateMachine { + + Logger logger = LoggerFactory.getLogger(RappStateMachine.class); + + private final StateMachineFactory stateMachineFactory; + private Map> stateMachineMap = new HashMap<>(); + + public void onboardRapp(UUID rappId) { + StateMachine stateMachine = stateMachineFactory.getStateMachine(rappId); + stateMachineMap.put(rappId, stateMachine); + stateMachine.start(); + } + + public void sendRappEvent(Rapp rapp, RappEvent rappEvent) { + logger.info("Sending rapp event {} for {}", rappEvent.name(), rapp.getRappId()); + logger.info("State machine map is {}", stateMachineMap); + stateMachineMap.get(rapp.getRappId()).sendEvent(rappEvent); + } + + public RappState getRappState(UUID rappId) { + return stateMachineMap.get(rappId).getState().getId(); + } + + public void deleteRapp(Rapp rapp) { + stateMachineMap.get(rapp.getRappId()).stop(); + } +} diff --git a/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/statemachine/RappStateMachineConfig.java b/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/statemachine/RappStateMachineConfig.java new file mode 100755 index 0000000..4d7e486 --- /dev/null +++ b/rapp-manager-models/src/main/java/com/oransc/rappmanager/models/statemachine/RappStateMachineConfig.java @@ -0,0 +1,87 @@ +package com.oransc.rappmanager.models.statemachine; + +import com.oransc.rappmanager.models.RappEvent; +import com.oransc.rappmanager.models.RappState; +import java.util.EnumSet; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.statemachine.config.EnableStateMachineFactory; +import org.springframework.statemachine.config.EnumStateMachineConfigurerAdapter; +import org.springframework.statemachine.config.builders.StateMachineConfigurationConfigurer; +import org.springframework.statemachine.config.builders.StateMachineStateConfigurer; +import org.springframework.statemachine.config.builders.StateMachineTransitionConfigurer; +import org.springframework.statemachine.guard.Guard; + +@Configuration +@EnableStateMachineFactory +public class RappStateMachineConfig extends EnumStateMachineConfigurerAdapter { + + @Override + public void configure(StateMachineStateConfigurer states) throws Exception { + states.withStates().initial(RappState.ONBOARDED).states(EnumSet.allOf(RappState.class)); + } + + @Override + public void configure(StateMachineConfigurationConfigurer config) throws Exception { + config.withConfiguration(); + } + + // @formatter:off + @Override + public void configure(StateMachineTransitionConfigurer transitions) throws Exception { + transitions + .withExternal() + .source(RappState.ONBOARDED).target(RappState.DEPLOYING).event(RappEvent.DEPLOYING) + .and() + .withExternal() + .source(RappState.DEPLOYING).target(RappState.FAILED).event(RappEvent.ACMDEPLOYFAILED) + .and() + .withExternal() + .source(RappState.DEPLOYING).target(RappState.FAILED).event(RappEvent.SMEDEPLOYFAILED) + .and() + .withExternal() + .source(RappState.UNDEPLOYING).target(RappState.FAILED).event(RappEvent.ACMUNDEPLOYFAILED) + .and() + .withExternal() + .source(RappState.UNDEPLOYING).target(RappState.FAILED).event(RappEvent.SMEUNDEPLOYFAILED) + .and() + .withExternal() + .source(RappState.DEPLOYED).target(RappState.UNDEPLOYING).event(RappEvent.UNDEPLOYING) + .and() + .withExternal() + .source(RappState.DEPLOYING).target(RappState.DEPLOYED).event(RappEvent.ACMDEPLOYED) + .guard(deployedGuard()) + .and() + .withExternal() + .source(RappState.DEPLOYING).target(RappState.DEPLOYED).event(RappEvent.SMEDEPLOYED) + .guard(deployedGuard()) + .and() + .withExternal() + .source(RappState.UNDEPLOYING).target(RappState.UNDEPLOYED).event(RappEvent.ACMUNDEPLOYED) + .guard(undeployedGuard()) + .and() + .withExternal() + .source(RappState.UNDEPLOYING).target(RappState.UNDEPLOYED).event(RappEvent.SMEUNDEPLOYED) + .guard(undeployedGuard()); + + } + // @formatter:on + + @Bean + public Guard deployedGuard() { + return stateContext -> { + stateContext.getExtendedState().getVariables().put(stateContext.getEvent(), true); + return stateContext.getExtendedState().getVariables().get(RappEvent.ACMDEPLOYED) != null + && stateContext.getExtendedState().getVariables().get(RappEvent.SMEDEPLOYED) != null; + }; + } + + @Bean + public Guard undeployedGuard() { + return stateContext -> { + stateContext.getExtendedState().getVariables().put(stateContext.getEvent(), true); + return stateContext.getExtendedState().getVariables().get(RappEvent.ACMUNDEPLOYED) != null + && stateContext.getExtendedState().getVariables().get(RappEvent.SMEUNDEPLOYED) != null; + }; + } +} diff --git a/rapp-manager-sme/pom.xml b/rapp-manager-sme/pom.xml new file mode 100755 index 0000000..cc607b2 --- /dev/null +++ b/rapp-manager-sme/pom.xml @@ -0,0 +1,178 @@ + + + 4.0.0 + + com.oransc + rappmanager + 0.0.1-SNAPSHOT + + + com.oransc.rappmanager + rapp-manager-sme + + + 17 + 17 + UTF-8 + 3.1.0 + + + + + com.oransc.rappmanager + rapp-manager-models + ${project.version} + + + org.springframework.boot + spring-boot-starter-web + + + org.projectlombok + lombok + true + + + org.openapitools + jackson-databind-nullable + 0.2.6 + + + + + + + org.codehaus.mojo + exec-maven-plugin + ${exec-maven-plugin.version} + + + git submodule update + initialize + + git + + submodule + update + --init + --recursive + + + + exec + + + + initialize-sme-openapi-specs + initialize + + exec + + + bash + + ../scripts/init/init-sme-spec.sh + + + + + + + org.openapitools + openapi-generator-maven-plugin + ${openapi.maven.version} + + + provider-spec-generator + + generate + + + + rapp-manager-sme/src/main/resources/openapi/TS29222_CAPIF_API_Provider_Management_API.yaml + + java + resttemplate + false + false + false + false + true + + apiNameSuffix=ApiClient + + + src/main/java + true + com.oransc.rappmanager.sme.provider + com.oransc.rappmanager.sme.provider.rest + com.oransc.rappmanager.sme.provider.data + false + + + + + publish-service-spec-generator + + generate + + + + rapp-manager-sme/src/main/resources/openapi/TS29222_CAPIF_Publish_Service_API.yaml + + java + resttemplate + false + false + false + false + true + + apiNameSuffix=ApiClient + + + src/main/java + true + com.oransc.rappmanager.sme.publishservice + com.oransc.rappmanager.sme.publishservice.rest + com.oransc.rappmanager.sme.publishservice.data + false + + + + + invoker-spec-generator + + generate + + + + rapp-manager-sme/src/main/resources/openapi/TS29222_CAPIF_API_Invoker_Management_API.yaml + + java + resttemplate + false + false + false + false + true + + apiNameSuffix=ApiClient + + + src/main/java + true + com.oransc.rappmanager.sme.invoker + com.oransc.rappmanager.sme.invoker.rest + com.oransc.rappmanager.sme.invoker.data + false + + + + + + + + \ No newline at end of file diff --git a/rapp-manager-sme/src/main/java/com/oransc/rappmanager/sme/configuration/SmeConfiguration.java b/rapp-manager-sme/src/main/java/com/oransc/rappmanager/sme/configuration/SmeConfiguration.java new file mode 100755 index 0000000..2a1f0ce --- /dev/null +++ b/rapp-manager-sme/src/main/java/com/oransc/rappmanager/sme/configuration/SmeConfiguration.java @@ -0,0 +1,36 @@ +/*- + * ============LICENSE_START====================================================================== + * Copyright (C) 2023 Nordix Foundation. All rights reserved. + * =============================================================================================== + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS 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.oransc.rappmanager.sme.configuration; + +import lombok.Data; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.context.annotation.Configuration; + +@Configuration +@ConfigurationProperties(prefix = "rappmanager.sme") +@Data +public class SmeConfiguration { + + String baseUrl; + String providerBasePath; + String invokerBasePath; + String publishApiBasePath; + int maxRetries; + int retryInterval; +} diff --git a/rapp-manager-sme/src/main/java/com/oransc/rappmanager/sme/service/SmeDeployer.java b/rapp-manager-sme/src/main/java/com/oransc/rappmanager/sme/service/SmeDeployer.java new file mode 100755 index 0000000..5901417 --- /dev/null +++ b/rapp-manager-sme/src/main/java/com/oransc/rappmanager/sme/service/SmeDeployer.java @@ -0,0 +1,225 @@ +/*- + * ============LICENSE_START====================================================================== + * Copyright (C) 2023 Nordix Foundation. All rights reserved. + * =============================================================================================== + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS 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.oransc.rappmanager.sme.service; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.oransc.rappmanager.models.Rapp; +import com.oransc.rappmanager.models.RappCsarConfigurationHandler; +import com.oransc.rappmanager.models.RappDeployer; +import com.oransc.rappmanager.models.RappEvent; +import com.oransc.rappmanager.models.cache.RappCacheService; +import com.oransc.rappmanager.models.statemachine.RappStateMachine; +import com.oransc.rappmanager.sme.invoker.data.APIInvokerEnrolmentDetails; +import com.oransc.rappmanager.sme.provider.data.APIProviderEnrolmentDetails; +import com.oransc.rappmanager.sme.provider.data.APIProviderFunctionDetails; +import com.oransc.rappmanager.sme.provider.data.ApiProviderFuncRole; +import com.oransc.rappmanager.sme.provider.data.RegistrationInformation; +import com.oransc.rappmanager.sme.publishservice.data.AefProfile; +import com.oransc.rappmanager.sme.publishservice.data.ServiceAPIDescription; +import java.util.List; +import java.util.Optional; +import java.util.stream.Collectors; +import lombok.RequiredArgsConstructor; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Service; + +@Service +@RequiredArgsConstructor +public class SmeDeployer implements RappDeployer { + + Logger logger = LoggerFactory.getLogger(SmeDeployer.class); + + private final com.oransc.rappmanager.sme.provider.rest.DefaultApiClient providerDefaultApiClient; + + private final com.oransc.rappmanager.sme.publishservice.rest.DefaultApiClient publishServiceDefaultApiClient; + + private final com.oransc.rappmanager.sme.invoker.rest.DefaultApiClient invokerDefaultApiClient; + + private final RappCsarConfigurationHandler rappCsarConfigurationHandler; + + private final ObjectMapper objectMapper; + + private final RappCacheService rappCacheService; + + private final RappStateMachine rappStateMachine; + + private String amfRegistrationId; + + + APIProviderEnrolmentDetails createAMF() { + APIProviderEnrolmentDetails responseApiEnrollmentDetails = null; + try { + APIProviderFunctionDetails apiProviderFunctionDetails = new APIProviderFunctionDetails(); + apiProviderFunctionDetails.setApiProvFuncRole(ApiProviderFuncRole.AMF); + apiProviderFunctionDetails.setApiProvFuncInfo("Rapp Manager as AMF"); + apiProviderFunctionDetails.setRegInfo(new RegistrationInformation().apiProvPubKey("asd")); + + APIProviderEnrolmentDetails apiProviderEnrolmentDetails = new APIProviderEnrolmentDetails(); + apiProviderEnrolmentDetails.setRegSec("PSK"); + apiProviderEnrolmentDetails.setApiProvDomInfo("Rapp Manager as AMF"); + apiProviderEnrolmentDetails.setApiProvFuncs(List.of(apiProviderFunctionDetails)); + responseApiEnrollmentDetails = providerDefaultApiClient.postRegistrations(apiProviderEnrolmentDetails); + amfRegistrationId = responseApiEnrollmentDetails.getApiProvDomId(); + } catch (Exception e) { + logger.warn("Error in creating AMF", e); + } + return responseApiEnrollmentDetails; + } + + void deleteAMF() { + deleteProviderFunc(amfRegistrationId); + } + + + @Override + public boolean deployRapp(Rapp rapp) { + logger.debug("Deploying SME functions for Rapp {}", rapp.getName()); + try { + boolean deployState = createProviderDomain(rapp) && createPublishApi(rapp) && createInvoker(rapp); + if (deployState) { + rappStateMachine.sendRappEvent(rapp, RappEvent.SMEDEPLOYED); + } else { + rappStateMachine.sendRappEvent(rapp, RappEvent.SMEDEPLOYFAILED); + } + return deployState; + } catch (JsonProcessingException e) { + logger.warn("Failed to deploy SME functions for Rapp {}", rapp.getName(), e); + } + return false; + } + + @Override + public boolean undeployRapp(Rapp rapp) { + logger.debug("Undeploying SME functions for Rapp {}", rapp.getName()); + try { + rapp.getSmeInvokers().forEach(this::deleteInvoker); + rapp.getSmeServiceApis().forEach(s -> deletePublishApi(s, rapp.getSmeApfId())); + rapp.getSmeProviderFunctions().values().forEach(this::deleteProviderFunc); + rappStateMachine.sendRappEvent(rapp, RappEvent.SMEUNDEPLOYED); + return true; + } catch (Exception e) { + logger.warn("Failed to Undeploy SME functions for Rapp {}", rapp.getName()); + } + return false; + } + + boolean createProviderDomain(Rapp rapp) throws JsonProcessingException { + logger.debug("Creating provider domain for Rapp {}", rapp.getName()); + try { + String providerDomainPayload = rappCsarConfigurationHandler.getSmeProviderDomainPayload(rapp); + if (providerDomainPayload != null) { + APIProviderEnrolmentDetails apiProviderEnrolmentDetails = + objectMapper.readValue(providerDomainPayload, APIProviderEnrolmentDetails.class); + APIProviderEnrolmentDetails responseApiEnrollmentDetails = + providerDefaultApiClient.postRegistrations(apiProviderEnrolmentDetails); + if (responseApiEnrollmentDetails.getApiProvFuncs() != null) { + getProviderFuncId(responseApiEnrollmentDetails.getApiProvFuncs(), + ApiProviderFuncRole.APF).ifPresent(apiProviderFunctionDetails -> rapp.setSmeApfId( + apiProviderFunctionDetails.getApiProvFuncId())); + getProviderFuncId(responseApiEnrollmentDetails.getApiProvFuncs(), + ApiProviderFuncRole.AEF).ifPresent(apiProviderFunctionDetails -> rapp.setSmeAefId( + apiProviderFunctionDetails.getApiProvFuncId())); + rapp.setSmeProviderFunctions(responseApiEnrollmentDetails.getApiProvFuncs().stream().collect( + Collectors.toMap(APIProviderFunctionDetails::getApiProvFuncInfo, + APIProviderFunctionDetails::getApiProvFuncId))); + rappCacheService.putRapp(rapp); + return true; + } + } + } catch (Exception e) { + logger.warn("Error in creating provider domain", e); + } + return false; + } + + Optional getProviderFuncId(List apiProviderFunctionDetails, + ApiProviderFuncRole apiProviderFuncRole) { + return apiProviderFunctionDetails.stream() + .filter(apiProviderFunctionDetail -> apiProviderFunctionDetail.getApiProvFuncRole() + .equals(apiProviderFuncRole)).findFirst(); + } + + void deleteProviderFunc(String registrationId) { + providerDefaultApiClient.deleteRegistrationsRegistrationId(registrationId); + } + + + boolean createPublishApi(Rapp rapp) throws JsonProcessingException { + logger.debug("Creating publish api for Rapp {}", rapp.getName()); + try { + String providerApiPayload = rappCsarConfigurationHandler.getSmeProviderApiPayload(rapp); + if (providerApiPayload != null) { + ServiceAPIDescription serviceAPIDescription = + objectMapper.readValue(providerApiPayload, ServiceAPIDescription.class); + serviceAPIDescription.getAefProfiles().forEach(aefProfile -> { + aefProfile.setAefId(rapp.getSmeProviderFunctions().get(aefProfile.getAefId())); + }); + ServiceAPIDescription serviceAPIDescriptionResponse = + publishServiceDefaultApiClient.postApfIdServiceApis(rapp.getSmeApfId(), serviceAPIDescription); + + if (serviceAPIDescriptionResponse.getAefProfiles() != null) { + rapp.setSmeServiceApis( + serviceAPIDescriptionResponse.getAefProfiles().stream().map(AefProfile::getAefId) + .collect(Collectors.toList())); + rappCacheService.putRapp(rapp); + return true; + } + } + } catch (Exception e) { + logger.warn("Error in creating publish api", e); + } + return false; + } + + void deletePublishApi(String serviceApiId, String apfId) { + publishServiceDefaultApiClient.deleteApfIdServiceApisServiceApiId(serviceApiId, apfId); + } + + boolean createInvoker(Rapp rapp) throws JsonProcessingException { + logger.debug("Creating provider domain for Rapp {}", rapp.getName()); + try { + String invokerPayload = rappCsarConfigurationHandler.getSmeInvokerPayload(rapp); + if (invokerPayload != null) { + List apiInvokerEnrolmentDetails = + objectMapper.readValue(invokerPayload, new TypeReference<>() { }); + apiInvokerEnrolmentDetails.forEach(apiInvokerEnrolmentDetail -> { + APIInvokerEnrolmentDetails apiInvokerEnrolmentDetailsResponse = + invokerDefaultApiClient.postOnboardedInvokers(apiInvokerEnrolmentDetail); + if (apiInvokerEnrolmentDetailsResponse.getApiList() != null) { + rapp.getSmeInvokers().addAll(apiInvokerEnrolmentDetailsResponse.getApiList().stream() + .map(com.oransc.rappmanager.sme.invoker.data.ServiceAPIDescription::getApiId) + .toList()); + rappCacheService.putRapp(rapp); + } + }); + return true; + } + } catch (Exception e) { + logger.warn("Error in creating invoker", e); + } + return false; + } + + void deleteInvoker(String invokerId) { + invokerDefaultApiClient.deleteOnboardedInvokersOnboardingId(invokerId); + } +} diff --git a/rapp-manager-sme/src/main/java/com/oransc/rappmanager/sme/service/SmeLifecycleManager.java b/rapp-manager-sme/src/main/java/com/oransc/rappmanager/sme/service/SmeLifecycleManager.java new file mode 100755 index 0000000..0c21c1b --- /dev/null +++ b/rapp-manager-sme/src/main/java/com/oransc/rappmanager/sme/service/SmeLifecycleManager.java @@ -0,0 +1,63 @@ +/*- + * ============LICENSE_START====================================================================== + * Copyright (C) 2023 Nordix Foundation. All rights reserved. + * =============================================================================================== + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS 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.oransc.rappmanager.sme.service; + +import com.oransc.rappmanager.sme.provider.data.APIProviderEnrolmentDetails; +import lombok.RequiredArgsConstructor; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.context.SmartLifecycle; +import org.springframework.stereotype.Service; + +@Service +@RequiredArgsConstructor +public class SmeLifecycleManager implements SmartLifecycle { + + Logger logger = LoggerFactory.getLogger(SmeLifecycleManager.class); + + private final SmeDeployer smeDeployer; + private boolean running; + + @Override + public void start() { + try { + logger.info("Registering Rapp Manager as AMF"); + APIProviderEnrolmentDetails providerServiceAMF = smeDeployer.createAMF(); + logger.info("Rapp Manager AMF Registration Id: " + providerServiceAMF.getApiProvDomId()); + running = true; + }catch (Exception e){ + logger.warn("Error in initializing AMF", e); + running = false; + } + } + + @Override + public void stop() { + if (isRunning()) { + logger.info("Deleting Rapp Manager as AMF"); + smeDeployer.deleteAMF(); + running = false; + } + } + + @Override + public boolean isRunning() { + return running; + } +} diff --git a/scripts/init/getsmeswagger.go b/scripts/init/getsmeswagger.go new file mode 100755 index 0000000..65826a2 --- /dev/null +++ b/scripts/init/getsmeswagger.go @@ -0,0 +1,95 @@ +// - +// ========================LICENSE_START================================= +// O-RAN-SC +// %% +// Copyright (C) 2023: Nordix Foundation +// %% +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// ========================LICENSE_END=================================== +// + +package main + + +import ( + "github.com/getkin/kin-openapi/openapi3" + log "github.com/sirupsen/logrus" + "gopkg.in/yaml.v3" + "encoding/json" + "io/ioutil" + + "oransc.org/nonrtric/capifcore/internal/invokermanagementapi" + "oransc.org/nonrtric/capifcore/internal/providermanagementapi" + "oransc.org/nonrtric/capifcore/internal/publishserviceapi" + "oransc.org/nonrtric/capifcore/internal/common" + "oransc.org/nonrtric/capifcore/internal/common29122" + "oransc.org/nonrtric/capifcore/internal/common29571" +) + +func main() { + var swagger *openapi3.T + var err error + + swagger,err = providermanagementapi.GetSwagger() + if err == nil { + generateSwaggerYaml(swagger, "TS29222_CAPIF_API_Provider_Management_API.yaml") + } + + swagger,err = publishserviceapi.GetSwagger() + if err == nil { + generateSwaggerYaml(swagger, "TS29222_CAPIF_Publish_Service_API.yaml") + } + + swagger,err = invokermanagementapi.GetSwagger() + if err == nil { + generateSwaggerYaml(swagger, "TS29222_CAPIF_API_Invoker_Management_API.yaml") + } + + swagger,err = common.GetSwagger() + if err == nil { + generateSwaggerYaml(swagger, "CommonData.yaml") + } + + swagger,err = common29122.GetSwagger() + if err == nil { + generateSwaggerYaml(swagger, "TS29122_CommonData.yaml") + } + + swagger,err = common29571.GetSwagger() + if err == nil { + generateSwaggerYaml(swagger, "TS29571_CommonData.yaml") + } +} + +func generateSwaggerYaml(swagger *openapi3.T, filename string) { + jsondataarr, jsondataarrerr := json.Marshal(&swagger) + if jsondataarrerr != nil { + log.Fatalf("Error loading json data from swagger \n: %s", jsondataarrerr) + } + + var data map[string]interface{} + if err := json.Unmarshal(jsondataarr, &data); err != nil { + log.Fatalf("Error loading json data to map \n: %s", jsondataarrerr) + log.Fatal(err) + } + + yamldataarr, yamldataarrerr := yaml.Marshal(&data) + if yamldataarrerr != nil { + log.Fatalf("Error loading json data map to array \n: %s", yamldataarrerr) + } + + err2 := ioutil.WriteFile(filename, yamldataarr, 0755) + if err2 != nil { + log.Fatalf("Error writing provider yaml \n: %s", err2) + } +} \ No newline at end of file diff --git a/scripts/init/init-sme-spec.sh b/scripts/init/init-sme-spec.sh new file mode 100755 index 0000000..da4a3cd --- /dev/null +++ b/scripts/init/init-sme-spec.sh @@ -0,0 +1,46 @@ +#!/bin/bash + +# ============LICENSE_START=============================================== +# Copyright (C) 2023 Nordix Foundation. All rights reserved. +# ======================================================================== +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============LICENSE_END================================================= +# + +SME_LOCATION="../sme/capifcore" +cp ../scripts/init/getsmeswagger.go $SME_LOCATION +cd $SME_LOCATION + +echo "Generating SME openapi spec..." + +if [ -f "getsmeswagger.go" ]; then + echo "Generating..." + go run getsmeswagger.go + + echo "Copying generated specs..." + mkdir -p ../../rapp-manager-sme/src/main/resources/openapi + echo "Copying CommonData.yaml" + mv CommonData.yaml ../../rapp-manager-sme/src/main/resources/openapi + echo "Copying TS29122_CommonData.yaml" + mv TS29122_CommonData.yaml ../../rapp-manager-sme/src/main/resources/openapi + echo "Copying TS29571_CommonData.yaml" + mv TS29571_CommonData.yaml ../../rapp-manager-sme/src/main/resources/openapi + echo "Copying TS29222_CAPIF_API_Invoker_Management_API.yaml" + mv TS29222_CAPIF_API_Invoker_Management_API.yaml ../../rapp-manager-sme/src/main/resources/openapi + echo "Copying TS29222_CAPIF_API_Provider_Management_API.yaml" + mv TS29222_CAPIF_API_Provider_Management_API.yaml ../../rapp-manager-sme/src/main/resources/openapi + echo "Copying TS29222_CAPIF_Publish_Service_API.yaml" + mv TS29222_CAPIF_Publish_Service_API.yaml ../../rapp-manager-sme/src/main/resources/openapi +else + echo "Unable to find the openapi spec generator." +fi diff --git a/sme b/sme new file mode 160000 index 0000000..82a6094 --- /dev/null +++ b/sme @@ -0,0 +1 @@ +Subproject commit 82a60949ea3507b00313bb627d91c9169c0a37c7 -- 2.16.6

u^Q72+g)ONWaQ}LB1`}h`3-S?eW(ebRfQSQ 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î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 Uo<2{Xr;p?F7yIN0008P408`jcVE_OC literal 0 HcmV?d00001 diff --git a/rapp-manager-application/src/main/resources/resource-csar/Artifacts/Deployment/HELM/ueransim-2.0.14.tgz b/rapp-manager-application/src/main/resources/resource-csar/Artifacts/Deployment/HELM/ueransim-2.0.14.tgz new file mode 100755 index 0000000000000000000000000000000000000000..bc9dec28dd75ab80f3b98bd13f8167a7a6da671f GIT binary patch literal 9102 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 literal 0 HcmV?d00001 diff --git a/rapp-manager-application/src/main/resources/resource-csar/Definitions/asd.yaml b/rapp-manager-application/src/main/resources/resource-csar/Definitions/asd.yaml new file mode 100755 index 0000000..39ce4ed --- /dev/null +++ b/rapp-manager-application/src/main/resources/resource-csar/Definitions/asd.yaml @@ -0,0 +1,112 @@ +tosca_definitions_version: tosca_simple_yaml_1_2 + +description: First drop of free5gc and ueransim ASD + +imports: + - asd_types.yaml + +topology_template: + node_templates: + applicationServiceDescriptor: + type: tosca.nodes.asd + description: "Free5gc" + properties: + descriptor_id: 123e4567-e89b-12d3-a456-426614174000 + descriptor_invariant_id: 123e4yyy-e89b-12d3-a456-426614174abc + descriptor_version: 1.0 + schema_version: 2.0 + function_description: free5gc description + provider: EST + application_name: free5gc-app + application_version: 2.3 + ext_cpds: + - id: 1 + description: webpage-service + virtual_link_requirement: endUser + network_interface_realization_requirements: + trunk_mode: false + ipam: orchestrated + interface_type: direct.userdriver + interface_option: + - virtio + - memif + interface_redundancy: actPassBond + nic_options: + - nic id1 + - nic id2 + input_param_mappings: + loadbalancer_IP: 1.2.3.4 + external_IPs: + - 5.6.7.8 + - 10.11.12.13 + nad_names: + - nad name 1 + - nad name 2 + nad_namespace: myNamespace + resource_mapping: my resource manifest + - id: 2 + description: transactionAPI + virtual_link_requirement: backhaul + network_interface_realization_requirements: + trunk_mode: true + ipam: orchestrated + interface_type: direct.userdriver + interface_option: + - virtio + interface_redundancy: actPassBond + nic_options: + - nic id3 + - nic id4 + input_param_mappings: + loadbalancer_IP: 192.168.1.0 + external_IPs: + - 192.168.1.1 + - 192.168.1.2 + nad_names: + - nad name 3 + - nad name 4 + nad_namespace: myNamespace2 + resource_mapping: my resource manifest + enhanced_cluster_capabilities: + min_kernel_version: 1.2.3 + required_kernel_modules: + - ip6_tables + - cryptd + conflicting_kernel_modules: + - nf_nat + required_custom_resources: + - kind: myKind + api_version: myVersion + - kind: mySecondKind + api_version: mySecondVersion + cluster_labels: + - label 1 + - label 2 + required_plugin: + - name: plugin1Name + version: 1.2.3 + - name: plugin2Name + version: 4.5.6 + artifacts: + free5gc: + type: tosca.artifacts.asd.deploymentItem + file: "Artifacts/Deployment/HELM/free5gc-1.1.3.tgz" + properties: + artifact_type: "helm_chart" + itemId: 1 + deployment_order: 1 + lifecycle_parameters: + - ".Values.global.n2network.masterIf" + - ".Values.global.n3network.masterIf" + - ".Values.global.n4network.masterIf" + - ".Values.global.n6network.masterIf" + ueransim-free5gc: + type: tosca.artifacts.asd.deploymentItem + file: "Artifacts/Deployment/HELM/ueransim-2.0.14.tgz" + properties: + artifact_type: "helm_chart" + itemId: 2 + deployment_order: 2 + lifecycle_parameters: + - ".Values.global.n2network.masterIf" + - ".Values.global.n3network.masterIf" diff --git a/rapp-manager-application/src/main/resources/resource-csar/Definitions/asd_types.yaml b/rapp-manager-application/src/main/resources/resource-csar/Definitions/asd_types.yaml new file mode 100755 index 0000000..b004aa2 --- /dev/null +++ b/rapp-manager-application/src/main/resources/resource-csar/Definitions/asd_types.yaml @@ -0,0 +1,448 @@ +tosca_definitions_version: tosca_simple_yaml_1_2 +description: ASD types definitions version 0.1 +data_types: +tosca.datatypes.asd.networkInterfaceRequirements: + derived_from: tosca.datatypes.Root + version: 0.1 + description: "Describes the datatype for network interface requirements" + properties: + trunk_mode: + description: > + Information about whether the CP instantiated from this Cp is + in Trunk mode (802.1Q or other). When operating in "trunk mode", + the Cp is capable of carrying traffic for several VLANs. + Absence of this property implies that trunkMode is not configured + for the Cp i.e. It is equivalent to boolean value "false". + required: true + type: boolean + default: false + ipam: + description: > + Identifies whether application expects IP address assignment to be + managed by the cluster infrastructure (CNI IPAM plugin), or + configured by orchestrator via for example helm input parameter, + or if IP assignment is handled by the application itself. + required: true + type: string + constraints: + - valid_values: ["infraProvided", "orchestrated", "userManaged"] + default: "infraProvided" + interface_type: + description: > + Indicates what type of network interface the application expects. + Kernel based virtual netdev based on CNIs such as ovs | bridge | + macvlan | ipvlan, or PCIe dev directly visible in application + namespace with kernel or userspace driver or bonded with the Bond + CNI, or userspace-CNI based network interface + (requires DPDK-OVS/VPP vSwitch). + required: true + type: string + constraints: + - valid_values: ["kernel.netdev", "direct.userdriver", "direct.kerneldriver", "direct.bond", "userspace"] + default: "kernel.netdev" + interface_option: + description: > + This attribute describes verified realization options for the + network interface in question. Currently listed options + (virtio and memif) are applicable for the interfaceType “userspace”. + required: false + type: list + entry_schema: + type: string + constraints: + - valid_values: ["virtio", "memif"] + interface_redundancy: + description: > + Identifies switch-plane redundancy method the application uses, + and that node infrastructure is required to comply with. + "infraProvided", “left” and “right”: The container sees a + single vNIC that a) the infrastructure bonds over both switchplanes + or b) that is connected to the network via only left or + right the switchplane. + The other cases are for a mated pair of vnics connecting to + same network, but where one vNIC connects + via left switch plane and the other via right switch plane, + and where the application manages the redundancy. + "activePassiveBond": the application bonds with move of MAC address. + "activeActiveBond“: bonded left/right links must be part of a multi-chassis LAG + "activePassiveL3": application will move application IP address between the vNICs. + "activeActiveL3": the application uses anycast/ECMP. + required: true + type: string + constraints: + - valid_values: ["infraProvided", "actPassBond", "actActBond", "actPassL3", "actActL3", "Left", "Right"] + default: "infraProvided" + nic_options: + description: > + Identifies for the direct.userdriver interface type, the physical + nics the driver is verified to work with. + Allowed values for nic types must be handled via a registry or be standardized. + required: false + type: list + entry_schema: + type: string + +tosca.datatypes.asd.paramMappings: + version: 0.1 + derived_from: tosca.datatypes.Root + description: "Describes the datatype for parameter mapping" + properties: + loadbalancer_IP: + description: > + When present, this attribute specifies the name of the deployment + artifact input parameter through which the orchestrator can + configure the loadbalancerIP parameter of the K8s service + or ingress controller that the extCpdData represents. + Note: The format of the Content strings is specific for each different + orchestration templating technology used (Helm, Teraform, etc.). + Currently only a format for use with Helm charts is suggested: + ":[.]^(0..N)[.]^(0..N)". + Whether the optional parts of the format are present depends on how the + parameter is declared in the helm chart. An example is: + "chartName:subChart1.subChart2.subChart3.Parent1.Parent2.Parent3.LBIP". + required: false + type: string + external_IPs: + description: > + When present, this attribute specifies the name of the deployment + artifact input parameter through which the orchestrator can + configure the extermalIPs parameter of the K8s service or ingress + controller, or the pod network interface annotation, that the + extCpdData represents. + Note: The format of the Content strings is specific for each different + orchestration templating technology used (Helm, Teraform, etc.). + Currently only a format for use with Helm charts is suggested: + ":[.]^(0..N)[.]^(0..N)". + Whether the optional parts of the format are present depends on how the + parameter is declared in the helm chart. An example is: + "chartName:subChart1.subChart2.subChart3.Parent1.Parent2.Parent3.extIP". + required: false + type: list + entry_schema: + type: string + nad_names: + description: > + Specifies, for an extCpdData respesenting a secondary network interface, + the name(s) of the deployment artifact input parameter(s) through which + the orchestrator can provide the names of the network attachment + definitions (NADs) the orchestrator has created as base for the network + interface the extCpdData represents. + Note 1: When the extCpdData represent a networkRedundant/mated-pair of + sriov interfaces, there are references to 2 or 3 related NADs needed + to be passed, while for other interface types only one NAD reference + is needed to be passed. + Note 2: The format of the Content strings is specific for each different + orchestration templating technology used (Helm, Teraform, etc.). + Currently only a format for use with Helm charts is suggested: + ":[.]^(0..N)[.]^(0..N)". + Whether the optional parts of the format are present depends on how the + parameter is declared in the helm chart. An example is: + chartName:"subChart1.subChart2.subChart3.Parent1.Parent2.Parent3.nadName". + Note 3: A direct attached (passthrough) network interface, such as an sriov + interface, attaches to a network via only one of the two switch planes + in the infrastructure. + When using a direct attached network interface one therefore commonly in a + pod uses a mated pair of sriov network attachments, where each interface + attaches same network but via different switchplane. + The application uses the mated pair of network interfaces as a single + logical “swith-path-redundant” network interface – and this is represented + by a single extCpdData. + Also there is a case where a third “bond” attachment interface is used in + the pod, bonding the two direct interfaces so that the application do not + need to handle the redundancy issues – application just uses the bond interface. + In this case, all three attachments are together making up a logical + “switch-path-redundant” network interface represented by a single extCpdData. + When three NADs are used in the extCpdData the NAD implementing the bond attachment + interface is provided through the parameter indicated in the third place in + the nadNames attribute. + required: false + type: list + entry_schema: + type: string + nad_namespace: + description: > + Specifies, for an extCpdData respesenting a secondary network interface, + the name of the deployment artifact input parameter through which the orchestrator + can provide the namespace where the NetworkAttachmentDefinitions (NADs) are located. + Attribute may be omitted if the namespace is same as the application + namespace. + Note: The format of the Content strings is specific for each different + orchestration templating technology used (Helm, Teraform, etc.). + Currently only a format for use with Helm charts is suggested: + ":[.]^(0..N)[.]^(0..N)". + Whether the optional parts of the format are present depends on how the + parameter is declared in the helm chart. An example is: + "chartName:subChart1.subChart2.subChart3.Parent1.Parent2.Parent3.NameSpace". + required: false + type: string + +tosca.datatypes.asd.extCpdData: + version: 0.1 + derived_from: tosca.datatypes.Root + description: "Describes the datatype for external connection point definition data" + properties: + id: + description: "The identifier of this extCpdData" + required: true + type: string + description: + description: > + This property describes for a particular ExtCpd instance + what service it exposes. + required: true + type: string + virtual_link_requirement: + description: > + Refers in an abstract way to the network or multiple networks that + the ExtCpd shall be exposed on (ex: OAM, EndUser, backhaul, LI, etc) + required: true + type: string + network_interface_realization_requirements: + description: > + Details container implementation specific requirements on + the NetworkAttachmentDefinition + required: false + type: tosca.datatypes.asd.networkInterfaceRequirements + input_param_mappings: + description: > + Information on what helm chart input parameters that + are required to be configured for this extCpd + required: false + type: tosca.datatypes.asd.paramMappings + resource_mapping: + description: > + Kubernetes API resource name for the resource manifest for the service, + ingress controller or pod + required: false + type: string + +tosca.datatypes.asd.enhancedClusterCapabilities: + version: 0.1 + derived_from: tosca.datatypes.Root + description: "Describes the datatype for parameter mapping" + properties: + min_kernel_version: + description: > + Describes the minimal required Kernel version, e.g. 4.15.0. + Coded as displayed by linux command uname –r + required: true + type: string + required_kernel_modules: + description: > + Required kernel modules are coded as listed by linux lsmod command, + e.g. ip6_tables, cryptd, nf_nat etc. + required: false + type: list + entry_schema: + type: string + conflicting_kernel_modules: + description: > + Kernel modules, which must not be present in the target environment. + The kernel modules are coded as listed by linux lsmod command, + e.g., ip6_tables, cryptd, nf_nat etc. + Example: Linux kernel SCTP module, which would conflict with use of + proprietary user space SCTP stack provided by the application. + required: false + type: list + entry_schema: + type: string + required_custom_resources: + description: > + List the custom resource kinds required to be supported in the target + environment. The list shall include those custom resource kinds which + are not delivered with the application. + required: false + type: list + entry_schema: + type: tosca.datatypes.asd.customResourceRequirement + cluster_labels: + description: > + This attribute allows to associate arbitrary labels to clusters. + These can indicate special infrastructure capabilities (e.g., NW acceleration, + GPU compute, etc.). The intent of these labels is to serve as a set of + values that can help in application placement decisions. + clusterLabels follow the Kubernetes label key-value-nomenclature + (https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/). + It is recommended that labels follow a standardized meaning e.g. for node + features (https://kubernetes-sigs.github.io/node-feature-discovery/v0.9/get-started/features.html#table-of-contents). + Example: + ClusterLabels + - feature.node.kubernetes.io/cpu-cpuid.AESNI: true + required: false + type: list + entry_schema: + type: string + required_plugin: + description: a list of the name of the required K8s plugin + required: false + type: list + entry_schema: + type: tosca.datatypes.asd.requiredPlugin + +tosca.datatypes.asd.customResourceRequirement: + version: 0.1 + derived_from: tosca.datatypes.Root + description: > + kind: "Redis", apiVersion: "kubedb.com/v1alpha1" + properties: + kind: + description: "the name of the custom resource requirement" + type: string + required: true + api_version: + description: "the api version of the custom resource requirement" + type: string + required: true + +tosca.datatypes.asd.requiredPlugin: + version: 0.1 + derived_from: tosca.datatypes.Root + description: "the required K8s plugin" + properties: + name: + description: "the name of the required K8s plugin" + type: string + required: true + version: + description: "the version of the required K8s plugin" + type: string + required: true + +node_types: + tosca.nodes.asd: + derived_from: tosca.nodes.Root + description: "The ASD node type" + version: 0.1 + properties: + descriptor_id: + type: string # UUID + required: true + description: Identifier of this ASD. It is in UUID format as specified in RFC 4122 + descriptor_invariant_id: + type: string # UUID + required: true + description: > + Identifier of this descriptor in a version independent manner. This attribute + is invariant across versions of ASD. It is in UUID format as specified in RFC 4122 + descriptor_version: + type: string + required: true + description: Identifies the version of the ASD. + schema_version: + type: string + required: true + description: Identifies the Identifies the version of this ASD’s schema. + function_description: + type: string + required: false + description: Description of the application service described by this ASD. + provider: + type: string + required: true + description: Identifies the provider of the ASD. + application_name: + type: string + required: true + description: Name to identify the application service described by this ASD + application_version: + type: string + required: true + description: Identifies the version of the application service described by this ASD. + ext_cpds: + type: list + required: false + entry_schema: + type: tosca.datatypes.asd.extCpdData + description: > + Describes the externally exposed connection points of the application + service described by this ASD + enhanced_cluster_capabilities: + type: tosca.datatypes.asd.enhancedClusterCapabilities + required: false + description: > + A list of expected capabilities of the target Kubernetes cluster to aid + placement of the application service on a suitable cluster. + tosca.nodes.asdInNsd: + derived_from: tosca.nodes.nfv.VNF + description: "The generic ASD node types for NS requirements. Optional properties are not list here." + version: 0.1 + properties: + descriptor_id: + type: string # UUID + description: Identifier of an ASD. It is in UUID format as specified in RFC 4122 + required: true + descriptor_version: + type: string + description: Identifies the version of the ASD. + required: true + default: "" + provider: + type: string + description: Identifies the provider of the ASD + required: true + default: "" + product_name: + type: string + description: Please use the application_name property + required: true + default: "" + software_version: + type: string + description: Please use the application_version property + required: true + default: "" + flavour_id: + type: string + required: true + constraints: [ equal: "simple" ] + default: "simple" + flavour_description: + type: string + required: true + default: "" + vnfm_info: + type: list + required: true + entry_schema: + type: list + requirements: + - virtual_link: + capability: tosca.capabilities.nfv.VirtualLinkable + relationship: tosca.relationships.nfv.VirtualLinkableTo + occurrences: [ 0,0 ] + - virtual_links: + capability: tosca.capabilities.nfv.VirtualLinkable + relationship: tosca.relationships.nfv.VirtualLinkableTo + occurrences: [ 0,UNBOUNDED ] +artifact_types: +tosca.artifacts.asd.deploymentItem: + version: 0.1 + derived_from: tosca.artifacts.Root + description: "Describes the artifact type of asd deployment item" + file: "URI or path of the artifact" + properties: + item_id: + description: "The identifier of this asd deployment item" + required: true + type: string + artifact_type: + description: > + Specify artifact type. + required: true + type: string + constraints: + - valid_values: ["helm_chart", "helmfile", "crd", "terraform" ] + deployment_order: + description: > + Specifies the deployment stage that the DeploymentArtifact belongs to. + A lower value specifies that the DeploymentArtifact belongs to an earlier + deployment stage. When this value is omitted, the deployment order + will be decided by the orchestrator. + required: false + type: integer + lifecycle_parameters: + description: "list of parameters that can be overridden at deployment time " + required: false + type: list + entry_schema: + type: string diff --git a/rapp-manager-application/src/main/resources/resource-csar/Files/Acm/instantiation.json b/rapp-manager-application/src/main/resources/resource-csar/Files/Acm/instantiation.json new file mode 100755 index 0000000..c17f49b --- /dev/null +++ b/rapp-manager-application/src/main/resources/resource-csar/Files/Acm/instantiation.json @@ -0,0 +1,72 @@ +{ + "name": "RappInstance0", + "version": "1.0.1", + "compositionId": "COMPOSITIONID", + "description": "Demo automation composition instance 0", + "elements": { + "709c62b3-8918-41b9-a747-d21eb79c6c20": { + "id": "709c62b3-8918-41b9-a747-d21eb79c6c20", + "definition": { + "name": "onap.policy.clamp.ac.element.KserveAutomationCompositionElement", + "version": "1.2.3" + }, + "description": "Starter Automation Composition Element for the Demo", + "properties": { + "kserveInferenceEntities": [ + { + "kserveInferenceEntityId": { + "name": "entity1", + "version": "1.0.1" + }, + "name": "sklearn-iris", + "namespace": "rapps", + "payload": "{\"apiVersion\": \"serving.kserve.io/v1beta1\",\"kind\": \"InferenceService\",\"metadata\": {\"name\": \"sklearn-iris\"},\"spec\": {\"predictor\": {\"model\":{\"modelFormat\": {\"name\": \"sklearn\"},\"storageUri\": \"gs://kfserving-examples/models/sklearn/1.0/model\"}}}}" + } + ] + } + }, + "709c62b3-8918-41b9-a747-d21eb79c6c12": { + "id": "709c62b3-8918-41b9-a747-d21eb79c6c12", + "definition": { + "name": "onap.policy.clamp.ac.element.A1PMSAutomationCompositionElement", + "version": "1.2.3" + }, + "description": "Starter Automation Composition Element for the Demo", + "properties": { + "policyServiceEntities": [ + { + "a1PolicyServiceEntityId": { + "name": "entity1", + "version": "1.0.1" + }, + "clientId": "firstService", + "callbackUrl": "http:\\localhost" + } + ] + } + }, + "709c62b3-8918-41b9-a747-d21eb79c6c21": { + "id": "709c62b3-8918-41b9-a747-d21eb79c6c21", + "definition": { + "name": "onap.policy.clamp.ac.element.K8S_StarterAutomationCompositionElement", + "version": "1.2.3" + }, + "description": "Starter Automation Composition Element for the Demo", + "properties": { + "chart": { + "chartId": { + "name": "ransliceassurance", + "version": "1.0.0" + }, + "namespace": "nonrtric", + "releaseName": "ransliceassurance", + "podName": "ransliceassurance", + "repository": { + "repoName": "local", + "address": "http://10.101.2.254:8879/charts" + } + } + } + } + } +} \ No newline at end of file diff --git a/rapp-manager-application/src/main/resources/resource-csar/Files/ChangeLog.txt b/rapp-manager-application/src/main/resources/resource-csar/Files/ChangeLog.txt new file mode 100755 index 0000000..bdcfb02 --- /dev/null +++ b/rapp-manager-application/src/main/resources/resource-csar/Files/ChangeLog.txt @@ -0,0 +1 @@ +This is the first version of My ASD node. \ No newline at end of file diff --git a/rapp-manager-application/src/main/resources/resource-csar/Files/Events/MyASD_v1.yaml b/rapp-manager-application/src/main/resources/resource-csar/Files/Events/MyASD_v1.yaml new file mode 100755 index 0000000..90144cf --- /dev/null +++ b/rapp-manager-application/src/main/resources/resource-csar/Files/Events/MyASD_v1.yaml @@ -0,0 +1,213 @@ +--- +event: + presence: required + structure: + commonEventHeader: + presence: required + structure: + domain: {presence: required, value: notification} + eventName: {presence: required, value: Noti_MyPnf-Acme_FileReady} + priority: {presence: required, value: Normal} + eventId: {presence: required} + reportingEntityId: {presence: required} + reportingEntityName: {presence: required} + sequence: {presence: required, value: 0} + sourceId: {presence: required} + sourceName: {presence: required} + version: {presence: required, value: 4.0.1} + vesEventListenerVersion: {presence: required, value: 7.0.1} + startEpochMicrosec: {presence: required} + lastEpochMicrosec: {presence: required} + notificationFields: + presence: required + structure: + changeIdentifier: {presence: required, value: PM_MEAS_FILES} + changeType: {presence: required, value: fileReady} + notificationFieldsVersion: {presence: required, value: 2.0} + arrayOfNamedHashMap: + presence: required + array: + - name: {presence: required} + hashMap: {presence: required, structure: { + keyValuePair: {presence: required, structure: {key: {presence: required, value: location}, value: {presence: required}}}, + keyValuePair: {presence: required, structure: {key: {presence: required, value: compression}, value: {presence: required, value: gzip}}}, + keyValuePair: {presence: required, structure: {key: {presence: required, value: fileFormatType}, value: {presence: required, value: org.3GPP.32.435}}}, + keyValuePair: {presence: required, structure: {key: {presence: required, value: fileFormatVersion}, value: {presence: required, value: V10}}}} + } +... +--- +event: + presence: required + structure: + commonEventHeader: + presence: required + structure: + domain: {presence: required, value: pnfRegistration} + eventId: {presence: required} + eventName: {presence: required, value: PnfReg_MyPnf-Acme_pnfRegistration} + lastEpochMicrosec: {presence: required} + priority: {presence: required, value: Normal} + reportingEntityName: {presence: required} + sequence: {presence: required, value: 0} + sourceName: {presence: required} + startEpochMicrosec: {presence: required} + timeZoneOffset: {presence: required} + version: {presence: required, value: 4.0.1} + vesEventListenerVersion: {presence: required, value: 7.0.1} + pnfRegistrationFields: + presence: required + structure: + modelNumber: {presence: required} + oamV4IpAddress: {presence: optional} + oamV6IpAddress: {presence: optional} + pnfRegistrationFieldsVersion: {presence: required, value: 2.0} + serialNumber: {presence: required} + softwareVersion: {presence: required} + unitFamily: {presence: required, value: BBU} + unitType: {presence: required} + vendorName: {presence: required, value: Acme} +... +--- +event: + presence: required + action: [ any, any, null, null, null ] + comment: " + ALARM NAME: CertMAutomaticEnrollmentFailed, + ALARM DESCRIPTION: ‘See alarm OPI x/1111-ABC 123 4567/1 Uen’, + ALARM EFFECT: 'See alarm OPI x/2222-ABC 123 4567/1 Uen', + MANAGED OBJECT CLASSES: NodeCredential, + EVENT TYPE: 'PROCESSINGERRORALARM', + PROBABLE CAUSE: 'ConfigurationOrCustomizationError', + PROPOSED REPAIR ACTIONS: 'See alarm OPI x/3333-ABC 123 4567/1 Uen', + CLEARING TYPE: Automatic + " + structure: + commonEventHeader: + presence: required + structure: + version: {presence: required, value: 4.0.1} + vesEventListenerVersion: {presence: required, value: 7.0.1} + domain: {presence: required, value: fault} + eventName: {presence: required, value: Fault_MyPnf-Acme_CertMAutomaticEnrollmentFailed} + eventId: {presence: required} + sequence: {presence: required} + priority: {presence: required, value: Normal} + reportingEntityName: {presence: required} + sourceName: {presence: required} + nfVendorName: {presence: required, value: Acme} + startEpochMicrosec: {presence: required} + lastEpochMicrosec: {presence: required} + timeZoneOffset: {presence: required} + faultFields: + presence: required + structure: + faultFieldsVersion: {presence: required, value: 4.0} + alarmCondition: {presence: required, value: 'CertMAutomaticEnrollmentFailed'} + eventCategory: {presence: required, value: 'PROCESSINGERRORALARM'} + eventSourceType: {presence: required} + specificProblem: {presence: required, value: 'Certificate Management Automatic Enrollment Failed'} + eventSeverity: {presence: required} + vfStatus: {presence: required, value: Active} + alarmAdditionalInformation: {presence: required, structure: { + keyValuePair: {presence: required, structure: {key: {presence: required, value: source}, value: {presence: required}}}, + keyValuePair: {presence: required, structure: {key: {presence: required, value: probableCause}, value: {presence: required, value: 'ConfigurationOrCustomizationError'}}}, + keyValuePair: {presence: required, structure: {key: {presence: required, value: additionalText}, value: {presence: optional}}}, + keyValuePair: {presence: required, structure: {key: {presence: required, value: additionalInfo}, value: {presence: optional}}}} + } +... +--- +event: + presence: required + action: [ any, any, null, null, null ] + comment: " + ALARM NAME: PowerLoss, + ALARM DESCRIPTION: 'PNF is losing power', + ALARM EFFECT: 'PNF will shutdown if battery is drained', + MANAGED OBJECT CLASSES: 'BatteryBackup;BatteryUnit', + EVENT TYPE: 'EQUIPMENTALARM', + PROBABLE CAUSE: 'Power Supply Failure', + PROPOSED REPAIR ACTIONS: 'Repair Power Supply', + CLEARING TYPE: Automatic + " + structure: + commonEventHeader: + presence: required + structure: + version: {presence: required, value: 4.0.1} + vesEventListenerVersion: {presence: required, value: 7.0.1} + domain: {presence: required, value: fault} + eventName: {presence: required, value: Fault_MyPnf-Acme_PowerLoss} + eventId: {presence: required} + sequence: {presence: required} + priority: {presence: required, value: Normal} + reportingEntityName: {presence: required} + sourceName: {presence: required} + nfVendorName: {presence: required, value: Acme} + startEpochMicrosec: {presence: required} + lastEpochMicrosec: {presence: required} + timeZoneOffset: {presence: required} + faultFields: + presence: required + structure: + faultFieldsVersion: {presence: required, value: 4.0} + alarmCondition: {presence: required, value: 'PowerLoss'} + eventCategory: {presence: required, value: 'EQUIPMENTALARM'} + eventSourceType: {presence: required} + specificProblem: {presence: required, value: 'Power Supply Failure'} + eventSeverity: {presence: required} + vfStatus: {presence: required, value: Active} + alarmAdditionalInformation: {presence: required, structure: { + keyValuePair: {presence: required, structure: {key: {presence: required, value: source}, value: {presence: required}}}, + keyValuePair: {presence: required, structure: {key: {presence: required, value: probableCause}, value: {presence: required, value: 'Power Supply Failure'}}}, + keyValuePair: {presence: required, structure: {key: {presence: required, value: additionalText}, value: {presence: optional}}}, + keyValuePair: {presence: required, structure: {key: {presence: required, value: additionalInfo}, value: {presence: optional}}}} + } +... +--- +event: + presence: required + action: [ any, any, null, null, null ] + comment: " + ALARM NAME: LogHasReachedFullCapacity, + ALARM DESCRIPTION: 'Log Has Reached Full Capacity', + ALARM EFFECT: 'See alarm OPI x/2223-ABC 123 4567/1 Uen', + MANAGED OBJECT CLASSES: Log, + EVENT TYPE: 'PROCESSINGERRORALARM', + PROBABLE CAUSE: 'FileError', + PROPOSED REPAIR ACTIONS: 'See alarm OPI x/3334-ABC 123 4567/1 Uen', + CLEARING TYPE: Automatic + " + structure: + commonEventHeader: + presence: required + structure: + version: {presence: required, value: 4.0.1} + vesEventListenerVersion: {presence: required, value: 7.0.1} + domain: {presence: required, value: fault} + eventName: {presence: required, value: Fault_MyPnf-Acme_LogHasReachedFullCapacity} + eventId: {presence: required} + sequence: {presence: required} + priority: {presence: required, value: Normal} + reportingEntityName: {presence: required} + sourceName: {presence: required} + nfVendorName: {presence: required, value: Acme} + startEpochMicrosec: {presence: required} + lastEpochMicrosec: {presence: required} + timeZoneOffset: {presence: required} + faultFields: + presence: required + structure: + faultFieldsVersion: {presence: required, value: 4.0} + alarmCondition: {presence: required, value: 'LogHasReachedFullCapacity'} + eventCategory: {presence: required, value: 'PROCESSINGERRORALARM'} + eventSourceType: {presence: required} + specificProblem: {presence: required, value: 'Log Has Reached Full Capacity'} + eventSeverity: {presence: required} + vfStatus: {presence: required, value: Active} + alarmAdditionalInformation: {presence: required, structure: { + keyValuePair: {presence: required, structure: {key: {presence: required, value: source},value: {presence: required}}}, + keyValuePair: {presence: required, structure: {key: {presence: required, value: probableCause},value: {presence: required, value: 'FileError'}}}, + keyValuePair: {presence: required, structure: {key: {presence: required, value: additionalText},value: {presence: optional}}}, + keyValuePair: {presence: required, structure: {key: {presence: required, value: additionalInfo},value: {presence: optional}}}} + } +... \ No newline at end of file diff --git a/rapp-manager-application/src/main/resources/resource-csar/Files/Guides/user_guide.txt b/rapp-manager-application/src/main/resources/resource-csar/Files/Guides/user_guide.txt new file mode 100755 index 0000000..6792e54 --- /dev/null +++ b/rapp-manager-application/src/main/resources/resource-csar/Files/Guides/user_guide.txt @@ -0,0 +1 @@ +This is a sample user guide file. \ No newline at end of file diff --git a/rapp-manager-application/src/main/resources/resource-csar/Files/Measurements/PM_Dictionary.yaml b/rapp-manager-application/src/main/resources/resource-csar/Files/Measurements/PM_Dictionary.yaml new file mode 100755 index 0000000..858951f --- /dev/null +++ b/rapp-manager-application/src/main/resources/resource-csar/Files/Measurements/PM_Dictionary.yaml @@ -0,0 +1,186 @@ +pmDictionary: + presence: required + structure: + pmDictionaryHeader: + presence: required + structure: + pmDefVsn: { presence: required, comment: "Version of the PM Dictionary. Version is vendor defined."} + pmDefSchemaVsn: { presence: required, comment: "Version of the PM Dictionary Schema used for this PM Dictionary. Schema versions are specified in the VES Specifications."} + nfType: { presence: required, comment: "NF type to whom this PM Dictionary applies. nfType is vendor defined and should match the string used in eventName."} + vendor: { presence: required, value: Acme, comment: "Vendor of the NF type to whom this PM Dictionary applies."} + pmDictionaryMeasurements: + presence: required + array: + - measType: { presence: required, comment: "Measurement name used in PM file, in 3GPP format where specified, else vendor defined. Names for 3GPP-defined 4G measurements are specified in 3GPP TS 32.425 item e). Names for 3GPP-defined 5G measurements are specified in 3GPP TS 28.552 item e). Vendor defined names are preceded with VS."} + measDescription: { presence: required, comment: "Text description of the purpose of the measurement, what information does the measurement provide. Descriptions for 3GPP-defined 4G measurements are specified in 3GPP TS 32.425 item a). Descriptions for 3GPP-defined 5G measurements are specified in 3GPP TS 28.552 item a). Vendors are free to augment or modify the 3GPP-provided descriptions to more accurately describe their measurements as needed."} + measCondition: { presence: required, comment: "Text description of the condition that causes the measurement to be updated. Conditions for 3GPP-defined 4G measurements are specified in 3GPP TS 32.425 item c). Conditions for 3GPP-defined 5G measurements are specified in 3GPP TS 28.552 item c). Vendors are free to augment or modify the 3GPP-provided conditions to more accurately describe their measurements as needed."} + measResultType: { presence: required, value: [integer], comment: "Data type of the measurement result. Result data types for 3GPP-defined 4G measurements are specified in 3GPP TS 32.425 item d). Result data types for 3GPP-defined 5G measurements are specified in 3GPP TS 28.552 item d). The measResultType values supported by a vendor are specified in the PM Dictionary YAML using the 'value' attribute and may include vendor-defined data types not specified by 3GPP; for example boolean."} + measResultRange: { presence: optional, comment: "Range for the measurement result. The range is specified as a comma separated list of discrete values or a range of values specified as minimum value-maximum value with no spaces. Result ranges for 3GPP-defined 4G measurements are specified in 3GPP TS 32.425 item d) if applicable. Result ranges for 3GPP-defined 5G measurements are specified in 3GPP TS 28.552 item d) if applicable. "} + measResultUnits: { presence: required, value: [seconds, minutes, nanoseconds, microseconds, kbps], comment: "Unit of measure for the result; e.g. milliseconds, bytes, kilobytes, packets, number. Unit of measure for 3GPP-defined 4G measurements are specified in 3GPP TS 32.425 item d) if applicable. Unit of measure for 3GPP-defined 5G measurements are specified in 3GPP TS 28.552 item d) if applicable. The measResultsUnits values supported by a vendor are specified in the PM Dictionary YAML using the 'value' attribute and may include vendor-defined units of measure not specified by 3GPP; for example ethernet frames."} + measObjClass: { presence: required, value: [NRCellCU, NRCellDU, NRBTS, IPNO, ETHIF], comment: "Measurement Object Class. Object classes for 3GPP-defined 4G measurements are specified in 3GPP TS 32.425 item f). Object classes for 3GPP-defined 5G measurements are specified in 3GPP TS 28.552 item f). The measObjClass values supported by a vendor are specified in the PM Dictionary YAML using the “value” attribute and may include vendor-defined objects not specified by 3GPP; for example IPSEC."} + measCollectionMethod: { presence: required, value: [CC, GUAGE, DER, SI], comment: "Collection Method for the measurement. 3GPP-defined collection methods are CC, SI, DER and Gauge. Collection Methods for 3GPP-defined 4G measurements are specified in 3GPP TS 32.425 item b). Collection Methods for 3GPP-defined 5G measurements are specified in 3GPP TS 28.552 item c). The measCollectionMethod values supported by a vendor are specified in the PM Dictionary YAML using the 'value' attribute and may include vendor-defined collection methods not specified by 3GPP; for example Average."} + measLastChange: { presence: required, comment: "PM Dictionary version the last time this measurement was changed, added or deleted."} + measChangeType: { presence: required, value: [added, modified, deleted], comment: "For the measLastChange, indicates the type of change made for this measurement. Valid values are added, modified or deleted. Deleted measurements may be kept in the PM Dictionary for one release or more or permanently for historical purposes, if desired."} + measInfoId: { presence: required, comment: "Name for a group of related measurements, in 3GPP format where specified, else vendor defined. Family names for 3GPP-defined 4G measurements are specified in 3GPP TS 32.425 Section 3.1. Family names for 3GPP-defined 5G measurements are specified in 3GPP TS 28.552 Section 3.4."} + measFamily: { presence: required, comment: "Abbreviation for a family of measurements, in 3GPP format where specified, else vendor defined. Family name abbreviations for 3GPP-defined 4G measurements are specified in 3GPP TS 32.425 Section 3.1. Family name abbreviations for 3GPP-defined 5G measurements are specified in 3GPP TS 28.552 Section 3.4. "} + measAdditionalFields: { presence: required, comment: "Hashmap of vendor specific PM Dictionary fields in key value pair format.", structure: { + keyValuePair: { presence: required, structure: { key: { presence: required, value: measurementStatus, comment: "Contains the status of the measurement."}, value: { presence: required, value: [USED, DEPRECATED, OBSOLETE, PRELIMINARY] }}}, + keyValuePair: { presence: required, structure: { key: { presence: required, value: initialValue, comment: "The initial value to which the Measurement Type is set at the beginning of a new granularity period."}, value: { presence: required }}}, + keyValuePair: { presence: required, structure: { key: { presence: required, value: acmeParameter1, comment: "Extra vendor specific parameter 1."}, value: { presence: required }}}, + keyValuePair: { presence: optional, structure: { key: { presence: required, value: acmeParameter2, comment: "Extra vendor specific parameter 2."}, value: { presence: required, value: [true, false] }}}, + keyValuePair: { presence: optional, structure: { key: { presence: required, value: acmeParameter3, comment: "Extra vendor specific parameter 3."}, value: { presence: required }}}} + } +--- +pmDictionary: + pmDictionaryHeader: + pmDefVsn: AcmeNumber.1.0 + pmDefSchemaVsn: 1.0 + nfType: myPnf + vendor: Acme + pmDictionaryMeasurements: + + - measType: DRB.UEThpDl + measDescription: Average DL UE throughput in gNB + measCondition: See 3GPP TS 28.552 + measResultType: integer + measResultRange: 0-4294967295 + measResultUnits: kbps + measObjClass: NRCellDU + measCollectionMethod: DER + measLastChange: 1.0 + measChangeType: added + measInfoId: "Data Radio Bearer" + measFamily: DRB + measAdditionalFields: { + "measurementStatus": "USED", + "initialValue": 0, + "acmeParameter1": 0, + "acmeParameter2": true, + "acmeParameter3": "acmeParameterValue3"} + + - measType: VS.ifInDiscards + measDescription: The number of inbound packets which were chosen to be discarded + measCondition: The number of inbound packets which were chosen to be + discarded even though no errors had been detected to prevent + their being deliverable to a higher-layer protocol. One + possible reason for discarding such a packet could be to + free up buffer space. + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime. + measResultType: integer + measResultRange: 0-4294967295 + measResultUnits: number + measObjClass: EthernetPort + measCollectionMethod: CC + measLastChange: 1.0 + measChangeType: added + measInfoId: "IP Management" + measFamily: IP + measAdditionalFields: { + "measurementStatus": "USED", + "initialValue": 0, + "acmeParameter1": 0, + "acmeParameter2": true, + "acmeParameter3": "acmeParameterValue3"} + + - measType: VS.ifInErrors + measDescription: Number of inbound packets that contained errors + measCondition: For packet-oriented interfaces, the number of inbound + packets that contained errors preventing them from being + deliverable to a higher-layer protocol. For character- + oriented or fixed-length interfaces, the number of inbound + transmission units that contained errors preventing them + from being deliverable to a higher-layer protocol. + measResultType: integer + measResultRange: 0-4294967295 + measResultUnits: number + measObjClass: EthernetPort + measCollectionMethod: Gauge + measLastChange: 1.0 + measChangeType: added + measInfoId: "IP Management" + measFamily: IP + measAdditionalFields: { + "measurementStatus": "USED", + "initialValue": 0, + "acmeParameter1": 0, + "acmeParameter3": "acmeParameterValue3"} + + - measType: VS.ifInUnknownProtos + measDescription: Number of inbound packets received via an unknown or usupported protocol + measCondition: For packet-oriented interfaces, the number of packets + received via the interface which were discarded because of + an unknown or unsupported protocol. For character-oriented + or fixed-length interfaces that support protocol + multiplexing the number of transmission units received via + the interface which were discarded because of an unknown or + unsupported protocol. For any interface that does not + support protocol multiplexing, this counter will always be + 0. + measResultType: integer + measResultRange: 0-4294967295 + measResultUnits: number + measObjClass: EthernetPort + measCollectionMethod: CC + measLastChange: 1.0 + measChangeType: added + measInfoId: "IP Management" + measFamily: IP + measAdditionalFields: { + "measurementStatus": "USED", + "initialValue": 0, + "acmeParameter1": 0, + "acmeParameter2": true} + + - measType: VS.ifHCInBroadcastPkts + measDescription: Number of the broadcasted inbound packets delivered to the higher (sub-)layer + measCondition: The number of packets, delivered by this sub-layer to a + higher (sub-)layer, which were addressed to a broadcast + address at this sub-layer. This object is a 64-bit version + of ifInBroadcastPkts. + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime. + measResultType: integer + measResultRange: 0-4294967295 + measResultUnits: number + measObjClass: EthernetPort + measCollectionMethod: CC + measLastChange: 1.0 + measChangeType: added + measInfoId: "IP Management" + measFamily: IP + measAdditionalFields: { + "measurementStatus": "USED", + "initialValue": 0, + "acmeParameter1": 0} + + - measType: VS.ifHCOutBroadcastPkts + measDescription: Number of the broadcasted outsbound packets delivered to the higher (sub-)layer + measCondition: The total number of packets that higher-level protocols + requested be transmitted, and which were addressed to a + broadcast address at this sub-layer, including those that + were discarded or not sent. This object is a 64-bit version + of ifOutBroadcastPkts. + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime. + measResultType: integer + measResultRange: 0-4294967295 + measResultUnits: number + measObjClass: EthernetPort + measCollectionMethod: CC + measLastChange: 1.0 + measChangeType: added + measInfoId: "IP Management" + measFamily: IP + measAdditionalFields: { + "measurementStatus": "USED", + "initialValue": 0, + "acmeParameter1": 0, + "acmeParameter2": true, + "acmeParameter3": "acmeParameterValue3"} diff --git a/rapp-manager-application/src/main/resources/resource-csar/Files/Scripts/my_script.sh b/rapp-manager-application/src/main/resources/resource-csar/Files/Scripts/my_script.sh new file mode 100755 index 0000000..79b3155 --- /dev/null +++ b/rapp-manager-application/src/main/resources/resource-csar/Files/Scripts/my_script.sh @@ -0,0 +1,2 @@ +#!/bin/bash +echo "I'm simply an example script file in the package that doesn't do anything!" \ No newline at end of file diff --git a/rapp-manager-application/src/main/resources/resource-csar/Files/Sme/invoker.json b/rapp-manager-application/src/main/resources/resource-csar/Files/Sme/invoker.json new file mode 100755 index 0000000..141a860 --- /dev/null +++ b/rapp-manager-application/src/main/resources/resource-csar/Files/Sme/invoker.json @@ -0,0 +1,14 @@ +[ + { + "apiInvokerInformation": "rApp as invoker 1", + "apiList": [ + {} + ], + "notificationDestination": "http://invoker-app:8086/callback", + "onboardingInformation": { + "apiInvokerPublicKey": "{PUBLIC_KEY_INVOKER_1}", + "apiInvokerCertificate": "apiInvokerCertificate" + }, + "requestTestNotification": true + } +] \ No newline at end of file diff --git a/rapp-manager-application/src/main/resources/resource-csar/Files/Sme/provider-api.json b/rapp-manager-application/src/main/resources/resource-csar/Files/Sme/provider-api.json new file mode 100755 index 0000000..7c58c9c --- /dev/null +++ b/rapp-manager-application/src/main/resources/resource-csar/Files/Sme/provider-api.json @@ -0,0 +1,45 @@ +{ + "apiName": "Rapp API", + "description": "Example A API of rApp", + "aefProfiles": [ + { + "aefId": "rApp as AEF", + "description": "Example A rApp as AEF", + "versions": [ + { + "apiVersion": "v1", + "resources": [ + { + "resourceName": "exampleA", + "commType": "REQUEST_RESPONSE", + "uri": "/exampleA/subscription/subscription_id_1", + "operations": [ + "GET" + ] + } + ] + } + ], + "protocol": "HTTP_1_1", + "securityMethods": [ + "PSK" + ], + "interfaceDescriptions": [ + { + "ipv4Addr": "string", + "port": 65535, + "securityMethods": [ + "PKI" + ] + }, + { + "ipv4Addr": "string", + "port": 65535, + "securityMethods": [ + "PKI" + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/rapp-manager-application/src/main/resources/resource-csar/Files/Sme/provider-domain.json b/rapp-manager-application/src/main/resources/resource-csar/Files/Sme/provider-domain.json new file mode 100755 index 0000000..644819c --- /dev/null +++ b/rapp-manager-application/src/main/resources/resource-csar/Files/Sme/provider-domain.json @@ -0,0 +1,34 @@ +{ + "apiProvDomInfo": "Provider domain", + "apiProvFuncs": [ + { + "apiProvFuncInfo": "rApp as APF", + "apiProvFuncRole": "APF", + "regInfo": { + "apiProvPubKey": "APF-PublicKey" + } + }, + { + "apiProvFuncInfo": "rApp as AEF", + "apiProvFuncRole": "AEF", + "regInfo": { + "apiProvPubKey": "AEF-PublicKey" + } + }, + { + "apiProvFuncInfo": "rApp as AMF", + "apiProvFuncRole": "AMF", + "regInfo": { + "apiProvPubKey": "AMF-PublicKey" + } + }, + { + "apiProvFuncInfo": "Gateway as entrypoint AEF", + "apiProvFuncRole": "AEF", + "regInfo": { + "apiProvPubKey": "AEF-Gateway-PublicKey" + } + } + ], + "regSec": "PSK" +} \ No newline at end of file diff --git a/rapp-manager-application/src/main/resources/resource-csar/Files/Yang_module/mynetconf.yang b/rapp-manager-application/src/main/resources/resource-csar/Files/Yang_module/mynetconf.yang new file mode 100755 index 0000000..56501e8 --- /dev/null +++ b/rapp-manager-application/src/main/resources/resource-csar/Files/Yang_module/mynetconf.yang @@ -0,0 +1,26 @@ +module mynetconf { + yang-version 1.1; + namespace "urn:mynetconf:test"; + + prefix nft; + + organization "mynetconf"; + contact "my netconf address"; + description "yang model for mynetconf"; + revision "2019-03-01"{ + description "initial version"; + } + + container netconflist{ + list netconf{ + key netconf-id; + leaf netconf-id{ + type uint16; + } + leaf netconf-param { + type uint32; + } + } + + } +} diff --git a/rapp-manager-application/src/main/resources/resource-csar/Files/rapp1/rapp.zip b/rapp-manager-application/src/main/resources/resource-csar/Files/rapp1/rapp.zip new file mode 100755 index 0000000000000000000000000000000000000000..640976531c6b21b8c835524b53d418825bf52481 GIT binary patch literal 281 zcmWIWW@Zs#U|`^2U~@GLxx7!H0U3ft>=w%-@Y?9w%f2cB!U~XO)O> zVQf^sa6-%JpDNZ28!qW;R$Ir+zNwviHB9>F;j;%5zx_X19-Ftcf+@h8kx7IBxBG!! dU|?iW08v1I!#4rmtZX1@Mj&(r()&Oh1_1qxUsnJC literal 0 HcmV?d00001 diff --git a/rapp-manager-application/src/main/resources/resource-csar/TOSCA-Metadata/TOSCA.meta b/rapp-manager-application/src/main/resources/resource-csar/TOSCA-Metadata/TOSCA.meta new file mode 100755 index 0000000..3325e34 --- /dev/null +++ b/rapp-manager-application/src/main/resources/resource-csar/TOSCA-Metadata/TOSCA.meta @@ -0,0 +1,5 @@ +TOSCA-Meta-File-Version: 1.0 +CSAR-Version: 1.0 +Created-By: Ericsson (Zu Qiang 2021-10-21) +Entry-Definitions: Definitions/asd.yaml +ETSI-Entry-Manifest: asd.mf \ No newline at end of file diff --git a/rapp-manager-application/src/main/resources/resource-csar/asd.mf b/rapp-manager-application/src/main/resources/resource-csar/asd.mf new file mode 100755 index 0000000..39218a5 --- /dev/null +++ b/rapp-manager-application/src/main/resources/resource-csar/asd.mf @@ -0,0 +1,35 @@ +metadata: + application_name: Free5gc-APP + application_provider: MyCompany + release_date_time: 2021-10-21T11:30:00+05:00 + entry_definition_type: asd + +Source: asd.mf +Source: Definitions/asd.yaml +Source: Definitions/asd_types.yaml +Source: Files/ChangeLog.txt +Source: Files/Events/MyASD_v1.yaml +Source: Files/Guides/user_guide.txt +Source: Files/Measurements/PM_Dictionary.yaml +Source: Files/Scripts/my_script.sh +Source: Files/Yang_module/mynetconf.yang +Source: TOSCA-Metadata/TOSCA.meta +Source: Artifacts/Deployment/HELM/free5gc-1.1.3.tgz +Source: Artifacts/Deployment/HELM/ueransim-2.0.14.tgz +Source: Files/rapp1/rapp.zip +Source: Files/Acm/instantiation.yaml + +non_mano_artifact_sets: + onap_ves_events: + Source: Files/Events/MyASD_v1.yaml + onap_pm_dictionary: + Source: Files/Measurements/PM_Dictionary.yaml + onap_yang_modules: + Source: Files/Yang_module/mynetconf.yang + onap_others: + Source: Files/Guides/user_guide.txt + onap_vendor_artifacts: + vendor_name: Ericsson + artifact_type: rApp_name1 + source:Files/rapp1/rapp.zip + diff --git a/rapp-manager-application/src/test/java/com/oransc/rappmanager/rest/OnboardingControllerTest.java b/rapp-manager-application/src/test/java/com/oransc/rappmanager/rest/OnboardingControllerTest.java new file mode 100755 index 0000000..c64e999 --- /dev/null +++ b/rapp-manager-application/src/test/java/com/oransc/rappmanager/rest/OnboardingControllerTest.java @@ -0,0 +1,149 @@ +/*- + * ============LICENSE_START====================================================================== + * Copyright (C) 2023 Nordix Foundation. All rights reserved. + * =============================================================================================== + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS 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.oransc.rappmanager.rest; + +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.when; +import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; + +import com.oransc.rappmanager.acm.service.AcmDeployer; +import com.oransc.rappmanager.configuration.RappManagerConfiguration; +import com.oransc.rappmanager.models.RappState; +import com.oransc.rappmanager.sme.service.SmeDeployer; +import java.io.File; +import java.io.FileInputStream; +import java.util.UUID; +import org.apache.http.entity.ContentType; +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.boot.test.mock.mockito.MockBean; +import org.springframework.mock.web.MockMultipartFile; +import org.springframework.test.context.TestPropertySource; +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; + +@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) +@TestPropertySource(properties = "rappmanager.csarlocation=src/test/resources") +@AutoConfigureMockMvc +public class OnboardingControllerTest { + + @Autowired + private MockMvc mockMvc; + + @Autowired + RappManagerConfiguration rappManagerConfiguration; + + @MockBean + AcmDeployer acmDeployer; + + @MockBean + SmeDeployer smeDeployer; + + private final String validRappFile = "valid-rapp-package.csar"; + + private final String invalidRappFile = "invalid-rapp-package.csar"; + + @Test + void testOnboardCsarPackage() throws Exception { + String rappCsarPath = rappManagerConfiguration.getCsarLocation() + File.separator + validRappFile; + MockMultipartFile multipartFile = + new MockMultipartFile("file", validRappFile, ContentType.MULTIPART_FORM_DATA.getMimeType(), + new FileInputStream(rappCsarPath)); + mockMvc.perform( + MockMvcRequestBuilders.multipart("/rapps/{rapp_id}/onboard", UUID.randomUUID()).file(multipartFile)) + .andExpect(status().isAccepted()); + } + + @Test + void testOnboardCsarPackageFailure() throws Exception { + String rappCsarPath = rappManagerConfiguration.getCsarLocation() + File.separator + invalidRappFile; + MockMultipartFile multipartFile = + new MockMultipartFile("file", invalidRappFile, ContentType.MULTIPART_FORM_DATA.getMimeType(), + new FileInputStream(rappCsarPath)); + mockMvc.perform( + MockMvcRequestBuilders.multipart("/rapps/{rapp_id}/onboard", UUID.randomUUID()).file(multipartFile)) + .andExpect(status().isBadRequest()); + } + + @Test + void testGetRapp() throws Exception { + UUID rappId = UUID.randomUUID(); + this.onBoardRappCsar(rappId); + this.mockMvc.perform(MockMvcRequestBuilders.get("/rapps/{rapp_id}", rappId)).andExpect(status().isOk()) + .andExpect(jsonPath("$.name").value(rappId.toString())) + .andExpect(jsonPath("$.state").value(RappState.ONBOARDED.name())); + } + + @Test + void testGetInvalidRapp() throws Exception { + UUID rappId = UUID.randomUUID(); + this.mockMvc.perform(MockMvcRequestBuilders.get("/rapps/{rapp_id}", rappId)).andDo(print()) + .andExpect(status().isBadRequest()); + } + + @Test + void testRappDeploy() throws Exception { + UUID rappId = UUID.randomUUID(); + this.onBoardRappCsar(rappId); + when(acmDeployer.deployRapp(any())).thenReturn(true); + when(smeDeployer.deployRapp(any())).thenReturn(true); + mockMvc.perform(MockMvcRequestBuilders.multipart("/rapps/{rapp_id}/deploy", rappId)) + .andExpect(status().isAccepted()); + } + + @Test + void testInvalidRappDeploy() throws Exception { + UUID rappId = UUID.randomUUID(); + when(acmDeployer.deployRapp(any())).thenReturn(false); + mockMvc.perform(MockMvcRequestBuilders.multipart("/rapps/{rapp_id}/deploy", rappId)) + .andExpect(status().isInternalServerError()); + } + + @Test + void testRappUndeploy() throws Exception { + UUID rappId = UUID.randomUUID(); + this.onBoardRappCsar(rappId); + when(acmDeployer.undeployRapp(any())).thenReturn(true); + when(smeDeployer.undeployRapp(any())).thenReturn(true); + mockMvc.perform(MockMvcRequestBuilders.multipart("/rapps/{rapp_id}/undeploy", rappId)) + .andExpect(status().isAccepted()); + } + + @Test + void testInvalidRappUndeploy() throws Exception { + UUID rappId = UUID.randomUUID(); + when(acmDeployer.undeployRapp(any())).thenReturn(false); + mockMvc.perform(MockMvcRequestBuilders.multipart("/rapps/{rapp_id}/undeploy", rappId)) + .andExpect(status().isInternalServerError()); + } + + void onBoardRappCsar(UUID rappId) throws Exception { + String rappCsarPath = rappManagerConfiguration.getCsarLocation() + File.separator + validRappFile; + MockMultipartFile multipartFile = + new MockMultipartFile("file", validRappFile, ContentType.MULTIPART_FORM_DATA.getMimeType(), + new FileInputStream(rappCsarPath)); + mockMvc.perform(MockMvcRequestBuilders.multipart("/rapps/{rapp_id}/onboard", rappId).file(multipartFile)) + .andExpect(status().isAccepted()); + } + +} diff --git a/rapp-manager-application/src/test/java/com/oransc/rappmanager/service/AcmDeployerTest.java b/rapp-manager-application/src/test/java/com/oransc/rappmanager/service/AcmDeployerTest.java new file mode 100755 index 0000000..5682ca0 --- /dev/null +++ b/rapp-manager-application/src/test/java/com/oransc/rappmanager/service/AcmDeployerTest.java @@ -0,0 +1,313 @@ +/*- + * ============LICENSE_START====================================================================== + * Copyright (C) 2023 Nordix Foundation. All rights reserved. + * =============================================================================================== + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS 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.oransc.rappmanager.service; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNull; +import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.never; +import static org.mockito.Mockito.times; +import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.when; +import static org.springframework.test.web.client.match.MockRestRequestMatchers.method; +import static org.springframework.test.web.client.match.MockRestRequestMatchers.requestTo; +import static org.springframework.test.web.client.response.MockRestResponseCreators.withStatus; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.oransc.rappmanager.acm.configuration.ACMConfiguration; +import com.oransc.rappmanager.acm.service.AcmDeployer; +import com.oransc.rappmanager.configuration.RappManagerConfiguration; +import com.oransc.rappmanager.models.Rapp; +import com.oransc.rappmanager.models.RappEvent; +import com.oransc.rappmanager.models.RappState; +import com.oransc.rappmanager.models.cache.RappCacheService; +import com.oransc.rappmanager.models.statemachine.RappStateMachine; +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.UUID; +import org.apache.http.entity.ContentType; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.TestInstance; +import org.onap.policy.clamp.models.acm.concepts.AutomationComposition; +import org.onap.policy.clamp.models.acm.concepts.DeployState; +import org.onap.policy.clamp.models.acm.concepts.LockState; +import org.onap.policy.clamp.models.acm.messages.rest.commissioning.CommissioningResponse; +import org.onap.policy.clamp.models.acm.messages.rest.commissioning.PrimeOrder; +import org.onap.policy.clamp.models.acm.messages.rest.instantiation.InstantiationResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.boot.test.mock.mockito.SpyBean; +import org.springframework.http.HttpMethod; +import org.springframework.http.HttpStatus; +import org.springframework.http.MediaType; +import org.springframework.mock.web.MockMultipartFile; +import org.springframework.test.context.TestPropertySource; +import org.springframework.test.web.client.ExpectedCount; +import org.springframework.test.web.client.MockRestServiceServer; +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.web.client.RestTemplate; + +@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) +@TestPropertySource(properties = "rappmanager.csarlocation=src/test/resources") +@TestInstance(TestInstance.Lifecycle.PER_CLASS) +@AutoConfigureMockMvc +public class AcmDeployerTest { + + MockRestServiceServer mockServer; + @SpyBean + AcmDeployer acmDeployer; + @Autowired + RestTemplate restTemplate; + @Autowired + ACMConfiguration acmConfiguration; + @Autowired + RappManagerConfiguration rappManagerConfiguration; + @Autowired + private MockMvc mockMvc; + @Autowired + RappCacheService rappCacheService; + @SpyBean + RappStateMachine rappStateMachine; + private final String validRappFile = "valid-rapp-package.csar"; + ObjectMapper objectMapper = new ObjectMapper(); + String URI_ACM_COMPOSITIONS, URI_ACM_COMPOSITION, URI_ACM_INSTANCES, URI_ACM_INSTANCE; + + @BeforeAll + void initACMURI() { + URI_ACM_COMPOSITIONS = acmConfiguration.getBaseUrl() + "compositions"; + URI_ACM_COMPOSITION = acmConfiguration.getBaseUrl() + "compositions/%s"; + URI_ACM_INSTANCES = acmConfiguration.getBaseUrl() + "compositions/%s/instances"; + URI_ACM_INSTANCE = acmConfiguration.getBaseUrl() + "compositions/%s/instances/%s"; + } + + + @BeforeEach + public void init() { + mockServer = MockRestServiceServer.createServer(restTemplate); + } + + @Test + void testCreateComposition() throws IOException { + String compositionPayload = Files.readString(Path.of(acmConfiguration.getCompositionDefinitionLocation())); + CommissioningResponse commissioningResponseExpected = new CommissioningResponse(); + commissioningResponseExpected.setCompositionId(UUID.randomUUID()); + mockServer.expect(ExpectedCount.once(), requestTo(URI_ACM_COMPOSITIONS)).andExpect(method(HttpMethod.POST)) + .andRespond(withStatus(HttpStatus.OK).contentType(MediaType.APPLICATION_JSON) + .body(objectMapper.writeValueAsString(commissioningResponseExpected))); + CommissioningResponse commissioningResponseActual = acmDeployer.createComposition(compositionPayload); + mockServer.verify(); + assertEquals(commissioningResponseActual.getCompositionId(), commissioningResponseExpected.getCompositionId()); + } + + @Test + void testCreateCompositionFailure() throws IOException { + String compositionPayload = Files.readString(Path.of(acmConfiguration.getCompositionDefinitionLocation())); + mockServer.expect(ExpectedCount.once(), requestTo(URI_ACM_COMPOSITIONS)).andExpect(method(HttpMethod.POST)) + .andRespond(withStatus(HttpStatus.BAD_GATEWAY)); + CommissioningResponse commissioningResponseActual = acmDeployer.createComposition(compositionPayload); + mockServer.verify(); + assertNull(commissioningResponseActual); + } + + @Test + void testCompositionPriming() { + UUID compositionId = UUID.randomUUID(); + mockServer.expect(ExpectedCount.once(), requestTo(String.format(URI_ACM_COMPOSITION, compositionId))) + .andExpect(method(HttpMethod.PUT)).andRespond(withStatus(HttpStatus.ACCEPTED)); + + acmDeployer.primeACMComposition(compositionId, PrimeOrder.PRIME); + mockServer.verify(); + } + + @Test + void testDeployRapp() throws Exception { + + UUID compositionId = UUID.randomUUID(); + when(acmDeployer.getCompositionId()).thenReturn(compositionId); + UUID rappId = UUID.randomUUID(); + UUID instanceId = UUID.randomUUID(); + Rapp rapp = Rapp.builder().name(rappId.toString()).packageName(validRappFile).compositionId(compositionId) + .packageLocation(rappManagerConfiguration.getCsarLocation()).state(RappState.ONBOARDED) + .build(); + onBoardRappCsar(rappId); + InstantiationResponse instantiationResponse = new InstantiationResponse(); + instantiationResponse.setInstanceId(instanceId); + mockServer.expect(ExpectedCount.once(), requestTo(String.format(URI_ACM_INSTANCES, compositionId))) + .andExpect(method(HttpMethod.POST)).andRespond( + withStatus(HttpStatus.ACCEPTED).contentType(MediaType.APPLICATION_JSON) + .body(objectMapper.writeValueAsString(instantiationResponse))); + + mockServer.expect(ExpectedCount.once(), + requestTo(acmConfiguration.getBaseUrl() + "compositions/" + compositionId + "/instances/" + instanceId)) + .andExpect(method(HttpMethod.PUT)).andRespond(withStatus(HttpStatus.ACCEPTED)); + + + boolean rappDeployStateActual = acmDeployer.deployRapp(rapp); + assertTrue(rappDeployStateActual); + mockServer.verify(); + } + + @Test + void testDeployRappFailure() throws Exception { + UUID compositionId = UUID.randomUUID(); + when(acmDeployer.getCompositionId()).thenReturn(compositionId); + UUID rappId = UUID.randomUUID(); + UUID instanceId = UUID.randomUUID(); + Rapp rapp = Rapp.builder().name(rappId.toString()).packageName(validRappFile).compositionId(compositionId) + .packageLocation(rappManagerConfiguration.getCsarLocation()).state(RappState.ONBOARDED) + .build(); + onBoardRappCsar(rappId); + InstantiationResponse instantiationResponse = new InstantiationResponse(); + instantiationResponse.setInstanceId(instanceId); + mockServer.expect(ExpectedCount.once(), requestTo(String.format(URI_ACM_INSTANCES, compositionId))) + .andExpect(method(HttpMethod.POST)).andRespond(withStatus(HttpStatus.BAD_GATEWAY)); + + boolean rappDeployStateActual = acmDeployer.deployRapp(rapp); + mockServer.verify(); + assertFalse(rappDeployStateActual); + } + + @Test + void testUndeployRapp() throws JsonProcessingException { + UUID compositionId = UUID.randomUUID(); + when(acmDeployer.getCompositionId()).thenReturn(compositionId); + UUID rappId = UUID.randomUUID(); + UUID instanceId = UUID.randomUUID(); + Rapp rapp = Rapp.builder().rappId(rappId).name(rappId.toString()).packageName(validRappFile) + .compositionId(compositionId).compositionInstanceId(instanceId).state(RappState.DEPLOYED) + .build(); + rappCacheService.putRapp(rapp); + rappStateMachine.onboardRapp(rappId); + + expectAcmGetInstanceToReturnDeployedState(compositionId, instanceId, DeployState.DEPLOYED, LockState.LOCKED, + ExpectedCount.once()); + + mockServer.expect(ExpectedCount.once(), requestTo(String.format(URI_ACM_INSTANCE, compositionId, instanceId))) + .andExpect(method(HttpMethod.PUT)).andRespond(withStatus(HttpStatus.ACCEPTED)); + + expectAcmGetInstanceToReturnDeployedState(compositionId, instanceId, DeployState.UNDEPLOYED, LockState.UNLOCKED, + ExpectedCount.once()); + + mockServer.expect(ExpectedCount.once(), requestTo(String.format(URI_ACM_INSTANCE, compositionId, instanceId))) + .andExpect(method(HttpMethod.DELETE)).andRespond(withStatus(HttpStatus.NO_CONTENT)); + + + boolean rappUndeployStateActual = acmDeployer.undeployRapp(rapp); + mockServer.verify(); + assertTrue(rappUndeployStateActual); + } + + @Test + void testUndeployRappFailure() throws JsonProcessingException { + UUID compositionId = UUID.randomUUID(); + when(acmDeployer.getCompositionId()).thenReturn(compositionId); + UUID rappId = UUID.randomUUID(); + UUID instanceId = UUID.randomUUID(); + Rapp rapp = Rapp.builder().name(rappId.toString()).packageName(validRappFile).compositionId(compositionId) + .compositionInstanceId(instanceId).state(RappState.DEPLOYED).build(); + rappCacheService.putRapp(rapp); + + expectAcmGetInstanceToReturnDeployedState(compositionId, instanceId, DeployState.DEPLOYED, LockState.LOCKED, + ExpectedCount.once()); + + mockServer.expect(ExpectedCount.once(), requestTo(String.format(URI_ACM_INSTANCE, compositionId, instanceId))) + .andExpect(method(HttpMethod.PUT)).andRespond(withStatus(HttpStatus.ACCEPTED)); + + expectAcmGetInstanceToReturnDeployedState(compositionId, instanceId, DeployState.UNDEPLOYING, + LockState.UNLOCKING, ExpectedCount.manyTimes()); + + boolean rappUndeployStateActual = acmDeployer.undeployRapp(rapp); + mockServer.verify(); + assertFalse(rappUndeployStateActual); + } + + @Test + void testSyncRappStatus() throws JsonProcessingException { + UUID compositionId = UUID.randomUUID(); + when(acmDeployer.getCompositionId()).thenReturn(compositionId); + UUID rappId = UUID.randomUUID(); + UUID instanceId = UUID.randomUUID(); + Rapp rapp = Rapp.builder().rappId(rappId).name(rappId.toString()).packageName(validRappFile) + .compositionId(compositionId).compositionInstanceId(instanceId).state(RappState.DEPLOYED) + .build(); + rappCacheService.putRapp(rapp); + rappStateMachine.onboardRapp(rappId); + + expectAcmGetInstanceToReturnDeployedState(compositionId, instanceId, DeployState.UNDEPLOYING, + LockState.UNLOCKING, ExpectedCount.once()); + + acmDeployer.syncRappStatus(rapp); + mockServer.verify(); + verify(rappStateMachine, times(1)).sendRappEvent(rapp, RappEvent.UNDEPLOYING); + } + + @Test + void testSyncRappStatusFailure() { + UUID compositionId = UUID.randomUUID(); + when(acmDeployer.getCompositionId()).thenReturn(compositionId); + UUID rappId = UUID.randomUUID(); + UUID instanceId = UUID.randomUUID(); + Rapp rapp = Rapp.builder().name(rappId.toString()).packageName(validRappFile).compositionId(compositionId) + .compositionInstanceId(instanceId).state(RappState.DEPLOYED).build(); + rappCacheService.putRapp(rapp); + + mockServer.expect(ExpectedCount.once(), requestTo(String.format(URI_ACM_INSTANCE, compositionId, instanceId))) + .andExpect(method(HttpMethod.GET)).andRespond(withStatus(HttpStatus.BAD_GATEWAY)); + + acmDeployer.syncRappStatus(rapp); + mockServer.verify(); + verify(rappStateMachine, never()).sendRappEvent(any(), any()); + } + + void expectAcmGetInstanceToReturnDeployedState(UUID compositionId, UUID instanceId, DeployState deployState, + LockState lockState, ExpectedCount expectedCount) throws JsonProcessingException { + AutomationComposition automationCompositionDeployed = new AutomationComposition(); + automationCompositionDeployed.setCompositionId(compositionId); + automationCompositionDeployed.setInstanceId(instanceId); + automationCompositionDeployed.setDeployState(deployState); + automationCompositionDeployed.setLockState(lockState); + + mockServer.expect(expectedCount, requestTo(String.format(URI_ACM_INSTANCE, compositionId, instanceId))) + .andExpect(method(HttpMethod.GET)).andRespond( + withStatus(HttpStatus.OK).contentType(MediaType.APPLICATION_JSON) + .body(objectMapper.writeValueAsString(automationCompositionDeployed))); + } + + void onBoardRappCsar(UUID rappId) throws Exception { + String rappCsarPath = rappManagerConfiguration.getCsarLocation() + File.separator + validRappFile; + MockMultipartFile multipartFile = + new MockMultipartFile("file", validRappFile, ContentType.MULTIPART_FORM_DATA.getMimeType(), + new FileInputStream(rappCsarPath)); + mockMvc.perform(MockMvcRequestBuilders.multipart("/rapps/{rapp_id}/onboard", rappId).file(multipartFile)) + .andExpect(status().isAccepted()); + } + + +} diff --git a/rapp-manager-application/src/test/java/com/oransc/rappmanager/service/RappCsarConfigurationHandlerTest.java b/rapp-manager-application/src/test/java/com/oransc/rappmanager/service/RappCsarConfigurationHandlerTest.java new file mode 100755 index 0000000..f92becb --- /dev/null +++ b/rapp-manager-application/src/test/java/com/oransc/rappmanager/service/RappCsarConfigurationHandlerTest.java @@ -0,0 +1,87 @@ +/*- + * ============LICENSE_START====================================================================== + * Copyright (C) 2023 Nordix Foundation. All rights reserved. + * =============================================================================================== + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS 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.oransc.rappmanager.service; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.oransc.rappmanager.configuration.RappManagerConfiguration; + +import com.oransc.rappmanager.models.Rapp; +import com.oransc.rappmanager.models.RappCsarConfigurationHandler; +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.util.UUID; +import org.apache.http.entity.ContentType; +import org.junit.jupiter.api.Test; +import org.onap.policy.clamp.models.acm.concepts.AutomationComposition; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.mock.web.MockMultipartFile; +import org.springframework.test.context.TestPropertySource; +import org.springframework.web.multipart.MultipartFile; + +@SpringBootTest +@TestPropertySource(properties = "rappmanager.csarlocation=src/test/resources") +public class RappCsarConfigurationHandlerTest { + + @Autowired + RappCsarConfigurationHandler rappCsarConfigurationHandler; + + @Autowired + RappManagerConfiguration rappManagerConfiguration; + + ObjectMapper objectMapper = new ObjectMapper(); + + + private final String validRappFile = "valid-rapp-package.csar"; + + private final String invalidRappFile = "invalid-rapp-package.csar"; + + @Test + void testCsarPackageValidationSuccess() throws IOException { + String rappCsarPath = rappManagerConfiguration.getCsarLocation() + File.separator + validRappFile; + MultipartFile multipartFile = + new MockMultipartFile(rappCsarPath, rappCsarPath, ContentType.MULTIPART_FORM_DATA.getMimeType(), + new FileInputStream(rappCsarPath)); + assertEquals(Boolean.TRUE, rappCsarConfigurationHandler.isValidRappPackage(multipartFile)); + } + + @Test + void testCsarPackageValidationFailure() throws IOException { + String rappCsarPath = rappManagerConfiguration.getCsarLocation() + File.separator + invalidRappFile; + MultipartFile multipartFile = + new MockMultipartFile(rappCsarPath, rappCsarPath, ContentType.MULTIPART_FORM_DATA.getMimeType(), + new FileInputStream(rappCsarPath)); + assertEquals(Boolean.FALSE, rappCsarConfigurationHandler.isValidRappPackage(multipartFile)); + } + + @Test + void testCsarInstantiationPayload() throws JsonProcessingException { + Rapp rapp = Rapp.builder().name("").packageName(validRappFile) + .packageLocation(rappManagerConfiguration.getCsarLocation()).build(); + UUID compositionId = UUID.randomUUID(); + AutomationComposition automationComposition = + objectMapper.readValue(rappCsarConfigurationHandler.getInstantiationPayload(rapp, compositionId), + AutomationComposition.class); + assertEquals(automationComposition.getCompositionId(), compositionId); + } +} diff --git a/rapp-manager-application/src/test/java/com/oransc/rappmanager/sme/service/SmeDeployerTest.java b/rapp-manager-application/src/test/java/com/oransc/rappmanager/sme/service/SmeDeployerTest.java new file mode 100755 index 0000000..b45d855 --- /dev/null +++ b/rapp-manager-application/src/test/java/com/oransc/rappmanager/sme/service/SmeDeployerTest.java @@ -0,0 +1,440 @@ +/*- + * ============LICENSE_START====================================================================== + * Copyright (C) 2023 Nordix Foundation. All rights reserved. + * =============================================================================================== + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS 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.oransc.rappmanager.sme.service; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNull; +import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.springframework.test.web.client.match.MockRestRequestMatchers.method; +import static org.springframework.test.web.client.match.MockRestRequestMatchers.requestTo; +import static org.springframework.test.web.client.response.MockRestResponseCreators.withStatus; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.oransc.rappmanager.configuration.RappManagerConfiguration; +import com.oransc.rappmanager.models.Rapp; +import com.oransc.rappmanager.models.RappState; +import com.oransc.rappmanager.models.cache.RappCacheService; +import com.oransc.rappmanager.models.statemachine.RappStateMachine; +import com.oransc.rappmanager.sme.configuration.SmeConfiguration; +import com.oransc.rappmanager.sme.invoker.data.APIInvokerEnrolmentDetails; +import com.oransc.rappmanager.sme.provider.data.APIProviderEnrolmentDetails; +import com.oransc.rappmanager.sme.provider.data.APIProviderFunctionDetails; +import com.oransc.rappmanager.sme.provider.data.ApiProviderFuncRole; +import com.oransc.rappmanager.sme.publishservice.data.AefProfile; +import com.oransc.rappmanager.sme.publishservice.data.ServiceAPIDescription; +import java.io.File; +import java.io.FileInputStream; +import java.util.List; +import java.util.Map; +import java.util.UUID; +import org.apache.http.entity.ContentType; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.TestInstance; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.boot.test.mock.mockito.SpyBean; +import org.springframework.http.HttpMethod; +import org.springframework.http.HttpStatus; +import org.springframework.http.MediaType; +import org.springframework.mock.web.MockMultipartFile; +import org.springframework.test.context.TestPropertySource; +import org.springframework.test.web.client.ExpectedCount; +import org.springframework.test.web.client.MockRestServiceServer; +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.web.client.RestTemplate; + +@SpringBootTest +@TestPropertySource(properties = "rappmanager.csarlocation=src/test/resources") +@TestInstance(TestInstance.Lifecycle.PER_CLASS) +@AutoConfigureMockMvc +public class SmeDeployerTest { + + MockRestServiceServer mockServer; + @SpyBean + SmeDeployer smeDeployer; + @Autowired + RestTemplate restTemplate; + @Autowired + SmeConfiguration smeConfiguration; + @Autowired + RappManagerConfiguration rappManagerConfiguration; + @Autowired + private MockMvc mockMvc; + @Autowired + RappCacheService rappCacheService; + @SpyBean + RappStateMachine rappStateMachine; + private final String validRappFile = "valid-rapp-package.csar"; + ObjectMapper objectMapper = new ObjectMapper(); + String URI_PROVIDER_REGISTRATIONS, URI_PROVIDER_REGISTRATION, URI_PUBLISH_APIS, URI_PUBLISH_API, URI_INVOKERS, + URI_INVOKER; + + @BeforeAll + void initSmeUri() { + URI_PROVIDER_REGISTRATIONS = + smeConfiguration.getBaseUrl() + smeConfiguration.getProviderBasePath() + "registrations"; + URI_PROVIDER_REGISTRATION = + smeConfiguration.getBaseUrl() + smeConfiguration.getProviderBasePath() + "registrations/%s"; + URI_PUBLISH_APIS = smeConfiguration.getBaseUrl() + smeConfiguration.getPublishApiBasePath() + "%s/service-apis"; + URI_PUBLISH_API = + smeConfiguration.getBaseUrl() + smeConfiguration.getPublishApiBasePath() + "%s/service-apis/%s"; + URI_INVOKERS = smeConfiguration.getBaseUrl() + smeConfiguration.getInvokerBasePath() + "onboardedInvokers"; + URI_INVOKER = smeConfiguration.getBaseUrl() + smeConfiguration.getInvokerBasePath() + "onboardedInvokers/%s"; + } + + @BeforeEach + public void init() { + mockServer = MockRestServiceServer.createServer(restTemplate); + } + + @Test + void testCreateAMF() throws JsonProcessingException { + String apiProvDomId = UUID.randomUUID().toString(); + APIProviderEnrolmentDetails apiProviderEnrolmentDetails = new APIProviderEnrolmentDetails(apiProvDomId); + mockServer.expect(ExpectedCount.once(), requestTo(URI_PROVIDER_REGISTRATIONS)) + .andExpect(method(HttpMethod.POST)).andRespond( + withStatus(HttpStatus.OK).contentType(MediaType.APPLICATION_JSON) + .body(objectMapper.writeValueAsString(apiProviderEnrolmentDetails))); + APIProviderEnrolmentDetails apiProviderEnrolmentResponse = smeDeployer.createAMF(); + mockServer.verify(); + assertEquals(apiProvDomId, apiProviderEnrolmentResponse.getApiProvDomId()); + } + + @Test + void testCreateAMFFailure() { + mockServer.expect(ExpectedCount.once(), requestTo(URI_PROVIDER_REGISTRATIONS)) + .andExpect(method(HttpMethod.POST)).andRespond(withStatus(HttpStatus.INTERNAL_SERVER_ERROR)); + APIProviderEnrolmentDetails apiProviderEnrolmentResponse = smeDeployer.createAMF(); + mockServer.verify(); + assertNull(apiProviderEnrolmentResponse); + } + + @Test + void testDeleteAMF() throws JsonProcessingException { + String apiProvDomId = UUID.randomUUID().toString(); + APIProviderEnrolmentDetails apiProviderEnrolmentDetails = new APIProviderEnrolmentDetails(apiProvDomId); + mockServer.expect(ExpectedCount.once(), requestTo(URI_PROVIDER_REGISTRATIONS)) + .andExpect(method(HttpMethod.POST)).andRespond( + withStatus(HttpStatus.OK).contentType(MediaType.APPLICATION_JSON) + .body(objectMapper.writeValueAsString(apiProviderEnrolmentDetails))); + mockServer.expect(ExpectedCount.once(), requestTo(String.format(URI_PROVIDER_REGISTRATION, apiProvDomId))) + .andExpect(method(HttpMethod.DELETE)).andRespond(withStatus(HttpStatus.NO_CONTENT)); + smeDeployer.createAMF(); + smeDeployer.deleteAMF(); + mockServer.verify(); + } + + @Test + void testCreateProviderDomain() throws Exception { + UUID rappId = UUID.randomUUID(); + Rapp rapp = Rapp.builder().rappId(rappId).name(rappId.toString()).packageName(validRappFile) + .packageLocation(rappManagerConfiguration.getCsarLocation()).state(RappState.ONBOARDED) + .build(); + onBoardRappCsar(rappId); + APIProviderEnrolmentDetails apiProviderEnrolmentDetails = getProviderDomainApiEnrollmentDetails(); + mockServer.expect(ExpectedCount.once(), requestTo(URI_PROVIDER_REGISTRATIONS)) + .andExpect(method(HttpMethod.POST)).andRespond( + withStatus(HttpStatus.OK).contentType(MediaType.APPLICATION_JSON) + .body(objectMapper.writeValueAsString(apiProviderEnrolmentDetails))); + boolean createProviderDomain = smeDeployer.createProviderDomain(rapp); + mockServer.verify(); + assertTrue(createProviderDomain); + } + + @Test + void testCreateProviderDomainFailure() throws Exception { + UUID rappId = UUID.randomUUID(); + Rapp rapp = Rapp.builder().rappId(rappId).name(rappId.toString()).packageName(validRappFile) + .packageLocation(rappManagerConfiguration.getCsarLocation()).state(RappState.ONBOARDED) + .build(); + onBoardRappCsar(rappId); + mockServer.expect(ExpectedCount.once(), requestTo(URI_PROVIDER_REGISTRATIONS)) + .andExpect(method(HttpMethod.POST)).andRespond(withStatus(HttpStatus.INTERNAL_SERVER_ERROR)); + boolean createProviderDomain = smeDeployer.createProviderDomain(rapp); + mockServer.verify(); + assertFalse(createProviderDomain); + } + + @Test + void testDeleteProviderFunc() { + UUID registrationId = UUID.randomUUID(); + mockServer.expect(ExpectedCount.once(), requestTo(String.format(URI_PROVIDER_REGISTRATION, registrationId))) + .andExpect(method(HttpMethod.DELETE)).andRespond(withStatus(HttpStatus.NO_CONTENT)); + smeDeployer.deleteProviderFunc(String.valueOf(registrationId)); + mockServer.verify(); + } + + @Test + void testCreatePublishApi() throws Exception { + UUID rappId = UUID.randomUUID(); + UUID apfId = UUID.randomUUID(); + Rapp rapp = Rapp.builder().rappId(rappId).name(rappId.toString()).packageName(validRappFile) + .packageLocation(rappManagerConfiguration.getCsarLocation()).state(RappState.ONBOARDED) + .smeApfId(String.valueOf(apfId)).build(); + onBoardRappCsar(rappId); + ServiceAPIDescription serviceAPIDescription = getServiceApiDescription(); + mockServer.expect(ExpectedCount.once(), requestTo(String.format(URI_PUBLISH_APIS, apfId))) + .andExpect(method(HttpMethod.POST)).andRespond( + withStatus(HttpStatus.OK).contentType(MediaType.APPLICATION_JSON) + .body(objectMapper.writeValueAsString(serviceAPIDescription))); + boolean publishApi = smeDeployer.createPublishApi(rapp); + mockServer.verify(); + assertTrue(publishApi); + } + + + @Test + void testCreatePublishApiFailure() throws Exception { + UUID rappId = UUID.randomUUID(); + UUID apfId = UUID.randomUUID(); + Rapp rapp = Rapp.builder().rappId(rappId).name(rappId.toString()).packageName(validRappFile) + .packageLocation(rappManagerConfiguration.getCsarLocation()).state(RappState.ONBOARDED) + .smeApfId(String.valueOf(apfId)).build(); + onBoardRappCsar(rappId); + mockServer.expect(ExpectedCount.once(), requestTo(String.format(URI_PUBLISH_APIS, apfId))) + .andExpect(method(HttpMethod.POST)).andRespond(withStatus(HttpStatus.INTERNAL_SERVER_ERROR)); + boolean publishApi = smeDeployer.createPublishApi(rapp); + mockServer.verify(); + assertFalse(publishApi); + } + + @Test + void testDeletePublishApi() { + String serviceApiId = String.valueOf(UUID.randomUUID()); + String apfId = String.valueOf(UUID.randomUUID()); + mockServer.expect(ExpectedCount.once(), requestTo(String.format(URI_PUBLISH_API, apfId, serviceApiId))) + .andExpect(method(HttpMethod.DELETE)).andRespond(withStatus(HttpStatus.NO_CONTENT)); + smeDeployer.deletePublishApi(serviceApiId, apfId); + mockServer.verify(); + } + + @Test + void testCreateInvoker() throws Exception { + UUID rappId = UUID.randomUUID(); + UUID apfId = UUID.randomUUID(); + Rapp rapp = Rapp.builder().rappId(rappId).name(rappId.toString()).packageName(validRappFile) + .packageLocation(rappManagerConfiguration.getCsarLocation()).state(RappState.ONBOARDED) + .smeApfId(String.valueOf(apfId)).build(); + onBoardRappCsar(rappId); + APIInvokerEnrolmentDetails apiInvokerEnrolmentDetails = getApiInvokerEnrollmentDetails(); + mockServer.expect(ExpectedCount.once(), requestTo(URI_INVOKERS)).andExpect(method(HttpMethod.POST)).andRespond( + withStatus(HttpStatus.OK).contentType(MediaType.APPLICATION_JSON) + .body(objectMapper.writeValueAsString(apiInvokerEnrolmentDetails))); + boolean createInvoker = smeDeployer.createInvoker(rapp); + mockServer.verify(); + assertTrue(createInvoker); + } + + @Test + void testCreateInvokerFailure() throws Exception { + UUID rappId = UUID.randomUUID(); + UUID apfId = UUID.randomUUID(); + Rapp rapp = Rapp.builder().rappId(rappId).name(rappId.toString()).packageName(validRappFile) + .packageLocation(rappManagerConfiguration.getCsarLocation()).state(RappState.ONBOARDED) + .smeApfId(String.valueOf(apfId)).build(); + onBoardRappCsar(rappId); + mockServer.expect(ExpectedCount.once(), requestTo(URI_INVOKERS)).andExpect(method(HttpMethod.POST)) + .andRespond(withStatus(HttpStatus.INTERNAL_SERVER_ERROR)); + boolean createInvoker = smeDeployer.createInvoker(rapp); + mockServer.verify(); + assertFalse(createInvoker); + } + + @Test + void testDeleteInvoker() { + String invokerId = String.valueOf(UUID.randomUUID()); + mockServer.expect(ExpectedCount.once(), requestTo(String.format(URI_INVOKER, invokerId))) + .andExpect(method(HttpMethod.DELETE)).andRespond(withStatus(HttpStatus.NO_CONTENT)); + smeDeployer.deleteInvoker(invokerId); + mockServer.verify(); + } + + @Test + void testDeployRapp() throws Exception { + UUID rappId = UUID.randomUUID(); + APIProviderEnrolmentDetails apiProviderEnrolmentDetails = getProviderDomainApiEnrollmentDetails(); + APIProviderFunctionDetails apfProviderFunctionDetails = apiProviderEnrolmentDetails.getApiProvFuncs().stream() + .filter(apiProviderFunctionDetails -> apiProviderFunctionDetails.getApiProvFuncRole() + .equals(ApiProviderFuncRole.APF)) + .findFirst().get(); + onBoardRappCsar(rappId); + Rapp rapp = rappCacheService.getRapp(String.valueOf(rappId)).get(); + mockServer.expect(ExpectedCount.once(), requestTo(URI_PROVIDER_REGISTRATIONS)) + .andExpect(method(HttpMethod.POST)).andRespond( + withStatus(HttpStatus.OK).contentType(MediaType.APPLICATION_JSON) + .body(objectMapper.writeValueAsString(apiProviderEnrolmentDetails))); + ServiceAPIDescription serviceAPIDescription = getServiceApiDescription(); + mockServer.expect(ExpectedCount.once(), + requestTo(String.format(URI_PUBLISH_APIS, apfProviderFunctionDetails.getApiProvFuncId()))) + .andExpect(method(HttpMethod.POST)).andRespond( + withStatus(HttpStatus.OK).contentType(MediaType.APPLICATION_JSON) + .body(objectMapper.writeValueAsString(serviceAPIDescription))); + APIInvokerEnrolmentDetails apiInvokerEnrolmentDetails = getApiInvokerEnrollmentDetails(); + mockServer.expect(ExpectedCount.once(), requestTo(URI_INVOKERS)).andExpect(method(HttpMethod.POST)).andRespond( + withStatus(HttpStatus.OK).contentType(MediaType.APPLICATION_JSON) + .body(objectMapper.writeValueAsString(apiInvokerEnrolmentDetails))); + boolean deployRapp = smeDeployer.deployRapp(rapp); + mockServer.verify(); + assertTrue(deployRapp); + } + + @Test + void testDeployRappFailure() throws Exception { + UUID rappId = UUID.randomUUID(); + APIProviderEnrolmentDetails apiProviderEnrolmentDetails = getProviderDomainApiEnrollmentDetails(); + APIProviderFunctionDetails apfProviderFunctionDetails = apiProviderEnrolmentDetails.getApiProvFuncs().stream() + .filter(apiProviderFunctionDetails -> apiProviderFunctionDetails.getApiProvFuncRole() + .equals(ApiProviderFuncRole.APF)) + .findFirst().get(); + onBoardRappCsar(rappId); + Rapp rapp = rappCacheService.getRapp(String.valueOf(rappId)).get(); + mockServer.expect(ExpectedCount.once(), requestTo(URI_PROVIDER_REGISTRATIONS)) + .andExpect(method(HttpMethod.POST)).andRespond( + withStatus(HttpStatus.OK).contentType(MediaType.APPLICATION_JSON) + .body(objectMapper.writeValueAsString(apiProviderEnrolmentDetails))); + ServiceAPIDescription serviceAPIDescription = getServiceApiDescription(); + mockServer.expect(ExpectedCount.once(), + requestTo(String.format(URI_PUBLISH_APIS, apfProviderFunctionDetails.getApiProvFuncId()))) + .andExpect(method(HttpMethod.POST)).andRespond( + withStatus(HttpStatus.OK).contentType(MediaType.APPLICATION_JSON) + .body(objectMapper.writeValueAsString(serviceAPIDescription))); + mockServer.expect(ExpectedCount.once(), requestTo(URI_INVOKERS)).andExpect(method(HttpMethod.POST)) + .andRespond(withStatus(HttpStatus.INTERNAL_SERVER_ERROR)); + boolean deployRapp = smeDeployer.deployRapp(rapp); + mockServer.verify(); + assertFalse(deployRapp); + } + + @Test + void testUndeployRapp() throws Exception { + UUID rappId = UUID.randomUUID(); + UUID apfId = UUID.randomUUID(); + List invokers = List.of(String.valueOf(UUID.randomUUID()), String.valueOf(UUID.randomUUID())); + List serviceApis = List.of(String.valueOf(UUID.randomUUID()), String.valueOf(UUID.randomUUID())); + Map providerFuncs = Map.of(String.valueOf(UUID.randomUUID()), String.valueOf(UUID.randomUUID()), + String.valueOf(UUID.randomUUID()), String.valueOf(UUID.randomUUID())); + Rapp rapp = Rapp.builder().rappId(rappId).name(rappId.toString()).packageName(validRappFile) + .packageLocation(rappManagerConfiguration.getCsarLocation()).state(RappState.ONBOARDED) + .smeApfId(String.valueOf(apfId)).smeInvokers(invokers).smeServiceApis(serviceApis) + .smeProviderFunctions(providerFuncs).build(); + onBoardRappCsar(rappId); + rapp.setRappId(rappCacheService.getRapp(String.valueOf(rappId)).get().getRappId()); + mockServer.expect(ExpectedCount.once(), requestTo(String.format(URI_INVOKER, invokers.get(0)))) + .andExpect(method(HttpMethod.DELETE)).andRespond(withStatus(HttpStatus.NO_CONTENT)); + mockServer.expect(ExpectedCount.once(), requestTo(String.format(URI_INVOKER, invokers.get(1)))) + .andExpect(method(HttpMethod.DELETE)).andRespond(withStatus(HttpStatus.NO_CONTENT)); + mockServer.expect(ExpectedCount.once(), requestTo(String.format(URI_PUBLISH_API, apfId, serviceApis.get(0)))) + .andExpect(method(HttpMethod.DELETE)).andRespond(withStatus(HttpStatus.NO_CONTENT)); + mockServer.expect(ExpectedCount.once(), requestTo(String.format(URI_PUBLISH_API, apfId, serviceApis.get(1)))) + .andExpect(method(HttpMethod.DELETE)).andRespond(withStatus(HttpStatus.NO_CONTENT)); + mockServer.expect(ExpectedCount.once(), + requestTo(String.format(URI_PROVIDER_REGISTRATION, providerFuncs.values().toArray()[0]))) + .andExpect(method(HttpMethod.DELETE)).andRespond(withStatus(HttpStatus.NO_CONTENT)); + mockServer.expect(ExpectedCount.once(), + requestTo(String.format(URI_PROVIDER_REGISTRATION, providerFuncs.values().toArray()[1]))) + .andExpect(method(HttpMethod.DELETE)).andRespond(withStatus(HttpStatus.NO_CONTENT)); + + boolean undeployRapp = smeDeployer.undeployRapp(rapp); + mockServer.verify(); + assertTrue(undeployRapp); + } + + @Test + void testUndeployRappFailure() throws Exception { + UUID rappId = UUID.randomUUID(); + UUID apfId = UUID.randomUUID(); + List invokers = List.of(String.valueOf(UUID.randomUUID()), String.valueOf(UUID.randomUUID())); + List serviceApis = List.of(String.valueOf(UUID.randomUUID()), String.valueOf(UUID.randomUUID())); + Map providerFuncs = Map.of(String.valueOf(UUID.randomUUID()), String.valueOf(UUID.randomUUID()), + String.valueOf(UUID.randomUUID()), String.valueOf(UUID.randomUUID())); + Rapp rapp = Rapp.builder().rappId(rappId).name(rappId.toString()).packageName(validRappFile) + .packageLocation(rappManagerConfiguration.getCsarLocation()).state(RappState.ONBOARDED) + .smeApfId(String.valueOf(apfId)).smeInvokers(invokers).smeServiceApis(serviceApis) + .smeProviderFunctions(providerFuncs).build(); + onBoardRappCsar(rappId); + mockServer.expect(ExpectedCount.once(), requestTo(String.format(URI_INVOKER, invokers.get(0)))) + .andExpect(method(HttpMethod.DELETE)).andRespond(withStatus(HttpStatus.NO_CONTENT)); + mockServer.expect(ExpectedCount.once(), requestTo(String.format(URI_INVOKER, invokers.get(1)))) + .andExpect(method(HttpMethod.DELETE)).andRespond(withStatus(HttpStatus.NO_CONTENT)); + mockServer.expect(ExpectedCount.once(), requestTo(String.format(URI_PUBLISH_API, apfId, serviceApis.get(0)))) + .andExpect(method(HttpMethod.DELETE)).andRespond(withStatus(HttpStatus.NO_CONTENT)); + mockServer.expect(ExpectedCount.once(), requestTo(String.format(URI_PUBLISH_API, apfId, serviceApis.get(1)))) + .andExpect(method(HttpMethod.DELETE)).andRespond(withStatus(HttpStatus.NO_CONTENT)); + mockServer.expect(ExpectedCount.once(), + requestTo(String.format(URI_PROVIDER_REGISTRATION, providerFuncs.values().toArray()[0]))) + .andExpect(method(HttpMethod.DELETE)).andRespond(withStatus(HttpStatus.NO_CONTENT)); + mockServer.expect(ExpectedCount.once(), + requestTo(String.format(URI_PROVIDER_REGISTRATION, providerFuncs.values().toArray()[1]))) + .andExpect(method(HttpMethod.DELETE)).andRespond(withStatus(HttpStatus.INTERNAL_SERVER_ERROR)); + + boolean undeployRapp = smeDeployer.undeployRapp(rapp); + mockServer.verify(); + assertFalse(undeployRapp); + } + + APIProviderEnrolmentDetails getProviderDomainApiEnrollmentDetails() { + APIProviderEnrolmentDetails apiProviderEnrolmentDetails = + new APIProviderEnrolmentDetails(UUID.randomUUID().toString()); + APIProviderFunctionDetails apiProviderFunctionDetailsAEF = new APIProviderFunctionDetails(); + apiProviderFunctionDetailsAEF.setApiProvFuncInfo("AEF"); + apiProviderFunctionDetailsAEF.setApiProvFuncRole(ApiProviderFuncRole.AEF); + apiProviderFunctionDetailsAEF.setApiProvFuncId(String.valueOf(UUID.randomUUID())); + APIProviderFunctionDetails apiProviderFunctionDetailsAPF = new APIProviderFunctionDetails(); + apiProviderFunctionDetailsAPF.setApiProvFuncInfo("APF"); + apiProviderFunctionDetailsAPF.setApiProvFuncRole(ApiProviderFuncRole.APF); + apiProviderFunctionDetailsAPF.setApiProvFuncId(String.valueOf(UUID.randomUUID())); + apiProviderEnrolmentDetails.setApiProvFuncs( + List.of(apiProviderFunctionDetailsAEF, apiProviderFunctionDetailsAPF)); + return apiProviderEnrolmentDetails; + } + + + ServiceAPIDescription getServiceApiDescription() { + ServiceAPIDescription serviceAPIDescription = new ServiceAPIDescription(); + AefProfile aefProfile = new AefProfile(); + aefProfile.setAefId(String.valueOf(UUID.randomUUID())); + serviceAPIDescription.setAefProfiles(List.of(aefProfile)); + return serviceAPIDescription; + } + + APIInvokerEnrolmentDetails getApiInvokerEnrollmentDetails() { + APIInvokerEnrolmentDetails apiInvokerEnrolmentDetails = new APIInvokerEnrolmentDetails(); + com.oransc.rappmanager.sme.invoker.data.ServiceAPIDescription serviceAPIDescription = + new com.oransc.rappmanager.sme.invoker.data.ServiceAPIDescription(); + serviceAPIDescription.setApiId(String.valueOf(UUID.randomUUID())); + apiInvokerEnrolmentDetails.setApiList(List.of(serviceAPIDescription)); + return apiInvokerEnrolmentDetails; + } + + void onBoardRappCsar(UUID rappId) throws Exception { + String rappCsarPath = rappManagerConfiguration.getCsarLocation() + File.separator + validRappFile; + MockMultipartFile multipartFile = + new MockMultipartFile("file", validRappFile, ContentType.MULTIPART_FORM_DATA.getMimeType(), + new FileInputStream(rappCsarPath)); + mockMvc.perform(MockMvcRequestBuilders.multipart("/rapps/{rapp_id}/onboard", rappId).file(multipartFile)) + .andExpect(status().isAccepted()); + } +} diff --git a/rapp-manager-application/src/test/java/com/oransc/rappmanager/statemachine/RappStateMachineTest.java b/rapp-manager-application/src/test/java/com/oransc/rappmanager/statemachine/RappStateMachineTest.java new file mode 100755 index 0000000..6deb839 --- /dev/null +++ b/rapp-manager-application/src/test/java/com/oransc/rappmanager/statemachine/RappStateMachineTest.java @@ -0,0 +1,166 @@ +/*- + * ============LICENSE_START====================================================================== + * Copyright (C) 2023 Nordix Foundation. All rights reserved. + * =============================================================================================== + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS 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.oransc.rappmanager.statemachine; + +import com.oransc.rappmanager.models.RappEvent; +import com.oransc.rappmanager.models.RappState; +import java.util.UUID; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.EnumSource; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.statemachine.StateMachine; +import org.springframework.statemachine.config.StateMachineFactory; +import org.springframework.statemachine.test.StateMachineTestPlan; +import org.springframework.statemachine.test.StateMachineTestPlanBuilder; + +@SpringBootTest +public class RappStateMachineTest { + + @Autowired + StateMachineFactory stateMachineFactory; + + StateMachine stateMachine; + + @BeforeEach + void getStateMachine() { + stateMachine = stateMachineFactory.getStateMachine(UUID.randomUUID()); + stateMachine.startReactively().subscribe(); + } + + @AfterEach + void stopStateMachine() { + stateMachine.stopReactively().subscribe(); + } + + @Test + void testOnboardedState() throws Exception { + StateMachineTestPlan plan = + StateMachineTestPlanBuilder.builder().stateMachine(stateMachine).step() + .expectState(RappState.ONBOARDED).and().build(); + plan.test(); + } + + @Test + void testDeployingState() throws Exception { + StateMachineTestPlan plan = + StateMachineTestPlanBuilder.builder().stateMachine(stateMachine).step() + .expectState(RappState.ONBOARDED).and().step().sendEvent(RappEvent.DEPLOYING) + .expectState(RappState.DEPLOYING).expectStateChanged(1).and().build(); + plan.test(); + } + + @ParameterizedTest + @EnumSource(value = RappEvent.class, names = {"ACMDEPLOYED", "SMEDEPLOYED"}) + void testIndividualDeployedState(RappEvent rappEvent) throws Exception { + StateMachineTestPlan plan = + StateMachineTestPlanBuilder.builder().stateMachine(stateMachine).step() + .expectState(RappState.ONBOARDED).and().step().sendEvent(RappEvent.DEPLOYING) + .expectState(RappState.DEPLOYING).expectStateChanged(1).and().step().sendEvent(rappEvent) + .expectState(RappState.DEPLOYING).and().build(); + plan.test(); + } + + @Test + void testDeployedState() throws Exception { + StateMachineTestPlan plan = + StateMachineTestPlanBuilder.builder().stateMachine(stateMachine).step() + .expectState(RappState.ONBOARDED).and().step().sendEvent(RappEvent.DEPLOYING) + .expectState(RappState.DEPLOYING).expectStateChanged(1).and().step() + .sendEvent(RappEvent.ACMDEPLOYED).expectState(RappState.DEPLOYING).and().step() + .sendEvent(RappEvent.SMEDEPLOYED).expectState(RappState.DEPLOYED).expectStateChanged(1).and() + .build(); + plan.test(); + } + + @Test + void testDeployFailedState() throws Exception { + StateMachineTestPlan plan = + StateMachineTestPlanBuilder.builder().stateMachine(stateMachine).step() + .expectState(RappState.ONBOARDED).and().step().sendEvent(RappEvent.DEPLOYING) + .expectState(RappState.DEPLOYING).expectStateChanged(1).and().step() + .sendEvent(RappEvent.ACMDEPLOYED).expectState(RappState.DEPLOYING).and().step() + .sendEvent(RappEvent.SMEDEPLOYFAILED).expectState(RappState.FAILED).expectStateChanged(1).and() + .build(); + plan.test(); + } + + @Test + void testUndeployingState() throws Exception { + StateMachineTestPlan plan = + StateMachineTestPlanBuilder.builder().stateMachine(stateMachine).step() + .expectState(RappState.ONBOARDED).and().step().sendEvent(RappEvent.DEPLOYING) + .expectState(RappState.DEPLOYING).expectStateChanged(1).and().step() + .sendEvent(RappEvent.ACMDEPLOYED).expectState(RappState.DEPLOYING).and().step() + .sendEvent(RappEvent.SMEDEPLOYED).expectState(RappState.DEPLOYED).expectStateChanged(1).and() + .step().sendEvent(RappEvent.UNDEPLOYING).expectState(RappState.UNDEPLOYING) + .expectStateChanged(1).and().build(); + plan.test(); + } + + @ParameterizedTest + @EnumSource(value = RappEvent.class, names = {"ACMUNDEPLOYED", "SMEUNDEPLOYED"}) + void testIndividualUndeployedState(RappEvent rappEvent) throws Exception { + StateMachineTestPlan plan = + StateMachineTestPlanBuilder.builder().stateMachine(stateMachine).step() + .expectState(RappState.ONBOARDED).and().step().sendEvent(RappEvent.DEPLOYING) + .expectState(RappState.DEPLOYING).expectStateChanged(1).and().step() + .sendEvent(RappEvent.ACMDEPLOYED).expectState(RappState.DEPLOYING).and().step() + .sendEvent(RappEvent.SMEDEPLOYED).expectState(RappState.DEPLOYED).expectStateChanged(1).and() + .step().sendEvent(RappEvent.UNDEPLOYING).expectState(RappState.UNDEPLOYING) + .expectStateChanged(1).and().step().sendEvent(rappEvent).expectState(RappState.UNDEPLOYING) + .and().build(); + plan.test(); + } + + @Test + void testUndeployedState() throws Exception { + StateMachineTestPlan plan = + StateMachineTestPlanBuilder.builder().stateMachine(stateMachine).step() + .expectState(RappState.ONBOARDED).and().step().sendEvent(RappEvent.DEPLOYING) + .expectState(RappState.DEPLOYING).expectStateChanged(1).and().step() + .sendEvent(RappEvent.ACMDEPLOYED).expectState(RappState.DEPLOYING).and().step() + .sendEvent(RappEvent.SMEDEPLOYED).expectState(RappState.DEPLOYED).expectStateChanged(1).and() + .step().sendEvent(RappEvent.UNDEPLOYING).expectState(RappState.UNDEPLOYING) + .expectStateChanged(1).and().step().sendEvent(RappEvent.ACMUNDEPLOYED) + .expectState(RappState.UNDEPLOYING).and().step().sendEvent(RappEvent.SMEUNDEPLOYED) + .expectState(RappState.UNDEPLOYED).expectStateChanged(1).and().build(); + plan.test(); + } + + @Test + void testUndeployFailedState() throws Exception { + StateMachineTestPlan plan = + StateMachineTestPlanBuilder.builder().stateMachine(stateMachine).step() + .expectState(RappState.ONBOARDED).and().step().sendEvent(RappEvent.DEPLOYING) + .expectState(RappState.DEPLOYING).expectStateChanged(1).and().step() + .sendEvent(RappEvent.ACMDEPLOYED).expectState(RappState.DEPLOYING).and().step() + .sendEvent(RappEvent.SMEDEPLOYED).expectState(RappState.DEPLOYED).expectStateChanged(1).and() + .step().sendEvent(RappEvent.UNDEPLOYING).expectState(RappState.UNDEPLOYING) + .expectStateChanged(1).and().step().sendEvent(RappEvent.ACMUNDEPLOYED) + .expectState(RappState.UNDEPLOYING).and().step().sendEvent(RappEvent.SMEUNDEPLOYFAILED) + .expectState(RappState.FAILED).expectStateChanged(1).and().build(); + plan.test(); + } + + +} diff --git a/rapp-manager-application/src/test/resources/invalid-rapp-package.csar b/rapp-manager-application/src/test/resources/invalid-rapp-package.csar new file mode 100755 index 0000000000000000000000000000000000000000..c9150f0d8631727bd347903fe72304553256039a GIT binary patch literal 280225 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