Documentation for DistributeTraffic LCM action
This change modifies APPC LCM API Guide and APPC CDT User Guide
with descriptions for new DistributeTraffic LCM API
Change-Id: Ieb945976821369728c6a4e96437acce920a2ff1a
Issue-ID: APPC-1171
Signed-off-by: Lukasz Rajewski <lukasz.rajewski@orange.com>
diff --git a/docs/APPC CDT Guide/APPC CDT Guide.rst b/docs/APPC CDT Guide/APPC CDT Guide.rst
index 9f8ceaa..3a20eb4 100644
--- a/docs/APPC CDT Guide/APPC CDT Guide.rst
+++ b/docs/APPC CDT Guide/APPC CDT Guide.rst
@@ -413,6 +413,8 @@
+----------------------------------------+---------------+---------------+------------+------------+----------------+---------------+
| **DetachVolume** | | | | | YES | |
+----------------------------------------+---------------+---------------+------------+------------+----------------+---------------+
+| **DistributeTraffic** | | YES | YES | | | |
++----------------------------------------+---------------+---------------+------------+------------+----------------+---------------+
| **Evacuate** | | | | | YES | |
+----------------------------------------+---------------+---------------+------------+------------+----------------+---------------+
| **HealthCheck** | | YES | YES | YES | | |
diff --git a/docs/APPC LCM API Guide/APPC LCM API Guide.rst b/docs/APPC LCM API Guide/APPC LCM API Guide.rst
index 45cb047..79a3012 100644
--- a/docs/APPC LCM API Guide/APPC LCM API Guide.rst
+++ b/docs/APPC LCM API Guide/APPC LCM API Guide.rst
@@ -572,6 +572,8 @@
+------------------------+-----------+------------------+----------------+----------+------------------------------------------------------------+
| DetachVolume | | | | Yes | Any (uses OpenStack command) |
+------------------------+-----------+------------------+----------------+----------+------------------------------------------------------------+
+| DistributeTraffic | Yes | | Yes | Yes | Chef and Ansible only (requires self-service onboarding) |
++------------------------+-----------+------------------+----------------+----------+------------------------------------------------------------+
| Evacuate | | | | Yes | Any (uses OpenStack command) |
+------------------------+-----------+------------------+----------------+----------+------------------------------------------------------------+
| HealthCheck | Yes | | | | Any (requires self-service onboarding) |
@@ -1178,6 +1180,48 @@
- itemNotFound
- conflict
+DistributeTraffic
+-----------------
+
+The Distribute traffic LCM action is used to distribute traffic across different instances of VNF, VNFC or VM.
+Entity for which Distribute Traffic LCM action is being invoked is called an anchor point that is responsible for final
+realization of request. Parameters present in configuration file specify where and how traffic should be distributed,
+including: traffic destination points like VNFs, VNFCs or VMs; distribution weights; rollback strategy.
+Format of configuration file is specific to each VNF type.
+
+This command is executed using an Ansible playbook or Chef cookbook.
+
+Request Structure:
+
++--------------------------+--------------------------------------------------------------+
+| **Target URL** | /restconf/operations/appc-provider-lcm:distribute-traffic |
++--------------------------+--------------------------------------------------------------+
+| **Action** | DistributeTraffic |
++--------------------------+--------------------------------------------------------------+
+| **Action-identifiers** | vnf-id, vserver-id, vnfc-name |
++--------------------------+--------------------------------------------------------------+
+| **Payload Parameters** | ConfigFileName |
++--------------------------+--------------------------------------------------------------+
+| **Revision History** | New in Casablanca |
++--------------------------+--------------------------------------------------------------+
+
+Request Payload Parameters:
+
++-----------------------+----------------------------------------------------------------------------------------------------+---------------------+--------------------------------------------------------+
+| **Parameter** | **Description** | **Required?** | **Example** |
++=======================+====================================================================================================+=====================+========================================================+
+| ConfigFileName | Name of configuration file with additional parameters for Ansible playbook or Chef cookbook | | "payload": |
+| | with such parameters like traffic destinations, distribution weights or rollback strategy. | Yes | "{\\"ConfigFileName\\": \\"some-config.json\\"}” |
++-----------------------+----------------------------------------------------------------------------------------------------+---------------------+--------------------------------------------------------+
+
+DistributeTraffic Response
+^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+The response does not include any payload parameters.
+
+**Success:** A successful distribute returns a success status code 400 after all traffic has been distributed.
+
+**Failure:** A failed distribute returns a failure code 401 and the failure message from the Ansible or Chef server in the response payload block.
Evacuate
--------