Add smoke testing documentation for acm participants 46/128146/2
authorrameshiyer27 <ramesh.murugan.iyer@est.tech>
Mon, 28 Mar 2022 22:46:06 +0000 (23:46 +0100)
committerrameshiyer27 <ramesh.murugan.iyer@est.tech>
Tue, 29 Mar 2022 08:26:19 +0000 (09:26 +0100)
Issue-ID: POLICY-4004
Signed-off-by: zrrmmua <ramesh.murugan.iyer@est.tech>
Change-Id: Idea5261380d318bdce2d2993e20a131e5660e0fd

docs/development/devtools/acm-participants-smoke.rst [moved from docs/development/devtools/cl-participants-smoke.rst with 67% similarity]
docs/development/devtools/json/acm-instantiation.json [moved from docs/development/devtools/json/cl-instantiation.json with 63% similarity]
docs/development/devtools/tosca/smoke-test-participants.yaml

@@ -1,6 +1,6 @@
 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
 
-.. _clamp-controlloop-participants-smoke-tests:
+.. _clamp-acm-participants-smoke-tests:
 
 CLAMP participants (kubernetes, http) Smoke Tests
 -------------------------------------------------
@@ -8,7 +8,7 @@ CLAMP participants (kubernetes, http) Smoke Tests
 ***************
 The CLAMP participants (kubernetes and http) are used to interact with the helm client in a kubernetes environment for the
 deployment of microservices via helm chart as well as to configure the microservices over REST endpoints. Both of these participants are
-often used together in the Control loop workflow.
+often used together in the Automation Composition Management workflow.
 
 This document will serve as a guide to do smoke tests on the different components that are involved when working with the participants and outline how they operate. It will also show a developer how to set up their environment for carrying out smoke tests on these participants.
 
@@ -53,19 +53,19 @@ In this setup guide, we will be setting up all the components technically requir
 
 2.3.1 MariaDB Setup
 ^^^^^^^^^^^^^^^^^^^
-We will be using Docker to run our mariadb instance. It will have the runtime-controlloop database running in it.
+We will be using Docker to run our mariadb instance. It will have the acm-runtime database running in it.
 
-- controlloop: the runtime-controlloop db
+- AutomationComposition: the runtime-acm db
 
 The easiest way to do this is to perform a small alteration on an SQL script provided by the clamp backend in the file "runtime/extra/sql/bulkload/create-db.sql"
 
 .. code-block:: mysql
 
-    CREATE DATABASE `controlloop`;
-    USE `controlloop`;
+    CREATE DATABASE `clampacm`;
+    USE `clampacm`;
     DROP USER 'policy';
     CREATE USER 'policy';
-    GRANT ALL on controlloop.* to 'policy' identified by 'P01icY' with GRANT OPTION;
+    GRANT ALL on clampacm.* to 'policy' identified by 'P01icY' with GRANT OPTION;
 
 Once this has been done, we can run the bash script provided here: "runtime/extra/bin-for-dev/start-db.sh"
 
@@ -73,7 +73,7 @@ Once this has been done, we can run the bash script provided here: "runtime/extr
 
     ./start-db.sh
 
-This will setup all the Control Loop runtime database. The database will be exposed locally on port 3306 and will be backed by an anonymous docker volume.
+This will setup all the automation composition runtime database. The database will be exposed locally on port 3306 and will be backed by an anonymous docker volume.
 
 2.3.2 DMAAP Simulator
 ^^^^^^^^^^^^^^^^^^^^^
@@ -109,9 +109,9 @@ For convenience, a dmaap simulator has been provided in the policy/models reposi
 At this stage the dmaap simulator should be running on your local machine on port 3904.
 
 
-2.3.3 Controlloop Runtime
-^^^^^^^^^^^^^^^^^^^^^^^^^
-To start the controlloop runtime service, we need to execute the following maven command from the "runtime-controlloop" directory in the clamp repo. Control Loop runtime uses the config file "src/main/resources/application.yaml" by default.
+2.3.3 Automation composition Runtime
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+To start the automation composition runtime service, we need to execute the following maven command from the "runtime-acm" directory in the clamp repo. Automation composition runtime uses the config file "src/main/resources/application.yaml" by default.
 
 .. code-block:: bash
 
