diff options
author | FrancescoFioraEst <francesco.fiora@est.tech> | 2024-04-26 09:53:55 +0100 |
---|---|---|
committer | Francesco Fiora <francesco.fiora@est.tech> | 2024-04-29 08:52:12 +0000 |
commit | c78136bd23f96c2c79d66f8494f914a3405f2876 (patch) | |
tree | 4ef8f9b55a4336472462216f952a01244271f986 /docs | |
parent | 2816f402050037f1b525d5b37a2d057d90070057 (diff) |
Update Participant Simulator docs
Issue-ID: POLICY-4971
Change-Id: I4bb4ff00414ec1de935ed2bed3b50b4f7a0212d3
Signed-off-by: FrancescoFioraEst <francesco.fiora@est.tech>
Diffstat (limited to 'docs')
-rw-r--r-- | docs/clamp/acm/acm-participant-guide.rst | 104 | ||||
-rw-r--r-- | docs/clamp/acm/acm-user-guide.rst | 6 | ||||
-rw-r--r-- | docs/clamp/acm/design-impl/participants/participants.rst | 1 | ||||
-rw-r--r-- | docs/clamp/acm/design-impl/participants/sim-participant.rst | 42 | ||||
-rw-r--r-- | docs/clamp/acm/design-impl/participants/swagger/participant-sim.json | 1028 | ||||
-rw-r--r-- | docs/clamp/acm/draw.io/acm-participant-sim.drawio | 305 | ||||
-rw-r--r-- | docs/clamp/acm/images/participants/sim-participant.png | bin | 0 -> 98976 bytes |
7 files changed, 1154 insertions, 332 deletions
diff --git a/docs/clamp/acm/acm-participant-guide.rst b/docs/clamp/acm/acm-participant-guide.rst index a98e66b8..b4ca885d 100644 --- a/docs/clamp/acm/acm-participant-guide.rst +++ b/docs/clamp/acm/acm-participant-guide.rst @@ -194,6 +194,108 @@ Any new functionality in the future will be wrapped by this class. Default implementation are supported for the methods: lock, unlock, update, migrate, delete, prime, deprime, handleRestartComposition and handleRestartInstance. +Methods: deploy, undeploy, lock, unlock and delete + compositionElement: + ====================== ======================================= + **field** **description** + ====================== ======================================= + compositionId composition definition Id + elementDefinitionId composition definition element Id + inProperties composition definition in-properties + outProperties composition definition out-properties + ====================== ======================================= + instanceElement: + ============================== =========================== + **field** **description** + ============================== =========================== + instanceId instance id + elementId instance element id + toscaServiceTemplateFragment policies and policy types + inProperties instance in-properties + outProperties instance out-properties + ============================== =========================== + +Method: update + compositionElement: + ====================== ======================================= + **field** **description** + ====================== ======================================= + compositionId composition definition Id + elementDefinitionId composition definition element Id + inProperties composition definition in-properties + outProperties composition definition out-properties + ====================== ======================================= + instanceElement: + ============================== ================================================ + **field** **description** + ============================== ================================================ + instanceId instance id + elementId instance element id + toscaServiceTemplateFragment + inProperties instance in-properties **(before the update)** + outProperties instance out-properties + ============================== ================================================ + instanceElementUpdated: + ============================== ====================================== + **field** **description** + ============================== ====================================== + instanceId instance id + elementId instance element id + toscaServiceTemplateFragment + inProperties instance in-properties **(updated)** + outProperties instance out-properties + ============================== ====================================== + +Methods: prime, deprime + composition: + ====================== =================================================================== + **field** **description** + ====================== =================================================================== + compositionId composition definition Id + inProperties composition definition in-properties for each definition element + outProperties composition definition out-properties for each definition element + ====================== =================================================================== + +Method: migrate + compositionElement: + ====================== ======================================= + **field** **description** + ====================== ======================================= + compositionId composition definition Id + elementDefinitionId composition definition element Id + inProperties composition definition in-properties + outProperties composition definition out-properties + ====================== ======================================= + compositionElementTarget: + ====================== ============================================== + **field** **description** + ====================== ============================================== + compositionId composition definition target Id + elementDefinitionId composition definition target element Id + inProperties composition definition target in-properties + outProperties composition definition target out-properties + ====================== ============================================== + instanceElement: + ============================== =================================================== + **field** **description** + ============================== =================================================== + instanceId instance id + elementId instance element id + toscaServiceTemplateFragment + inProperties instance in-properties **(before the migration)** + outProperties instance out-properties + ============================== =================================================== + instanceElementMigrate: + ============================== ====================================== + **field** **description** + ============================== ====================================== + instanceId instance id + elementId instance element id + toscaServiceTemplateFragment + inProperties instance in-properties **(updated)** + outProperties instance out-properties + ============================== ====================================== + APIs to invoke -------------- ParticipantIntermediaryApi: @@ -665,4 +767,4 @@ error scenarios in the participant with the suitable approach. Tips: If the participant tries to undeploy an element which doesn’t exist in the system any more (due to various other external factors), -it could update the element state to ‘undeployed’ using the Intermediary api.
\ No newline at end of file +it could update the element state to ‘undeployed’ using the Intermediary api. diff --git a/docs/clamp/acm/acm-user-guide.rst b/docs/clamp/acm/acm-user-guide.rst index faab7e61..3c56f906 100644 --- a/docs/clamp/acm/acm-user-guide.rst +++ b/docs/clamp/acm/acm-user-guide.rst @@ -418,7 +418,7 @@ The Json below is an example of configuration: Update and send composition outProperites ----------------------------------------- -Data like useState operationalState and outProperites could be updated any time using the following endpoint: +Composition Definition outProperites could be updated any time using the following endpoint: .. code-block:: bash @@ -454,7 +454,7 @@ could be read using the following endpoint: Update and send useState operationalState and instance outProperites -------------------------------------------------------------------- -Data like useState operationalState and outProperites could be updated any time using the following endpoint: +AC instance data like useState operationalState and outProperites could be updated any time using the following endpoint: .. code-block:: bash @@ -466,7 +466,7 @@ The Json below is an example of update, where {{instanceId}} is the UUID of the { "outProperties": { - "Opresult": true, + "result": true, "list": [ {"id": 1 }, {"id": 2 } diff --git a/docs/clamp/acm/design-impl/participants/participants.rst b/docs/clamp/acm/design-impl/participants/participants.rst index 6b12b7c4..254d80c7 100644 --- a/docs/clamp/acm/design-impl/participants/participants.rst +++ b/docs/clamp/acm/design-impl/participants/participants.rst @@ -38,3 +38,4 @@ The detailed implementation of the CLAMP Participant ecosystem is described on t a1pms-participant kserve-participant policy-framework-participant + sim-participant diff --git a/docs/clamp/acm/design-impl/participants/sim-participant.rst b/docs/clamp/acm/design-impl/participants/sim-participant.rst new file mode 100644 index 00000000..96683a6a --- /dev/null +++ b/docs/clamp/acm/design-impl/participants/sim-participant.rst @@ -0,0 +1,42 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. + +.. _clamp-acm-sim-participant: + +Simulator Participant +##################### + +This can be used for simulation testing purpose when there are no actual frameworks or a full deployment. +Typically the Simulator Participant can be used with other Simulator participants with different supported element types. +Once the microservice is up, the Simulator participants can be used to test CLAMP runtime and intermediary library. +It supports the message Broker Kafka. + +.. image:: ../../images/participants/sim-participant.png + +Supported Element Types +----------------------- +Supported Element Types for Simulator participant will be used to define a whatever participant Element Definition Types in tosca template. +Participant Supported Element Types is defined in Simulator participant application.yaml. +The example below shows how to mock the HTTP participant: + +.. code-block:: YAML + + participantSupportedElementTypes: + - + typeName: org.onap.policy.clamp.acm.HttpAutomationCompositionElement + typeVersion: 1.0.0 + +Supported participant Interactions: +----------------------------------- +The Simulator participant interacts with ACM Runtime on the northbound via Message Broker. It interacts with tester via Rest Api. + +The communication for the Automation Composition updates and state change requests are sent from the ACM Runtime to the participant via Message Broker. +The tester can invoke the appropriate endpoint of the participant to change the behavior of how the participant should replay to ACM runtime. + +Participant Simulator API +========================= + +This API allows a Participant Simulator to be started and run for test purposes. + +:download:`Download Policy Participant Simulator API Swagger <swagger/participant-sim.json>` + +.. swaggerv2doc:: swagger/participant-sim.json diff --git a/docs/clamp/acm/design-impl/participants/swagger/participant-sim.json b/docs/clamp/acm/design-impl/participants/swagger/participant-sim.json index b258f85a..3be2d348 100644 --- a/docs/clamp/acm/design-impl/participants/swagger/participant-sim.json +++ b/docs/clamp/acm/design-impl/participants/swagger/participant-sim.json @@ -1,117 +1,205 @@ { - "swagger": "2.0", + "openapi": "3.0.1", "info": { - "description": "Api Documentation", - "version": "1.0", - "title": "Api Documentation", - "termsOfService": "urn:tos", - "contact": {}, + "title": "ACM Mock Participant", + "description": "CLAMP Mock Participant API", "license": { "name": "Apache 2.0", "url": "http://www.apache.org/licenses/LICENSE-2.0" } }, + "externalDocs": { + "description": "CLAMP Automation Composition Management Documentation", + "url": "https://docs.onap.org/projects/onap-policy-parent/en/latest/clamp/clamp.html" + }, + "servers": [ + { + "url": "http://localhost:8084/onap/policy/clamp/acm/simparticipant", + "description": "Generated server url" + } + ], "paths": { - "/onap/participantsim/v2/elements": { - "put": { + "/v2/parameters": { + "get": { "tags": [ - "Clamp Automation Composition Participant Simulator API" - ], - "summary": "Updates simulated automation composition elements", - "description": "Updates simulated automation composition elements, returning the updated automation composition definition IDs", - "operationId": "updateUsingPUT", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json", - "application/yaml" + "Simulator-participant-controller" ], + "summary": "Return all Parameters", + "description": "Return all the parameters configured in the Simulator Participant", + "operationId": "getConfig", "parameters": [ { - "in": "body", - "name": "body", - "description": "Body of a automation composition element", - "required": true, + "name": "X-onap-RequestId", + "in": "header", + "description": "RequestID for http transaction", + "required": false, "schema": { - "$ref": "#/definitions/AutomationCompositionElementReq", - "originalRef": "AutomationCompositionElementReq" + "type": "string", + "format": "uuid" + } + } + ], + "responses": { + "200": { + "description": "OK, reutrns a serialised instance of [SimConfig](https://github.com/onap/policy-clamp/blob/master/participant/participant-impl/policy-clamp-participant-impl-simulator/src/main/java/org/onap/policy/clamp/acm/participant/sim/model/SimConfig.java)", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SimConfig" + } + } } }, + "401": { + "description": "Authorization Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SimConfig" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/SimConfig" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SimConfig" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/SimConfig" + } + } + } + } + }, + "security": [ + { + "basicAuth": [] + } + ] + }, + "put": { + "tags": [ + "Simulator-participant-controller" + ], + "summary": "change the parameters", + "description": "Change the parameters the behaviour of the Simulator Participant", + "operationId": "setConfig", + "parameters": [ { "name": "X-ONAP-RequestID", "in": "header", "description": "RequestID for http transaction", "required": false, - "type": "string", - "format": "uuid" + "schema": { + "type": "string", + "format": "uuid" + } } ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SimConfig" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/SimConfig" + } + } + }, + "required": true + }, "responses": { "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/TypedSimpleResponse«AutomationCompositionElement»", - "originalRef": "TypedSimpleResponse«AutomationCompositionElement»" - } + "description": "OK, the parameters has been saved" }, - "201": { - "description": "Created" + "400": { + "description": "Bad Request" }, "401": { - "description": "Authentication Error", - "headers": { - "X-LatestVersion": { - "type": "string" - }, - "X-PatchVersion": { - "type": "string" - }, - "X-MinorVersion": { - "type": "string" - }, - "X-ONAP-RequestID": { - "type": "string", - "format": "uuid" + "description": "Authorization Error" + }, + "500": { + "description": "Internal Server Error" + } + }, + "security": [ + { + "basicAuth": [] + } + ] + } + }, + "/v2/datas": { + "get": { + "tags": [ + "Simulator-participant-controller" + ], + "summary": "Query details of the requested internal datas", + "description": "Query details of the requested internal datas", + "operationId": "getDatas", + "parameters": [ + { + "name": "X-onap-RequestId", + "in": "header", + "description": "RequestID for http transaction", + "required": false, + "schema": { + "type": "string", + "format": "uuid" + } + } + ], + "responses": { + "200": { + "description": "Serialised instance of [InternalDatas](https://github.com/onap/policy-clamp/blob/master/participant/participant-impl/policy-clamp-participant-impl-simulator/src/main/java/org/onap/policy/clamp/acm/participant/sim/model/InternalDatas.java)", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InternalDatas" + } } } }, - "403": { + "401": { "description": "Authorization Error", - "headers": { - "X-LatestVersion": { - "type": "string" - }, - "X-PatchVersion": { - "type": "string" - }, - "X-MinorVersion": { - "type": "string" - }, - "X-ONAP-RequestID": { - "type": "string", - "format": "uuid" + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InternalDatas" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/InternalDatas" + } } } }, - "404": { - "description": "Not Found" - }, "500": { "description": "Internal Server Error", - "headers": { - "X-LatestVersion": { - "type": "string" - }, - "X-PatchVersion": { - "type": "string" - }, - "X-MinorVersion": { - "type": "string" - }, - "X-ONAP-RequestID": { - "type": "string", - "format": "uuid" + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InternalDatas" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/InternalDatas" + } } } } @@ -120,114 +208,121 @@ { "basicAuth": [] } + ] + }, + "put": { + "tags": [ + "Simulator-participant-controller" ], - "x-interface info": { - "api-version": "1.0.0", - "last-mod-release": "Dublin" - } + "summary": "change the parameters", + "description": "Change the data of the Simulator Participant", + "operationId": "setData", + "parameters": [ + { + "name": "X-ONAP-RequestID", + "in": "header", + "description": "RequestID for http transaction", + "required": false, + "schema": { + "type": "string", + "format": "uuid" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InternalData" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/InternalData" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "OK, the data has been saved" + }, + "400": { + "description": "Bad Request" + }, + "401": { + "description": "Authorization Error" + }, + "500": { + "description": "Internal Server Error" + } + }, + "security": [ + { + "basicAuth": [] + } + ] } }, - "/onap/participantsim/v2/elements/{name}/{version}": { + "/v2/compositiondatas": { "get": { "tags": [ - "Clamp Automation Composition Participant Simulator API" - ], - "summary": "Query details of the requested simulated automation composition elements", - "description": "Queries details of the requested simulated automation composition elements, returning all automation composition element details", - "operationId": "elementsUsingGET", - "produces": [ - "application/json", - "application/yaml" + "Simulator-participant-controller" ], + "summary": "Query details of the requested internal composition datas", + "description": "Query details of the requested internal composition datas", + "operationId": "getCompositionDatas", "parameters": [ { - "name": "name", - "in": "path", - "description": "Automation Composition element name", - "required": true, - "type": "string" - }, - { - "name": "version", - "in": "path", - "description": "Automation Composition element version", - "required": true, - "type": "string" - }, - { - "name": "X-ONAP-RequestID", + "name": "X-onap-RequestId", "in": "header", "description": "RequestID for http transaction", "required": false, - "type": "string", - "format": "uuid" + "schema": { + "type": "string", + "format": "uuid" + } } ], "responses": { "200": { - "description": "OK", - "schema": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/AutomationCompositionElementRes", - "originalRef": "AutomationCompositionElementRes" + "description": "Serialised instance of [InternalDatas](https://github.com/onap/policy-clamp/blob/master/participant/participant-impl/policy-clamp-participant-impl-simulator/src/main/java/org/onap/policy/clamp/acm/participant/sim/model/InternalDatas.java)", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InternalDatas" + } } } }, "401": { - "description": "Authentication Error", - "headers": { - "X-LatestVersion": { - "type": "string" - }, - "X-PatchVersion": { - "type": "string" - }, - "X-MinorVersion": { - "type": "string" - }, - "X-ONAP-RequestID": { - "type": "string", - "format": "uuid" - } - } - }, - "403": { "description": "Authorization Error", - "headers": { - "X-LatestVersion": { - "type": "string" - }, - "X-PatchVersion": { - "type": "string" - }, - "X-MinorVersion": { - "type": "string" - }, - "X-ONAP-RequestID": { - "type": "string", - "format": "uuid" + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InternalDatas" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/InternalDatas" + } } } }, - "404": { - "description": "Not Found" - }, "500": { "description": "Internal Server Error", - "headers": { - "X-LatestVersion": { - "type": "string" - }, - "X-PatchVersion": { - "type": "string" - }, - "X-MinorVersion": { - "type": "string" - }, - "X-ONAP-RequestID": { - "type": "string", - "format": "uuid" + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InternalDatas" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/InternalDatas" + } } } } @@ -236,113 +331,121 @@ { "basicAuth": [] } - ], - "x-interface info": { - "api-version": "1.0.0", - "last-mod-release": "Dublin" - } - } - }, - "/onap/participantsim/v2/participants": { + ] + }, "put": { "tags": [ - "Clamp Automation Composition Participant Simulator API" - ], - "summary": "Updates simulated participants", - "description": "Updates simulated participants, returning the updated automation composition definition IDs", - "operationId": "updateUsingPUT_1", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json", - "application/yaml" + "Simulator-participant-controller" ], + "summary": "change the parameters", + "description": "Change the data of the Simulator Participant", + "operationId": "setCompositionData", "parameters": [ { - "in": "body", - "name": "body", - "description": "Body of a participant", - "required": true, - "schema": { - "$ref": "#/definitions/ParticipantReq", - "originalRef": "ParticipantReq" - } - }, - { "name": "X-ONAP-RequestID", "in": "header", "description": "RequestID for http transaction", "required": false, - "type": "string", - "format": "uuid" + "schema": { + "type": "string", + "format": "uuid" + } } ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InternalData" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/InternalData" + } + } + }, + "required": true + }, "responses": { "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/TypedSimpleResponse«Participant»", - "originalRef": "TypedSimpleResponse«Participant»" - } + "description": "OK, the data has been saved" }, - "201": { - "description": "Created" + "400": { + "description": "Bad Request" }, "401": { - "description": "Authentication Error", - "headers": { - "X-LatestVersion": { - "type": "string" - }, - "X-PatchVersion": { - "type": "string" - }, - "X-MinorVersion": { - "type": "string" - }, - "X-ONAP-RequestID": { - "type": "string", - "format": "uuid" + "description": "Authorization Error" + }, + "500": { + "description": "Internal Server Error" + } + }, + "security": [ + { + "basicAuth": [] + } + ] + } + }, + "/v2/instances": { + "get": { + "tags": [ + "Simulator-participant-controller" + ], + "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": "getAutomationCompositions", + "parameters": [ + { + "name": "X-onap-RequestId", + "in": "header", + "description": "RequestID for http transaction", + "required": false, + "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", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AutomationCompositions" + } } } }, - "403": { + "401": { "description": "Authorization Error", - "headers": { - "X-LatestVersion": { - "type": "string" - }, - "X-PatchVersion": { - "type": "string" - }, - "X-MinorVersion": { - "type": "string" - }, - "X-ONAP-RequestID": { - "type": "string", - "format": "uuid" + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AutomationCompositions" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AutomationCompositions" + } } } }, - "404": { - "description": "Not Found" - }, "500": { "description": "Internal Server Error", - "headers": { - "X-LatestVersion": { - "type": "string" - }, - "X-PatchVersion": { - "type": "string" - }, - "X-MinorVersion": { - "type": "string" - }, - "X-ONAP-RequestID": { - "type": "string", - "format": "uuid" + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AutomationCompositions" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AutomationCompositions" + } } } } @@ -351,114 +454,77 @@ { "basicAuth": [] } - ], - "x-interface info": { - "api-version": "1.0.0", - "last-mod-release": "Dublin" - } + ] } }, - "/onap/participantsim/v2/participants/{name}/{version}": { + "/v2/instances/{instanceId}": { "get": { "tags": [ - "Clamp Automation Composition Participant Simulator API" - ], - "summary": "Query details of the requested simulated participants", - "description": "Queries details of the requested simulated participants, returning all participant details", - "operationId": "participantsUsingGET", - "produces": [ - "application/json", - "application/yaml" + "Simulator-participant-controller" ], + "summary": "Get automation composition instance details.", + "description": "Get details of the requested automation composition instance.", + "operationId": "getAutomationComposition", "parameters": [ { - "name": "name", + "name": "instanceId", "in": "path", - "description": "Participant name", + "description": "The UUID of the automation composition instance to get", "required": true, - "type": "string" - }, - { - "name": "version", - "in": "path", - "description": "Participant version", - "required": true, - "type": "string" + "schema": { + "type": "string", + "format": "uuid" + } }, { - "name": "X-ONAP-RequestID", + "name": "X-onap-RequestId", "in": "header", "description": "RequestID for http transaction", "required": false, - "type": "string", - "format": "uuid" + "schema": { + "type": "string", + "format": "uuid" + } } ], "responses": { "200": { - "description": "OK", - "schema": { - "type": "array", - "items": { - "$ref": "#/definitions/ParticipantRes", - "originalRef": "ParticipantRes" + "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", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AutomationComposition" + } } } }, "401": { - "description": "Authentication Error", - "headers": { - "X-LatestVersion": { - "type": "string" - }, - "X-PatchVersion": { - "type": "string" - }, - "X-MinorVersion": { - "type": "string" - }, - "X-ONAP-RequestID": { - "type": "string", - "format": "uuid" - } - } - }, - "403": { "description": "Authorization Error", - "headers": { - "X-LatestVersion": { - "type": "string" - }, - "X-PatchVersion": { - "type": "string" - }, - "X-MinorVersion": { - "type": "string" - }, - "X-ONAP-RequestID": { - "type": "string", - "format": "uuid" + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AutomationComposition" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AutomationComposition" + } } } }, - "404": { - "description": "Not Found" - }, "500": { "description": "Internal Server Error", - "headers": { - "X-LatestVersion": { - "type": "string" - }, - "X-PatchVersion": { - "type": "string" - }, - "X-MinorVersion": { - "type": "string" - }, - "X-ONAP-RequestID": { - "type": "string", - "format": "uuid" + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AutomationComposition" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AutomationComposition" + } } } } @@ -467,12 +533,318 @@ { "basicAuth": [] } - ], - "x-interface info": { - "api-version": "1.0.0", - "last-mod-release": "Dublin" + ] + } + } + }, + "components": { + "schemas": { + "SimConfig": { + "type": "object", + "properties": { + "deploySuccess": { + "type": "boolean" + }, + "undeploySuccess": { + "type": "boolean" + }, + "lockSuccess": { + "type": "boolean" + }, + "unlockSuccess": { + "type": "boolean" + }, + "deleteSuccess": { + "type": "boolean" + }, + "updateSuccess": { + "type": "boolean" + }, + "migrateSuccess": { + "type": "boolean" + }, + "primeSuccess": { + "type": "boolean" + }, + "deprimeSuccess": { + "type": "boolean" + }, + "deployTimerMs": { + "type": "integer", + "format": "int32" + }, + "undeployTimerMs": { + "type": "integer", + "format": "int32" + }, + "lockTimerMs": { + "type": "integer", + "format": "int32" + }, + "unlockTimerMs": { + "type": "integer", + "format": "int32" + }, + "updateTimerMs": { + "type": "integer", + "format": "int32" + }, + "migrateTimerMs": { + "type": "integer", + "format": "int32" + }, + "deleteTimerMs": { + "type": "integer", + "format": "int32" + }, + "primeTimerMs": { + "type": "integer", + "format": "int32" + }, + "deprimeTimerMs": { + "type": "integer", + "format": "int32" + } + } + }, + "InternalData": { + "type": "object", + "properties": { + "intProperties": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "outProperties": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "compositionId": { + "type": "string", + "format": "uuid" + }, + "compositionDefinitionElementId": { + "$ref": "#/components/schemas/ToscaConceptIdentifier" + }, + "automationCompositionId": { + "type": "string", + "format": "uuid" + }, + "automationCompositionElementId": { + "type": "string", + "format": "uuid" + }, + "useState": { + "type": "string" + }, + "operationalState": { + "type": "string" + } + } + }, + "ToscaConceptIdentifier": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "version": { + "type": "string" + } + } + }, + "AutomationComposition": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "version": { + "type": "string" + }, + "derivedFrom": { + "type": "string" + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "description": { + "type": "string" + }, + "instanceId": { + "type": "string", + "format": "uuid" + }, + "compositionId": { + "type": "string", + "format": "uuid" + }, + "compositionTargetId": { + "type": "string", + "format": "uuid" + }, + "restarting": { + "type": "boolean" + }, + "deployState": { + "type": "string", + "enum": [ + "DEPLOYED", + "DEPLOYING", + "UNDEPLOYED", + "UNDEPLOYING", + "DELETING", + "DELETED", + "UPDATING", + "MIGRATING" + ] + }, + "lockState": { + "type": "string", + "enum": [ + "LOCKED", + "LOCKING", + "UNLOCKED", + "UNLOCKING", + "NONE" + ] + }, + "elements": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/AutomationCompositionElement" + } + }, + "stateChangeResult": { + "type": "string", + "enum": [ + "NO_ERROR", + "FAILED", + "TIMEOUT" + ] + }, + "definedName": { + "type": "string" + }, + "definedVersion": { + "type": "string" + }, + "typeVersion": { + "type": "string" + }, + "key": { + "$ref": "#/components/schemas/ToscaEntityKey" + }, + "type": { + "type": "string" + } + } + }, + "AutomationCompositionElement": { + "type": "object", + "properties": { + "id": { + "type": "string", + "format": "uuid" + }, + "definition": { + "$ref": "#/components/schemas/ToscaConceptIdentifier" + }, + "participantId": { + "type": "string", + "format": "uuid" + }, + "restarting": { + "type": "boolean" + }, + "deployState": { + "type": "string", + "enum": [ + "DEPLOYED", + "DEPLOYING", + "UNDEPLOYED", + "UNDEPLOYING", + "DELETING", + "DELETED", + "UPDATING", + "MIGRATING" + ] + }, + "lockState": { + "type": "string", + "enum": [ + "LOCKED", + "LOCKING", + "UNLOCKED", + "UNLOCKING", + "NONE" + ] + }, + "operationalState": { + "type": "string" + }, + "useState": { + "type": "string" + }, + "description": { + "type": "string" + }, + "message": { + "type": "string" + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "outProperties": { + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + }, + "AutomationCompositions": { + "type": "object", + "properties": { + "automationCompositionList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AutomationComposition" + } + } + } + }, + "ToscaEntityKey": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "version": { + "type": "string" + } + } + }, + "InternalDatas": { + "type": "object", + "properties": { + "list": { + "type": "array", + "items": { + "$ref": "#/components/schemas/InternalData" + } + } } } } } -}
\ No newline at end of file +} diff --git a/docs/clamp/acm/draw.io/acm-participant-sim.drawio b/docs/clamp/acm/draw.io/acm-participant-sim.drawio new file mode 100644 index 00000000..5bcab9c2 --- /dev/null +++ b/docs/clamp/acm/draw.io/acm-participant-sim.drawio @@ -0,0 +1,305 @@ +<mxfile host="app.diagrams.net" modified="2024-04-25T08:32:23.823Z" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36" etag="aqt378V_5LFppGlvXt5Y" version="24.3.0" type="device" pages="2"> + <diagram name="A1PMS" id="EQz7CeIsnqjb-CRsskzZ"> + <mxGraphModel dx="2634" dy="738" grid="0" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="0" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0"> + <root> + <mxCell id="0" /> + <mxCell id="1" parent="0" /> + <mxCell id="BEZJXQmxWPO11OeoHs-X-2" value="ACM Runtime" style="rounded=0;whiteSpace=wrap;html=1;fontSize=16;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="1" vertex="1"> + <mxGeometry x="44" y="28" width="156" height="81" as="geometry" /> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-3" value="Kafka" style="rounded=0;whiteSpace=wrap;html=1;fontSize=16;fillColor=#d5e8d4;strokeColor=#82b366;" parent="1" vertex="1"> + <mxGeometry x="-175" y="201" width="602" height="39" as="geometry" /> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-4" value="Participant Simulator" style="rounded=0;whiteSpace=wrap;html=1;fontSize=16;fillColor=#e1d5e7;strokeColor=#9673a6;verticalAlign=top;" parent="1" vertex="1"> + <mxGeometry x="12" y="333" width="243" height="183" as="geometry" /> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-5" value="<div style=""><span style="background-color: initial;">Automation Composition Element A</span></div>" style="shape=note;whiteSpace=wrap;html=1;backgroundOutline=1;darkOpacity=0.05;fontSize=16;fillColor=#fff2cc;strokeColor=#d6b656;size=15;" parent="1" vertex="1"> + <mxGeometry x="-558" y="257" width="220" height="53" as="geometry" /> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-10" value="" style="endArrow=none;dashed=1;html=1;rounded=0;fontSize=12;startSize=8;endSize=8;curved=1;entryX=0.75;entryY=1;entryDx=0;entryDy=0;" parent="1" source="BEZJXQmxWPO11OeoHs-X-5" target="BEZJXQmxWPO11OeoHs-X-8" edge="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="-8" y="7" as="sourcePoint" /> + <mxPoint x="37" y="-45.75" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-11" value="" style="endArrow=none;dashed=1;html=1;rounded=0;fontSize=12;startSize=8;endSize=8;curved=1;entryX=0.318;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.586;exitY=0.057;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" target="BEZJXQmxWPO11OeoHs-X-8" edge="1" source="TKIm4hqrSRE_Ot67SPcm-1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="-669" y="337" as="sourcePoint" /> + <mxPoint x="-608.2950000000001" y="156.002" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-8" value="Tester (CSIT, Performance Test, User)" style="rounded=0;whiteSpace=wrap;html=1;fontSize=16;fillColor=#f8cecc;strokeColor=#b85450;" parent="1" vertex="1"> + <mxGeometry x="-647" y="25" width="151" height="97" as="geometry" /> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-14" value="Automation Composition Element A" style="rounded=0;whiteSpace=wrap;html=1;fontSize=16;fillColor=#fff2cc;strokeColor=#d6b656;" parent="1" vertex="1"> + <mxGeometry x="27" y="378" width="213" height="60" as="geometry" /> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-15" value="Automation Composition Element B" style="rounded=0;whiteSpace=wrap;html=1;fontSize=16;fillColor=#f8cecc;strokeColor=#b85450;" parent="1" vertex="1"> + <mxGeometry x="27" y="450" width="213" height="60" as="geometry" /> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-37" value="" style="rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=none;endFill=0;sketch=0;sourcePerimeterSpacing=0;targetPerimeterSpacing=0;fontSize=12;startSize=8;endSize=8;curved=1;exitX=0.262;exitY=1.001;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" target="BEZJXQmxWPO11OeoHs-X-39" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="154" y="109" as="sourcePoint" /> + <mxPoint x="156" y="151" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-38" value="" style="rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=halfCircle;endFill=0;entryX=0.5;entryY=0.5;endSize=6;strokeWidth=1;sketch=0;fontSize=12;curved=1;exitX=0.416;exitY=0.012;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" target="BEZJXQmxWPO11OeoHs-X-39" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="154" y="201" as="sourcePoint" /> + </mxGeometry> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-39" value="" style="ellipse;whiteSpace=wrap;html=1;align=center;aspect=fixed;resizable=0;points=[];outlineConnect=0;sketch=0;fontSize=16;direction=south;fillColor=#B20000;fontColor=#ffffff;strokeColor=#B20000;strokeWidth=2;" parent="1" vertex="1"> + <mxGeometry x="149" y="150" width="10" height="10" as="geometry" /> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-40" value="" style="rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=none;endFill=0;sketch=0;sourcePerimeterSpacing=0;targetPerimeterSpacing=0;fontSize=12;startSize=8;endSize=8;curved=1;exitX=0.262;exitY=1.001;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" target="BEZJXQmxWPO11OeoHs-X-42" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="85" y="240" as="sourcePoint" /> + <mxPoint x="87" y="282" as="targetPoint" /> + <Array as="points"> + <mxPoint x="85" y="273" /> + </Array> + </mxGeometry> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-41" value="" style="rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=halfCircle;endFill=0;entryX=0.5;entryY=0.5;endSize=6;strokeWidth=1;sketch=0;fontSize=12;curved=1;exitX=0.416;exitY=0.012;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" target="BEZJXQmxWPO11OeoHs-X-42" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="85" y="332" as="sourcePoint" /> + </mxGeometry> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-42" value="" style="ellipse;whiteSpace=wrap;html=1;align=center;aspect=fixed;resizable=0;points=[];outlineConnect=0;sketch=0;fontSize=16;direction=south;fillColor=#B20000;fontColor=#ffffff;strokeColor=#B20000;strokeWidth=2;" parent="1" vertex="1"> + <mxGeometry x="80" y="281" width="10" height="10" as="geometry" /> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-43" value="" style="rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=none;endFill=0;sketch=0;sourcePerimeterSpacing=0;targetPerimeterSpacing=0;fontSize=12;startSize=8;endSize=8;curved=1;exitX=0.262;exitY=1.001;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" target="BEZJXQmxWPO11OeoHs-X-45" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="157" y="240" as="sourcePoint" /> + <mxPoint x="159" y="282" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-44" value="" style="rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=halfCircle;endFill=0;entryX=0.5;entryY=0.5;endSize=6;strokeWidth=1;sketch=0;fontSize=12;curved=1;exitX=0.416;exitY=0.012;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" target="BEZJXQmxWPO11OeoHs-X-45" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="157" y="332" as="sourcePoint" /> + </mxGeometry> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-45" value="" style="ellipse;whiteSpace=wrap;html=1;align=center;aspect=fixed;resizable=0;points=[];outlineConnect=0;sketch=0;fontSize=16;direction=south;fillColor=#B20000;fontColor=#ffffff;strokeColor=#B20000;strokeWidth=2;" parent="1" vertex="1"> + <mxGeometry x="152" y="281" width="10" height="10" as="geometry" /> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-46" value="" style="rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=none;endFill=0;sketch=0;sourcePerimeterSpacing=0;targetPerimeterSpacing=0;fontSize=12;startSize=8;endSize=8;curved=1;exitX=0.262;exitY=1.001;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" target="BEZJXQmxWPO11OeoHs-X-48" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="85" y="110" as="sourcePoint" /> + <mxPoint x="87" y="152" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-47" value="" style="rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=halfCircle;endFill=0;entryX=0.5;entryY=0.5;endSize=6;strokeWidth=1;sketch=0;fontSize=12;curved=1;exitX=0.416;exitY=0.012;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" target="BEZJXQmxWPO11OeoHs-X-48" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="85" y="202" as="sourcePoint" /> + </mxGeometry> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-48" value="" style="ellipse;whiteSpace=wrap;html=1;align=center;aspect=fixed;resizable=0;points=[];outlineConnect=0;sketch=0;fontSize=16;direction=south;fillColor=#B20000;fontColor=#ffffff;strokeColor=#B20000;strokeWidth=2;" parent="1" vertex="1"> + <mxGeometry x="80" y="151" width="10" height="10" as="geometry" /> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-50" value="" style="endArrow=classic;startArrow=classic;html=1;rounded=0;fontSize=12;startSize=8;endSize=8;curved=1;exitX=-0.009;exitY=0.617;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.993;entryY=0.905;entryDx=0;entryDy=0;entryPerimeter=0;" parent="1" source="BEZJXQmxWPO11OeoHs-X-15" target="BEZJXQmxWPO11OeoHs-X-8" edge="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="256" y="426" as="sourcePoint" /> + <mxPoint x="413" y="416" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-51" value="REST" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontSize=16;" parent="1" vertex="1"> + <mxGeometry x="-461.5" y="105" width="61" height="31" as="geometry" /> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-52" value="Instantiation" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontSize=16;" parent="1" vertex="1"> + <mxGeometry x="-26" y="143" width="104" height="31" as="geometry" /> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-53" value="Instantiation" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontSize=16;" parent="1" vertex="1"> + <mxGeometry x="-26" y="274" width="104" height="31" as="geometry" /> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-54" value="Monitoring" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontSize=16;" parent="1" vertex="1"> + <mxGeometry x="159" y="139.5" width="93" height="31" as="geometry" /> + </mxCell> + <mxCell id="BEZJXQmxWPO11OeoHs-X-55" value="Monitoring" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontSize=16;" parent="1" vertex="1"> + <mxGeometry x="162" y="270.5" width="93" height="31" as="geometry" /> + </mxCell> + <mxCell id="rvGSiY4AJXrMUw3_xQ0a-1" value="" style="endArrow=classic;startArrow=classic;html=1;rounded=0;fontSize=12;startSize=8;endSize=8;curved=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;" parent="1" source="BEZJXQmxWPO11OeoHs-X-14" edge="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="250" y="484" as="sourcePoint" /> + <mxPoint x="-497" y="111" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="TKIm4hqrSRE_Ot67SPcm-1" value="<div style=""><span style="background-color: initial;">Automation Composition Element B</span></div>" style="shape=note;whiteSpace=wrap;html=1;backgroundOutline=1;darkOpacity=0.05;fontSize=16;fillColor=#f8cecc;strokeColor=#b85450;size=14;" vertex="1" parent="1"> + <mxGeometry x="-830" y="257" width="220" height="53" as="geometry" /> + </mxCell> + <mxCell id="TKIm4hqrSRE_Ot67SPcm-3" value="" style="endArrow=classic;startArrow=classic;html=1;rounded=0;fontSize=12;startSize=8;endSize=8;curved=1;" edge="1" parent="1" target="BEZJXQmxWPO11OeoHs-X-8"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="42" y="68" as="sourcePoint" /> + <mxPoint x="-511" y="64" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="TKIm4hqrSRE_Ot67SPcm-4" value="REST" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontSize=16;" vertex="1" parent="1"> + <mxGeometry x="-469.5" y="40" width="61" height="31" as="geometry" /> + </mxCell> + </root> + </mxGraphModel> + </diagram> + <diagram id="7EV7rOq7FkkVQS_sMw84" name="Kserve"> + <mxGraphModel dx="2397" dy="1412" grid="0" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="0" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0"> + <root> + <mxCell id="0" /> + <mxCell id="1" parent="0" /> + <mxCell id="yh-L3AtmC00XoUG_2nvY-11" value="" style="rounded=0;whiteSpace=wrap;html=1;fontSize=16;dashed=1;dashPattern=12 12;" vertex="1" parent="1"> + <mxGeometry x="-261" y="-213" width="1024" height="778" as="geometry" /> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-1" value="CLAMP-ACM<br>GUI" style="rounded=0;whiteSpace=wrap;html=1;fontSize=16;fillColor=#b1ddf0;strokeColor=#10739e;" parent="1" vertex="1"> + <mxGeometry x="47" y="-103" width="153" height="81" as="geometry" /> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-2" value="Automation Composition Runtime (CLAMP-ACM)" style="rounded=0;whiteSpace=wrap;html=1;fontSize=16;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="1" vertex="1"> + <mxGeometry x="44" y="28" width="156" height="81" as="geometry" /> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-3" value="Kafka" style="rounded=0;whiteSpace=wrap;html=1;fontSize=16;fillColor=#d5e8d4;strokeColor=#82b366;" parent="1" vertex="1"> + <mxGeometry x="-232" y="201" width="760" height="39" as="geometry" /> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-5" value="Kserve Participant Automation Composition Element Configuration for Automation Composition A<br><br>- Define Inference Service Entities<br>&nbsp; + Sequence of Inference Services<br><div style="text-align: left;"><span style="background-color: initial;">- Name</span></div><div style="text-align: left;"><span style="background-color: initial;">- Namespace</span></div><div style="text-align: left;"><span style="background-color: initial;">- Payload</span></div>" style="shape=note;whiteSpace=wrap;html=1;backgroundOutline=1;darkOpacity=0.05;fontSize=16;fillColor=#fff2cc;strokeColor=#d6b656;" parent="1" vertex="1"> + <mxGeometry x="-553" y="-227" width="273" height="224" as="geometry" /> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-6" value="Kserve Participant Automation Composition Element Configuration for Automation Composition B<br style="border-color: var(--border-color);"><br style="border-color: var(--border-color);">- Define Inference Service Entities<br style="border-color: var(--border-color);">&nbsp; + Sequence of Inference Services<br style="border-color: var(--border-color);"><div style="border-color: var(--border-color); text-align: left;">- Name</div><div style="border-color: var(--border-color); text-align: left;"><span style="border-color: var(--border-color); background-color: initial;">- Namespace</span></div><div style="border-color: var(--border-color); text-align: left;"><span style="border-color: var(--border-color); background-color: initial;">- Payload</span></div>" style="shape=note;whiteSpace=wrap;html=1;backgroundOutline=1;darkOpacity=0.05;fontSize=16;fillColor=#f8cecc;strokeColor=#b85450;" parent="1" vertex="1"> + <mxGeometry x="-556" y="24" width="274" height="204" as="geometry" /> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-7" value="" style="endArrow=none;dashed=1;html=1;rounded=0;fontSize=12;startSize=8;endSize=8;curved=1;exitX=0.996;exitY=0.278;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0;entryY=0.25;entryDx=0;entryDy=0;" parent="1" source="hDoWaCIZZ_nO79t9Hxqc-5" target="hDoWaCIZZ_nO79t9Hxqc-1" edge="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="2" y="-30" as="sourcePoint" /> + <mxPoint x="52" y="-80" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-8" value="" style="endArrow=none;dashed=1;html=1;rounded=0;fontSize=12;startSize=8;endSize=8;curved=1;exitX=1.022;exitY=0.288;exitDx=0;exitDy=0;exitPerimeter=0;entryX=-0.015;entryY=0.632;entryDx=0;entryDy=0;entryPerimeter=0;" parent="1" source="hDoWaCIZZ_nO79t9Hxqc-6" target="hDoWaCIZZ_nO79t9Hxqc-1" edge="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="-293" y="-157" as="sourcePoint" /> + <mxPoint x="54" y="-73" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-9" value="" style="endArrow=none;html=1;rounded=0;fontSize=12;startSize=8;endSize=8;curved=1;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" parent="1" source="hDoWaCIZZ_nO79t9Hxqc-2" target="hDoWaCIZZ_nO79t9Hxqc-1" edge="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="67" y="28" as="sourcePoint" /> + <mxPoint x="117" y="-22" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-11" value="Inference Service for Automation Composition A" style="rounded=0;whiteSpace=wrap;html=1;fontSize=16;fillColor=#fff2cc;strokeColor=#d6b656;" parent="1" vertex="1"> + <mxGeometry x="430" y="352" width="141" height="60" as="geometry" /> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-12" value="Inference Service for Automation Composition B" style="rounded=0;whiteSpace=wrap;html=1;fontSize=16;fillColor=#f8cecc;strokeColor=#b85450;" parent="1" vertex="1"> + <mxGeometry x="591" y="352" width="141" height="60" as="geometry" /> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-15" value="" style="rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=none;endFill=0;sketch=0;sourcePerimeterSpacing=0;targetPerimeterSpacing=0;fontSize=12;startSize=8;endSize=8;curved=1;exitX=0.262;exitY=1.001;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" target="hDoWaCIZZ_nO79t9Hxqc-17" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="154" y="109" as="sourcePoint" /> + <mxPoint x="156" y="151" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-16" value="" style="rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=halfCircle;endFill=0;entryX=0.5;entryY=0.5;endSize=6;strokeWidth=1;sketch=0;fontSize=12;curved=1;exitX=0.416;exitY=0.012;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" target="hDoWaCIZZ_nO79t9Hxqc-17" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="154" y="201" as="sourcePoint" /> + </mxGeometry> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-17" value="" style="ellipse;whiteSpace=wrap;html=1;align=center;aspect=fixed;resizable=0;points=[];outlineConnect=0;sketch=0;fontSize=16;direction=south;fillColor=#B20000;fontColor=#ffffff;strokeColor=#B20000;strokeWidth=2;" parent="1" vertex="1"> + <mxGeometry x="149" y="150" width="10" height="10" as="geometry" /> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-18" value="" style="rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=none;endFill=0;sketch=0;sourcePerimeterSpacing=0;targetPerimeterSpacing=0;fontSize=12;startSize=8;endSize=8;curved=1;exitX=0.262;exitY=1.001;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" target="hDoWaCIZZ_nO79t9Hxqc-20" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="85" y="240" as="sourcePoint" /> + <mxPoint x="87" y="282" as="targetPoint" /> + <Array as="points"> + <mxPoint x="85" y="273" /> + </Array> + </mxGeometry> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-19" value="" style="rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=halfCircle;endFill=0;entryX=0.5;entryY=0.5;endSize=6;strokeWidth=1;sketch=0;fontSize=12;curved=1;exitX=0.416;exitY=0.012;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" target="hDoWaCIZZ_nO79t9Hxqc-20" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="85" y="332" as="sourcePoint" /> + </mxGeometry> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-20" value="" style="ellipse;whiteSpace=wrap;html=1;align=center;aspect=fixed;resizable=0;points=[];outlineConnect=0;sketch=0;fontSize=16;direction=south;fillColor=#B20000;fontColor=#ffffff;strokeColor=#B20000;strokeWidth=2;" parent="1" vertex="1"> + <mxGeometry x="80" y="281" width="10" height="10" as="geometry" /> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-21" value="" style="rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=none;endFill=0;sketch=0;sourcePerimeterSpacing=0;targetPerimeterSpacing=0;fontSize=12;startSize=8;endSize=8;curved=1;exitX=0.262;exitY=1.001;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" target="hDoWaCIZZ_nO79t9Hxqc-23" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="157" y="240" as="sourcePoint" /> + <mxPoint x="159" y="282" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-22" value="" style="rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=halfCircle;endFill=0;entryX=0.5;entryY=0.5;endSize=6;strokeWidth=1;sketch=0;fontSize=12;curved=1;exitX=0.416;exitY=0.012;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" target="hDoWaCIZZ_nO79t9Hxqc-23" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="157" y="332" as="sourcePoint" /> + </mxGeometry> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-23" value="" style="ellipse;whiteSpace=wrap;html=1;align=center;aspect=fixed;resizable=0;points=[];outlineConnect=0;sketch=0;fontSize=16;direction=south;fillColor=#B20000;fontColor=#ffffff;strokeColor=#B20000;strokeWidth=2;" parent="1" vertex="1"> + <mxGeometry x="152" y="281" width="10" height="10" as="geometry" /> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-24" value="" style="rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=none;endFill=0;sketch=0;sourcePerimeterSpacing=0;targetPerimeterSpacing=0;fontSize=12;startSize=8;endSize=8;curved=1;exitX=0.262;exitY=1.001;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" target="hDoWaCIZZ_nO79t9Hxqc-26" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="85" y="110" as="sourcePoint" /> + <mxPoint x="87" y="152" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-25" value="" style="rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=halfCircle;endFill=0;entryX=0.5;entryY=0.5;endSize=6;strokeWidth=1;sketch=0;fontSize=12;curved=1;exitX=0.416;exitY=0.012;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" target="hDoWaCIZZ_nO79t9Hxqc-26" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="85" y="202" as="sourcePoint" /> + </mxGeometry> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-26" value="" style="ellipse;whiteSpace=wrap;html=1;align=center;aspect=fixed;resizable=0;points=[];outlineConnect=0;sketch=0;fontSize=16;direction=south;fillColor=#B20000;fontColor=#ffffff;strokeColor=#B20000;strokeWidth=2;" parent="1" vertex="1"> + <mxGeometry x="80" y="151" width="10" height="10" as="geometry" /> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-29" value="Instantiation" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontSize=16;" parent="1" vertex="1"> + <mxGeometry x="-26" y="143" width="104" height="31" as="geometry" /> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-30" value="Instantiation" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontSize=16;" parent="1" vertex="1"> + <mxGeometry x="-26" y="274" width="104" height="31" as="geometry" /> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-31" value="Monitoring" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontSize=16;" parent="1" vertex="1"> + <mxGeometry x="159" y="139.5" width="93" height="31" as="geometry" /> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-32" value="Monitoring" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontSize=16;" parent="1" vertex="1"> + <mxGeometry x="162" y="270.5" width="93" height="31" as="geometry" /> + </mxCell> + <mxCell id="yh-L3AtmC00XoUG_2nvY-6" style="edgeStyle=none;curved=1;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;fontSize=12;startSize=8;endSize=8;" edge="1" parent="1" source="hDoWaCIZZ_nO79t9Hxqc-36" target="hDoWaCIZZ_nO79t9Hxqc-12"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="yh-L3AtmC00XoUG_2nvY-7" style="edgeStyle=none;curved=1;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.545;entryY=0.979;entryDx=0;entryDy=0;entryPerimeter=0;fontSize=12;startSize=8;endSize=8;" edge="1" parent="1" source="hDoWaCIZZ_nO79t9Hxqc-36" target="hDoWaCIZZ_nO79t9Hxqc-11"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-36" value="Kserve" style="rounded=0;whiteSpace=wrap;html=1;fontSize=16;fillColor=#b0e3e6;strokeColor=#0e8088;" parent="1" vertex="1"> + <mxGeometry x="511" y="453" width="141" height="60" as="geometry" /> + </mxCell> + <mxCell id="yh-L3AtmC00XoUG_2nvY-2" value="" style="group" vertex="1" connectable="0" parent="1"> + <mxGeometry x="8" y="333" width="243" height="183" as="geometry" /> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-4" value="" style="rounded=0;whiteSpace=wrap;html=1;fontSize=16;fillColor=#e1d5e7;strokeColor=#9673a6;" parent="yh-L3AtmC00XoUG_2nvY-2" vertex="1"> + <mxGeometry width="243" height="183" as="geometry" /> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-38" value="Kserve Paricipant" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontSize=16;" parent="yh-L3AtmC00XoUG_2nvY-2" vertex="1"> + <mxGeometry x="45" width="143" height="31" as="geometry" /> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-13" value="Kserve Automation Composition Element for Automation Composition A" style="rounded=0;whiteSpace=wrap;html=1;fontSize=16;fillColor=#fff2cc;strokeColor=#d6b656;" parent="yh-L3AtmC00XoUG_2nvY-2" vertex="1"> + <mxGeometry x="15" y="31" width="213" height="60" as="geometry" /> + </mxCell> + <mxCell id="hDoWaCIZZ_nO79t9Hxqc-14" value="Kserve Automation Composition Element for Automation Composition B" style="rounded=0;whiteSpace=wrap;html=1;fontSize=16;fillColor=#f8cecc;strokeColor=#b85450;" parent="yh-L3AtmC00XoUG_2nvY-2" vertex="1"> + <mxGeometry x="15.5" y="103" width="210.5" height="62" as="geometry" /> + </mxCell> + <mxCell id="yh-L3AtmC00XoUG_2nvY-5" style="edgeStyle=none;curved=1;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;fontSize=12;startSize=8;endSize=8;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" target="hDoWaCIZZ_nO79t9Hxqc-36"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="388" y="423" as="sourcePoint" /> + </mxGeometry> + </mxCell> + <mxCell id="yh-L3AtmC00XoUG_2nvY-3" value="K8s API" style="sketch=0;html=1;dashed=0;whitespace=wrap;fillColor=#2875E2;strokeColor=#ffffff;points=[[0.005,0.63,0],[0.1,0.2,0],[0.9,0.2,0],[0.5,0,0],[0.995,0.63,0],[0.72,0.99,0],[0.5,1,0],[0.28,0.99,0]];verticalLabelPosition=bottom;align=center;verticalAlign=top;shape=mxgraph.kubernetes.icon;prIcon=api;fontSize=16;" vertex="1" parent="1"> + <mxGeometry x="299" y="377" width="122" height="83" as="geometry" /> + </mxCell> + <mxCell id="yh-L3AtmC00XoUG_2nvY-9" style="edgeStyle=none;curved=1;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;fontSize=12;startSize=8;endSize=8;" edge="1" parent="1" source="hDoWaCIZZ_nO79t9Hxqc-4"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="322" y="425" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="yh-L3AtmC00XoUG_2nvY-10" value="REST" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontSize=16;" vertex="1" parent="1"> + <mxGeometry x="252" y="393" width="61" height="31" as="geometry" /> + </mxCell> + <mxCell id="yh-L3AtmC00XoUG_2nvY-12" value="K8s Cluster" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontSize=16;" vertex="1" parent="1"> + <mxGeometry x="646" y="-200" width="101" height="31" as="geometry" /> + </mxCell> + </root> + </mxGraphModel> + </diagram> +</mxfile> diff --git a/docs/clamp/acm/images/participants/sim-participant.png b/docs/clamp/acm/images/participants/sim-participant.png Binary files differnew file mode 100644 index 00000000..8ceabb16 --- /dev/null +++ b/docs/clamp/acm/images/participants/sim-participant.png |