aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrameshiyer27 <ramesh.murugan.iyer@est.tech>2023-06-19 23:25:38 +0100
committerrameshiyer27 <ramesh.murugan.iyer@est.tech>2023-06-22 12:36:50 +0100
commit90f91bdbf54bb36fc379151076e25bdcb0903290 (patch)
tree9d1d52bcee85604248b7215f01e2440358c9b826
parent2aeb3766cac7bf2e14fce5080aeb0cb7d4e22a9d (diff)
Add documentation for ACM failure handling
Issue-ID: POLICY-4713 Signed-off-by: zrrmmua <ramesh.murugan.iyer@est.tech> Change-Id: I7d3bf6e8455c5af377abffe1f321be80cd061ce0
-rw-r--r--.readthedocs.yaml10
-rw-r--r--docs/clamp/acm/api-protocol/system-level-dialogues.rst42
-rw-r--r--docs/clamp/acm/images/system-dialogues/FailedAcmResult.pngbin0 -> 29454 bytes
-rw-r--r--docs/clamp/acm/images/system-dialogues/SuccessAcmResult.pngbin0 -> 30511 bytes
-rw-r--r--docs/clamp/acm/images/system-dialogues/TimeoutAcmResult.pngbin0 -> 35036 bytes
5 files changed, 45 insertions, 7 deletions
diff --git a/.readthedocs.yaml b/.readthedocs.yaml
index 7f740b76..e49b4bfb 100644
--- a/.readthedocs.yaml
+++ b/.readthedocs.yaml
@@ -7,15 +7,13 @@
version: 2
build:
- image: latest
+ os: ubuntu-20.04
+ tools:
+ python: "3.8"
python:
- version: 3.7
install:
- - requirements: docs/requirements-docs.txt
-
-submodules:
- include: all
+ - requirements: docs/requirements-docs.txt
sphinx:
configuration: docs/conf.py
diff --git a/docs/clamp/acm/api-protocol/system-level-dialogues.rst b/docs/clamp/acm/api-protocol/system-level-dialogues.rst
index e3ee09ab..6be26e18 100644
--- a/docs/clamp/acm/api-protocol/system-level-dialogues.rst
+++ b/docs/clamp/acm/api-protocol/system-level-dialogues.rst
@@ -211,8 +211,48 @@ The ACM Runtime receives and stores the responses.
.. image:: ../images/system-dialogues/UpdateUsageState.png
-End of Document
+3.11 Failure handling in ACM
+----------------------------
+After any ACM operation is completed, one of the following result messages will be updated in the ACM. These result values are
+updated along with the overall state of the ACM instance.
+
+ - NO_ERROR
+ - TIMEOUT
+ - FAILED
+
+The enum result values 'NO_ERROR' and 'FAILED' have to be set by the participants while reporting the CompositionState back to the runtime.
+
+If the operation succeeds, the participant is required to update the result value with 'NO_ERROR' while reporting the composition state.
+
+.. image:: ../images/system-dialogues/SuccessAcmResult.png
+
+The result value should be updated as 'FAILED' by the participants when any failures occurred.
+Also in case of failures, the overall state of the composition remains in any of the transitioning states (DEPLOYING, UNDEPLOYING, PRIMING, UPDATING)
+with the appropriate result values updated by the participant.
+
+.. image:: ../images/system-dialogues/FailedAcmResult.png
+Runtime marks the operation result with the value 'TIMEOUT' when the participant gets disconnected from the ACM-R in the middle of any ACM operation.
+When the participant fails to report the periodic heartbeat during an ACM operation, the operation result is then marked as 'TIMEOUT' by the ACM-R after the configured waiting limit is
+reached.
+
+.. image:: ../images/system-dialogues/TimeoutAcmResult.png
+
+The following parameter is set in the application properties for the runtime to configure the 'TIMEOUT' value in milliseconds.
+
+.. code-block:: yaml
+
+ runtime:
+ participantParameters:
+ maxStatusWaitMs: 100000 --> Denotes the maximum wait time by the runtime to receive the periodic status update from the participants
+
+An ACM operation has to be completed and updated with any of the above specified result values in order to allow the user to trigger subsequent requests.
+The user cannot trigger any state change events before the operation gets completed. When an operation is marked 'TIMEOUT', the following scenarios are applicable.
+
+ - The participant might come back ONLINE and complete the operation to mark the result with 'NO_ERROR' or 'FAILED'
+ - The user can trigger another state change event to the ACM.
+
+End of Document
diff --git a/docs/clamp/acm/images/system-dialogues/FailedAcmResult.png b/docs/clamp/acm/images/system-dialogues/FailedAcmResult.png
new file mode 100644
index 00000000..4fbd81a0
--- /dev/null
+++ b/docs/clamp/acm/images/system-dialogues/FailedAcmResult.png
Binary files differ
diff --git a/docs/clamp/acm/images/system-dialogues/SuccessAcmResult.png b/docs/clamp/acm/images/system-dialogues/SuccessAcmResult.png
new file mode 100644
index 00000000..bd4d1441
--- /dev/null
+++ b/docs/clamp/acm/images/system-dialogues/SuccessAcmResult.png
Binary files differ
diff --git a/docs/clamp/acm/images/system-dialogues/TimeoutAcmResult.png b/docs/clamp/acm/images/system-dialogues/TimeoutAcmResult.png
new file mode 100644
index 00000000..d27cfdd4
--- /dev/null
+++ b/docs/clamp/acm/images/system-dialogues/TimeoutAcmResult.png
Binary files differ