@@ -129,7 +129,7 @@ The following command can be used to add nginx repository to the helm client.
 2.3.5 Kubernetes and http participants
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 The participants can be started from the clamp repository by executing the following maven command from the appropriate directories.
-The participants will be started and get registered to the Control Loop runtime.
+The participants will be started and get registered to the Automation composition runtime.
 
 Navigate to the directory "participant/participant-impl/participant-impl-kubernetes/" and start kubernetes participant.
 
@@ -143,16 +143,23 @@ Navigate to the directory "participant/participant-impl/participant-impl-http/"
 
     mvn spring-boot:run
 
+For building docker images of runtime-acm and participants:
+
+.. code-block:: bash
+
+   cd ~/git/onap/policy/clamp/packages/
+   mvn clean install -P docker
+
 
 3. Running Tests
 ****************
-In this section, we will run through the sequence of steps in Control Loop workflow . The workflow can be triggered via Postman client.
+In this section, we will run through the sequence of steps in ACM workflow . The workflow can be triggered via Postman client.
 
 3.1 Commissioning
 =================
-Commission Control loop TOSCA definitions to Runtime.
+Commission Automation composition TOSCA definitions to Runtime.
 
-The Control Loop definitions are commissioned to CL runtime which populates the CL runtime database.
+The Automation composition definitions are commissioned to runtime-acm which populates the ACM runtime database.
 The following sample TOSCA template is commissioned to the runtime endpoint which contains definitions for kubernetes participant that deploys nginx ingress microservice
 helm chart and a http POST request for http participant.
 
@@ -162,41 +169,41 @@ Commissioning Endpoint:
 
 .. code-block:: bash
 
-   POST: https://<CL Runtime IP> : <Port> /onap/controlloop/v2/commission
+   POST: https://<Runtime ACM IP> : <Port> /onap/policy/clamp/acm/v2/commission
 
 A successful commissioning gives 200 response in the postman client.
 
 
-3.2 Create New Instances of Control Loops
-=========================================
-Once the template is commissioned, we can instantiate Control Loop instances. This will create the instances with default state "UNINITIALISED".
+3.2 Create New Instances of Automation composition
+==================================================
+Once the template is commissioned, we can instantiate automation composition instances. This will create the instances with default state "UNINITIALISED".
 
 Instantiation Endpoint:
 
 .. code-block:: bash
 
-   POST: https://<CL Runtime IP> : <Port> /onap/controlloop/v2/instantiation
+   POST: https://<Runtime ACM IP> : <Port> /onap/policy/clamp/acm/v2/instantiation
 
 Request body:
 
-:download:`Instantiation json <json/cl-instantiation.json>`
+:download:`Instantiation json <json/acm-instantiation.json>`
 
 3.3 Change the State of the Instance
 ====================================
-When the Control loop is updated with state “PASSIVE”, the Kubernetes participant fetches the node template for all control loop elements and deploys the helm chart of each CL element in to the cluster. The following sample json input is passed on the request body.
+When the automation composition is updated with state “PASSIVE”, the Kubernetes participant fetches the node template for all automation composition elements and deploys the helm chart of each AC element in to the cluster. The following sample json input is passed on the request body.
 
-Control Loop Update Endpoint:
+Automation Composition Update Endpoint:
 
 .. code-block:: bash
 
