From: egernug Date: Tue, 25 Apr 2023 10:19:58 +0000 (+0100) Subject: [SO] Documentation for ASD/CNFM X-Git-Tag: 1.12.2~6^2 X-Git-Url: https://gerrit.onap.org/r/gitweb?p=so.git;a=commitdiff_plain;h=a42df0d56837fde7433e8dd3ea27336abe3d67d9 [SO] Documentation for ASD/CNFM Documentation in SO repo relating to ASD and CNFM Issue-ID: SO-4048 Signed-off-by: egernug Change-Id: I8a71931d00c7328c15a4b46daa14e5b62ab2a5d8 --- diff --git a/docs/api/apis/serviceInstances-api.rst b/docs/api/apis/serviceInstances-api.rst index 15ed3932fd..6f7e787207 100644 --- a/docs/api/apis/serviceInstances-api.rst +++ b/docs/api/apis/serviceInstances-api.rst @@ -25,6 +25,8 @@ links: - :ref:`delete_vf_module` - :ref:`create_vnf` - :ref:`delete_vnf` +- :ref:`create_cnf` +- :ref:`delete_cnf` - :ref:`get_orchestration_request_by_id` - :ref:`get_orchestration_request_all` - :ref:`healthCheck` @@ -941,6 +943,244 @@ UserParams Object |value |String |Value of the tag | +-------------------------+------------------+-------------------------------------------------+ +.. _create_cnf: + +Create CNF +++++++++++ + ++--------------------+-------------------------------------------------------------------------------------+ +|Interface Definition|Description | ++====================+=====================================================================================+ +|URI |/onap/so/infra/serviceInstantiation/v7/serviceInstances/{serviceInstanceId}/cnfs | ++--------------------+-------------------------------------------------------------------------------------+ +|Operation Type |POST | ++--------------------+-------------------------------------------------------------------------------------+ +|Content-Type |application/json | ++--------------------+-------------------------------------------------------------------------------------+ + +Request Headers: + ++-------------------+---------+-----------------------------------------------------------------------------------------+ +|Header Name |Required |Description | ++===================+=========+=========================================================================================+ +|Authorization |Y |Base64 encoded username:password | ++-------------------+---------+-----------------------------------------------------------------------------------------+ + +Request Body: + ++----------------+---------+-----------+--------------------------+-------------------------------------------+ +|Attribute |Qualifier|Cardinality|Content |Description | ++================+=========+===========+==========================+===========================================+ +|requestDetails |M |1 |requestDetails Object |Content of requestDetails object. | ++----------------+---------+-----------+--------------------------+-------------------------------------------+ + +RequestDetails Object + ++-------------------+--------------------------+-------------------------------------------------+ +|Attribute |Content |Description | ++===================+==========================+=================================================+ +|modelInfo |modelInfo Object |Content of modelInfo object. | ++-------------------+--------------------------+-------------------------------------------------+ +|requestInfo |requestInfo Object |Content of requestInfo object. | ++-------------------+--------------------------+-------------------------------------------------+ +|requestParameters |requestParameters Object |Content of requestParameters object. | ++-------------------+--------------------------+-------------------------------------------------+ +|relatedInstanceList|relatedInstanceList Object|Content of relatedInstanceList object. | ++-------------------+--------------------------+-------------------------------------------------+ +|cloudConfiguration |cloudConfiguration Object |Content of cloudConfiguration object. | ++-------------------+--------------------------+-------------------------------------------------+ +|platform |platform Object |Content of platform object. | ++-------------------+--------------------------+-------------------------------------------------+ +|lineOfBusiness |lineOfBusiness Object |Content of lineOfBusiness object. | ++-------------------+--------------------------+-------------------------------------------------+ + +ModelInfo Object + ++-------------------------+------------------+-------------------------------------------------+ +|Attribute |Content |Description | ++=========================+==================+=================================================+ +|modelType |String |Type of model | ++-------------------------+------------------+-------------------------------------------------+ +|modelInvariantId |String |The Model Invariant Id. | ++-------------------------+------------------+-------------------------------------------------+ +|modelName |String |Name of the Model | ++-------------------------+------------------+-------------------------------------------------+ +|modelVersion |String |Version of the model | ++-------------------------+------------------+-------------------------------------------------+ +|modelCustomizationName |String |The Model Customization name | ++-------------------------+------------------+-------------------------------------------------+ +|modelVersionId |String |The Model version id | ++-------------------------+------------------+-------------------------------------------------+ + +CloudConfiguration Object + ++-------------------------+------------------+-------------------------------------------------+ +|Attribute |Content |Description | ++=========================+==================+=================================================+ +|lcpCloudRegionId |String |CloudRegion Id (in A&AI) | ++-------------------------+------------------+-------------------------------------------------+ +|tenantId |String |Name of the Subscriber | ++-------------------------+------------------+-------------------------------------------------+ +|cloudOwner |String |Name of the cloud owner | ++-------------------------+------------------+-------------------------------------------------+ + +RequestInfo Object + ++-------------------------+------------------+-------------------------------------------------+ +|Attribute |Content |Description | ++=========================+==================+=================================================+ +|source |String |source of the request | ++-------------------------+------------------+-------------------------------------------------+ +|productFamilyId |String |productFamilyId of the request | ++-------------------------+------------------+-------------------------------------------------+ +|instanceName |String |instanceName of the request | ++-------------------------+------------------+-------------------------------------------------+ +|suppressRollback |String |suppressRollback of the request | ++-------------------------+------------------+-------------------------------------------------+ +|requestorId |String |requestorId of the request | ++-------------------------+------------------+-------------------------------------------------+ + +relatedInstance List + ++-------------------------+------------------+-------------------------------------------------+ +|Attribute |Content |Description | ++=========================+==================+=================================================+ +|relatedInstance |Object |relatedInstance Object | ++-------------------------+------------------+-------------------------------------------------+ + +relatedInstance List + ++-------------------------+------------------+-------------------------------------------------+ +|Attribute |Content |Description | ++=========================+==================+=================================================+ +|instanceId |String |instanceId | ++-------------------------+------------------+-------------------------------------------------+ +|modelInfo |Object |Content of modelInfo object. | ++-------------------------+------------------+-------------------------------------------------+ + +RequestParameters Object + ++-------------------------+------------------+-------------------------------------------------+ +|Attribute |Content |Description | ++=========================+==================+=================================================+ +|userParams |Array |The product family Id. | ++-------------------------+------------------+-------------------------------------------------+ + +UserParams Object + ++-------------------------+------------------+-------------------------------------------------+ +|Attribute |Content |Description | ++=========================+==================+=================================================+ +|name |String |Tag name of attribute | ++-------------------------+------------------+-------------------------------------------------+ +|value |String |Value of the tag | ++-------------------------+------------------+-------------------------------------------------+ + +.. _delete_cnf: + +Delete CNF +++++++++++ + ++--------------------+-----------------------------------------------------------------------------------------------------+ +|Interface Definition|Description | ++====================+=====================================================================================================+ +|URI |/onap/so/infra/serviceInstantiation/v7/serviceInstances/{serviceInstanceId}/cnfs/{cnfInstanceId} | ++--------------------+-----------------------------------------------------------------------------------------------------+ +|Operation Type |DELETE | ++--------------------+-----------------------------------------------------------------------------------------------------+ +|Content-Type |application/json | ++--------------------+-----------------------------------------------------------------------------------------------------+ + +Request Headers: + ++-------------------+---------+-----------------------------------------------------------------------------------------+ +|Header Name |Required |Description | ++===================+=========+=========================================================================================+ +|Authorization |Y |Base64 encoded username:password | ++-------------------+---------+-----------------------------------------------------------------------------------------+ + +Request Body: + ++----------------+---------+-----------+--------------------------+-------------------------------------------+ +|Attribute |Qualifier|Cardinality|Content |Description | ++================+=========+===========+==========================+===========================================+ +|requestDetails |M |1 |requestDetails Object |Content of requestDetails object. | ++----------------+---------+-----------+--------------------------+-------------------------------------------+ + +RequestDetails Object + ++---------------------+-------------------------+-------------------------------------------------+ +|Attribute |Content |Description | ++=====================+=========================+=================================================+ +|modelInfo |modelInfo Object |Content of modelInfo object. | ++---------------------+-------------------------+-------------------------------------------------+ +|cloudConfiguration |cloudConfiguration Object|Content of cloudConfiguration object. | ++---------------------+-------------------------+-------------------------------------------------+ +|requestInfo |requestInfo Object |Content of requestInfo object. | ++---------------------+-------------------------+-------------------------------------------------+ +|requestParameters |requestParameters Object |Content of requestParameters object. | ++---------------------+-------------------------+-------------------------------------------------+ + +ModelInfo Object + ++-------------------------+------------------+-------------------------------------------------+ +|Attribute |Content |Description | ++=========================+==================+=================================================+ +|modelType |String |Type of model | ++-------------------------+------------------+-------------------------------------------------+ +|modelName |String |Name of the Model | ++-------------------------+------------------+-------------------------------------------------+ +|modelVersionId |String |The Model version id | ++-------------------------+------------------+-------------------------------------------------+ +|modelInvariantId |String |The Model Invariant Id. | ++-------------------------+------------------+-------------------------------------------------+ +|modelVersion |String |Version of the model | ++-------------------------+------------------+-------------------------------------------------+ +|modelCustomizationName |String |The Model Customization name | ++-------------------------+------------------+-------------------------------------------------+ +|modelCustomizationId |String |The Model Customization Id. | ++-------------------------+------------------+-------------------------------------------------+ + +CloudConfiguration Object + ++-------------------------+------------------+-------------------------------------------------+ +|Attribute |Content |Description | ++=========================+==================+=================================================+ +|lcpCloudRegionId |String |CloudRegion Id (in A&AI) | ++-------------------------+------------------+-------------------------------------------------+ +|tenantId |String |Name of the Subscriber | ++-------------------------+------------------+-------------------------------------------------+ +|cloudOwner |String |Name of the cloud owner | ++-------------------------+------------------+-------------------------------------------------+ + +RequestInfo Object + ++-------------------------+------------------+-------------------------------------------------+ +|Attribute |Content |Description | ++=========================+==================+=================================================+ +|source |String |source of the request | ++-------------------------+------------------+-------------------------------------------------+ +|requestId |String |request Id | ++-------------------------+------------------+-------------------------------------------------+ + +RequestParameters Object + ++-------------------------+------------------+-------------------------------------------------+ +|Attribute |Content |Description | ++=========================+==================+=================================================+ +|UserParams |Array |The product family Id. | ++-------------------------+------------------+-------------------------------------------------+ + +UserParams Object + ++-------------------------+------------------+-------------------------------------------------+ +|Attribute |Content |Description | ++=========================+==================+=================================================+ +|name |String |Tag name of attribute | ++-------------------------+------------------+-------------------------------------------------+ +|value |String |Value of the tag | ++-------------------------+------------------+-------------------------------------------------+ + .. _get_orchestration_request_by_id: GET Orchestration Request diff --git a/docs/developer_info/ASD_Overview.rst b/docs/developer_info/ASD_Overview.rst new file mode 100644 index 0000000000..70d9b6db4e --- /dev/null +++ b/docs/developer_info/ASD_Overview.rst @@ -0,0 +1,44 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. +.. http://creativecommons.org/licenses/by/4.0 +.. Copyright 2017 Huawei Technologies Co., Ltd. + +ASD Architecture +======================= + +ASD Overview +------------- +Application Service Descriptor (ASD) is a deployment descriptor for cloud native application/functions. It seeks to provide deployment using the minimum information needed by the orchestrator. +The CSAR package adheres to ETSI SOL004. +ASD minimizes duplication whilst leveraging the management capabilities of the Kubernets platfor. It provides a clear separation between high level orchestration and cloud native application deployment. + +ASD Architecture Overview +--------------------------- + +The following diagram depicts the ASD high-level architecture: + +CreateVfModuleVolumeInfraV1 is a main process flow. + +.. image:: ../images/asd_architecture.png + + +ASD Onboarding +--------------------- + +The following diagram depicts the ASD onboarding to ONAP SDC: + +.. image:: ../images/asd_onboarding.png + +ASD Orchestration by ONAP SO +--------------------------------- + +The following diagram depicts the ASD Orchestration by ONAP SO: + +.. image:: ../images/asd_orchestration.png + +SO CNFM +----------- + +The following diagram depicts the SO CNFM, an SO Plug-in component: + +.. image:: ../images/asd_cnfm.png + diff --git a/docs/developer_info/developer_information.rst b/docs/developer_info/developer_information.rst index 3f72b4bcf6..1c65f83545 100644 --- a/docs/developer_info/developer_information.rst +++ b/docs/developer_info/developer_information.rst @@ -32,4 +32,5 @@ SO Developer Information ETSI_CSIT_NFVO_VNFM.rst ETSI_NFVO_Network_Service_LCM_Setup_Guide.rst ETSI_VNF_LCM_Setup_Guide.rst + ASD_Overview.rst FAQs.rst diff --git a/docs/images/asd_architecture.png b/docs/images/asd_architecture.png new file mode 100644 index 0000000000..2fad790cdc Binary files /dev/null and b/docs/images/asd_architecture.png differ diff --git a/docs/images/asd_cnfm.png b/docs/images/asd_cnfm.png new file mode 100644 index 0000000000..da19ad5060 Binary files /dev/null and b/docs/images/asd_cnfm.png differ diff --git a/docs/images/asd_onboarding.png b/docs/images/asd_onboarding.png new file mode 100644 index 0000000000..297eff4422 Binary files /dev/null and b/docs/images/asd_onboarding.png differ diff --git a/docs/images/asd_orchestration.png b/docs/images/asd_orchestration.png new file mode 100644 index 0000000000..0cfcb1cab0 Binary files /dev/null and b/docs/images/asd_orchestration.png differ diff --git a/docs/tox.ini b/docs/tox.ini index 9b45c816d9..833cd33adc 100644 --- a/docs/tox.ini +++ b/docs/tox.ini @@ -12,7 +12,7 @@ deps = commands = sphinx-build -W -q -b html -n -d {envtmpdir}/doctrees ./ {toxinidir}/_build/html echo "Generated docs available in {toxinidir}/_build/html" -whitelist_externals = +allowlist_externals = echo git sh @@ -25,7 +25,7 @@ deps = -chttps://git.onap.org/doc/plain/etc/upper-constraints.onap.txt commands = echo "Link Checking not enforced" #commands = sphinx-build -W -q -b linkcheck -d {envtmpdir}/doctrees ./ {toxinidir}/_build/linkcheck -whitelist_externals = echo +allowlist_externals = echo [testenv:docs-spellcheck] basepython = python3.8