-   PUT: https://<CL Runtime IP> : <Port> /onap/controlloop/v2/instantiation/command
+   PUT: https://<Runtime ACM IP> : <Port> /onap/policy/clamp/acm/v2/instantiation/command
 
    Request body:
 .. code-block:: bash
 
    {
      "orderedState": "PASSIVE",
-     "controlLoopIdentifierList": [
+     "automationCompositionIdentifierList": [
        {
          "name": "K8SInstance0",
          "version": "1.0.1"
@@ -214,31 +221,31 @@ The following command can be used to verify the pods deployed successfully by ku
    helm ls -n onap | grep nginx
    kubectl get po -n onap | grep nginx
 
-The overall state of the control loop should be "PASSIVE" to indicate both the participants has successfully completed the operations. This can be verified by the following rest endpoint.
+The overall state of the automation composition should be "PASSIVE" to indicate both the participants has successfully completed the operations. This can be verified by the following rest endpoint.
 
-Verify control loop state:
+Verify automation composition state:
 
 .. code-block:: bash
 
-   GET: https://<CL Runtime IP> : <Port>/onap/controlloop/v2/instantiation
+   GET: https://<Runtime ACM IP> : <Port>/onap/policy/clamp/acm/v2/instantiation
 
 
-3.4 Control Loop can be "UNINITIALISED" after deployment
-========================================================
+3.4 Automation Compositions can be "UNINITIALISED" after deployment
+===================================================================
 
-By changing the state to "UNINITIALISED", all the helm deployments under the corresponding control loop will be uninstalled from the cluster.
-Control Loop Update Endpoint:
+By changing the state to "UNINITIALISED", all the helm deployments under the corresponding automation composition will be uninstalled from the cluster.
+Automation Composition Update Endpoint:
 
 .. code-block:: bash
 
-   PUT: https://<CL Runtime IP> : <Port> /onap/controlloop/v2/instantiation/command
+   PUT: https://<Runtime ACM IP> : <Port> /onap/policy/clamp/acm/v2/instantiation/command
 
    Request body:
 .. code-block:: bash
 
    {
      "orderedState": "UNINITIALISED",
-     "controlLoopIdentifierList": [
+     "automationCompositionIdentifierList": [
        {
          "name": "K8SInstance0",
          "version": "1.0.1"
@@ -1,20 +1,20 @@
 {
-  "controlLoopList": [
+  "automationCompositionList ": [
     {
       "name": "K8SInstance0",
       "version": "1.0.1",
       "definition": {
-        "name": "org.onap.domain.sample.GenericK8s_ControlLoopDefinition",
+        "name": "org.onap.domain.sample.GenericK8s_AutomationCompositionDefinition",
         "version": "1.2.3"
       },
       "state": "UNINITIALISED",
       "orderedState": "UNINITIALISED",
-      "description": "K8s control loop instance 0",
+      "description": "K8s automation composition instance 0",
       "elements": {
         "709c62b3-8918-41b9-a747-d21eb79c6c21": {
           "id": "709c62b3-8918-41b9-a747-d21eb79c6c21",
           "definition": {
-            "name": "org.onap.domain.database.Local_K8SMicroserviceControlLoopElement",
+            "name": "org.onap.policy.clamp.Local_K8SMicroserviceAutomationCompositionElement",
             "version": "1.2.3"
           },
           "participantId": {
             "version": "1.0.0"
           },
           "participantType": {
-            "name": "org.onap.k8s.controlloop.K8SControlLoopParticipant",
+            "name": "org.onap.policy.clamp.acm.KubernetesParticipant",
             "version": "2.3.4"
           },
           "state": "UNINITIALISED",
           "orderedState": "UNINITIALISED",
-          "description": "K8s Control Loop Element for the nginx-ingress microservice"
+          "description": "K8s Automation composition Element for the nginx-ingress microservice"
         },
         "709c62b3-8918-41b9-a747-d21eb79c6c22": {
           "id": "709c62b3-8918-41b9-a747-d21eb79c6c22",
           "definition": {
-            "name": "org.onap.domain.database.Http_MicroserviceControlLoopElement",
+            "name": "org.onap.policy.clamp.Http_AutomationCompositionElement",
             "version": "1.2.3"
           },
           "participantId": {
             "version": "1.0.0"
           },
           "participantType": {
-            "name": "org.onap.k8s.controlloop.HttpControlLoopParticipant",
+            "name": "org.onap.policy.clamp.acm.HttpParticipant",
             "version": "2.3.4"
           },
           "state": "UNINITIALISED",
           "orderedState": "UNINITIALISED",
-          "description": "Http Control Loop Element"
+          "description": "Http Automation composition Element"
         }
       }
     }
index a10e05e..7823a77 100644 (file)
@@ -9,7 +9,7 @@ data_types:
       version:
         type: string
         required: true
-  org.onap.datatypes.policy.clamp.controlloop.httpControlLoopElement.RestRequest:
+  org.onap.datatypes.policy.clamp.acm.httpAutomationCompositionElement.RestRequest:
     version: 1.0.0
     derived_from: tosca.datatypes.Root
     properties:
@@ -38,7 +38,7 @@ data_types:
         constraints:
           - in_range: [100, 599]
         description: THe expected HTTP status code for the REST request
-    org.onap.datatypes.policy.clamp.controlloop.httpControlLoopElement.ConfigurationEntity:
+    org.onap.datatypes.policy.clamp.acm.httpAutomationCompositionElement.ConfigurationEntity:
       version: 1.0.0
       derived_from: tosca.datatypes.Root
       properties:
@@ -46,22 +46,22 @@ data_types:
           type:  onap.datatypes.ToscaConceptIdentifier
           typeVersion: 1.0.0
           required: true
-          description: The name and version of a Configuration Entity to be handled by the HTTP Control Loop Element
+          description: The name and version of a Configuration Entity to be handled by the HTTP Automation Composition Element
         restSequence:
           type: list
           entry_schema:
-            type: org.onap.datatypes.policy.clamp.controlloop.httpControlLoopElement.RestRequest
+            type: org.onap.datatypes.policy.clamp.acm.httpAutomationCompositionElement.RestRequest
             typeVersion: 1.0.0
           description: A sequence of REST commands to send to the REST endpoint
 node_types:
-  org.onap.policy.clamp.controlloop.Participant:
+  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.controlloop.ControlLoopElement:
+  org.onap.policy.clamp.acm.AutomationCompositionElement:
     version: 1.0.1
     derived_from: tosca.nodetypes.Root
     properties:
@@ -76,7 +76,7 @@ node_types:
         required: true
         metadata:
           common: true
-        description: The identity of the participant type that hosts this type of Control Loop Element
+        description: The identity of the participant type that hosts this type of Automation Composition Element
       startPhase:
         type: integer
         required: false
@@ -84,9 +84,9 @@ node_types:
           - greater_or_equal: 0
         metadata:
           common: true
-        description: A value indicating the start phase in which this control loop element will be started, the
-          first start phase is zero. Control Loop Elements are started in their start_phase order and stopped
-          in reverse start phase order. Control Loop Elements with the same start phase are started and
+        description: A value indicating the start phase in which this ACM 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
       uninitializedToPassiveTimeout:
         type: integer
@@ -124,7 +124,7 @@ node_types:
         metadata:
           common: true
         description: The maximum time in seconds to wait for a state chage from passive to uninitialized
-  org.onap.policy.clamp.controlloop.ControlLoop:
+  org.onap.policy.clamp.acm.AutomationComposition:
     version: 1.0.1
     derived_from: tosca.nodetypes.Root
     properties:
@@ -136,9 +136,9 @@ node_types:
         required: true
         entry_schema:
           type: onap.datatypes.ToscaConceptIdentifier
-  org.onap.policy.clamp.controlloop.K8SMicroserviceControlLoopElement:
+  org.onap.policy.clamp.acm.K8SMicroserviceAutomationCompositionElement:
     version: 1.0.1
-    derived_from: org.onap.policy.clamp.controlloop.ControlLoopElement
+    derived_from: org.onap.policy.clamp.acm.AutomationCompositionElement
     properties:
       chart:
         type: string
@@ -156,9 +156,9 @@ node_types:
       values:
         type: string
         required: true
-  org.onap.policy.clamp.controlloop.HttpControlLoopElement:
+  org.onap.policy.clamp.acm.HttpAutomationCompositionElement:
     version: 1.0.1
-    derived_from: org.onap.policy.clamp.controlloop.ControlLoopElement
+    derived_from: org.onap.policy.clamp.acm.AutomationCompositionElement
     properties:
       baseUrl:
         type: string
@@ -174,31 +174,31 @@ node_types:
         type: map
         required: true
         entry_schema:
-          type: org.onap.datatypes.policy.clamp.controlloop.httpControlLoopElement.ConfigurationEntity
+          type: org.onap.datatypes.policy.clamp.acm.httpAutomationCompositionElement.ConfigurationEntity
           typeVersion: 1.0.0
-        description: The connfiguration entities the Control Loop Element is managing and their associated REST requests
+        description: The connfiguration entities the Automation Composition Element is managing and their associated REST requests
 topology_template:
   node_templates:
-    org.onap.k8s.controlloop.K8SControlLoopParticipant:
+    org.onap.policy.clamp.acm.KubernetesParticipant:
       version: 2.3.4
-      type: org.onap.policy.clamp.controlloop.Participant
+      type: org.onap.policy.clamp.acm.Participant
       type_version: 1.0.1
       description: Participant for K8S
       properties:
         provider: ONAP
-    org.onap.domain.database.Local_K8SMicroserviceControlLoopElement:
+    org.onap.policy.clamp.Local_K8SMicroserviceAutomationCompositionElement:
       # Chart installation without passing repository info
       version: 1.2.3
-      type: org.onap.policy.clamp.controlloop.K8SMicroserviceControlLoopElement
+      type: org.onap.policy.clamp.acm.K8SMicroserviceAutomationCompositionElement
       type_version: 1.0.0
-      description: Control loop element for the K8S microservice for local chart
+      description: Automation Composition element for the K8S microservice for local chart
       properties:
         provider: ONAP
         participant_id:
           name: K8sParticipant0
           version: 1.0.0
         participantType:
-          name: org.onap.k8s.controlloop.K8SControlLoopParticipant
+          name: org.onap.policy.clamp.acm.KubernetesParticipant
           version: 2.3.4
         chart:
           chartId:
@@ -206,26 +206,26 @@ topology_template:
             version: 0.11.0
           releaseName: nginxapp
           namespace: onap
-    org.onap.controlloop.HttpControlLoopParticipant:
+    org.onap.policy.clamp.acm.HttpParticipant:
       version: 2.3.4
-      type: org.onap.policy.clamp.controlloop.Participant
+      type: org.onap.policy.clamp.acm.Participant
       type_version: 1.0.1
       description: Participant for Http requests
       properties:
         provider: ONAP
 
-    org.onap.domain.database.Http_MicroserviceControlLoopElement:
+    org.onap.policy.clamp.Http_AutomationCompositionElement:
       version: 1.2.3
-      type: org.onap.policy.clamp.controlloop.HttpControlLoopElement
+      type: org.onap.policy.clamp.acm.HttpAutomationCompositionElement
       type_version: 1.0.1
-      description: Control loop element for the http requests of PMSH microservice
+      description: Automation composition element for the http requests of PMSH microservice
       properties:
         provider: ONAP
         participant_id:
           name: HttpParticipant0
           version: 1.0.0
         participantType:
-          name: org.onap.k8s.controlloop.HttpControlLoopParticipant
+          name: org.onap.policy.clamp.acm.HttpParticipant
           version: 2.3.4
         uninitializedToPassiveTimeout: 180
         startPhase: 1
@@ -246,15 +246,15 @@ topology_template:
                 expectedResponse: 200
 
 
-    org.onap.domain.sample.GenericK8s_ControlLoopDefinition:
+    org.onap.domain.sample.GenericK8s_AutomationCompositionDefinition:
       version: 1.2.3
-      type: org.onap.policy.clamp.controlloop.ControlLoop
+      type: org.onap.policy.clamp.acm.AutomationComposition
       type_version: 1.0.0
-      description: Control loop for Hello World
+      description: Automation compostion for smoke testing participants
       properties:
         provider: ONAP
         elements:
-        - name: org.onap.domain.database.Local_K8SMicroserviceControlLoopElement
+        - name: org.onap.policy.clamp.Local_K8SMicroserviceAutomationCompositionElement
           version: 1.2.3
-        - name: org.onap.domain.database.Http_MicroserviceControlLoopElement
+        - name: org.onap.policy.clamp.Http_AutomationCompositionElement
           version: 1.2.3