diff --git a/doc/source/cli/cli-etsi-vnflcm.rst b/doc/source/cli/cli-etsi-vnflcm.rst index 09eed7c0b..3524fd73c 100644 --- a/doc/source/cli/cli-etsi-vnflcm.rst +++ b/doc/source/cli/cli-etsi-vnflcm.rst @@ -1,9 +1,15 @@ -======================== -VNF Lifecycle Management -======================== +======================================= +VNF Lifecycle Management with v1 Tacker +======================================= This document describes how to manage VNF Lifecycle with CLI in Tacker. +.. note:: + + This is a document for Tacker v1 API. + See :doc:`/cli/v2/vnflcm` for Tacker v2 API. + + Prerequisites ------------- diff --git a/doc/source/cli/index.rst b/doc/source/cli/index.rst index 2784c1bf9..71eb4d989 100644 --- a/doc/source/cli/index.rst +++ b/doc/source/cli/index.rst @@ -23,7 +23,7 @@ Operations for ETSI NFV-SOL implementation .. toctree:: cli-etsi-vnfpkgm - cli-etsi-vnflcm + vnflcm-index cli-etsi-vnffm cli-etsi-vnfpm diff --git a/doc/source/cli/v2/vnflcm.rst b/doc/source/cli/v2/vnflcm.rst new file mode 100644 index 000000000..ed5dcae6a --- /dev/null +++ b/doc/source/cli/v2/vnflcm.rst @@ -0,0 +1,1677 @@ +======================================= +VNF Lifecycle Management with v2 Tacker +======================================= + +This document describes how to manage VNF Lifecycle with CLI in Tacker v2 API. + +.. note:: + + The content of this document has been confirmed to work + using the following VNF Packages. + + * `basic_lcms_max_individual_vnfc for 2023.2 Bobcat`_ + * `userdata_standard for 2023.2 Bobcat`_ + * `userdata_standard_change_vnfpkg_nw for 2023.2 Bobcat`_ + + +Prerequisites +------------- + +The following packages should be installed: + +* tacker +* python-tackerclient + +A default VIM should be registered according to +:doc:`/cli/cli-legacy-vim`. + +CLI Reference for VNF Lifecycle Management +------------------------------------------ + +.. note:: + + Commands call version 1 VNF LCM APIs by default. + You can call the version 2 VNF LCM APIs + by using the option **\-\-os-tacker-api-version 2**. + + +1. Create VNF Identifier +^^^^^^^^^^^^^^^^^^^^^^^^ + +The `VNFD_ID` should be replaced with the VNFD ID in VNF Package. + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 create VNFD_ID + + +Result: + +.. code-block:: console + + +-----------------------------+------------------------------------------------------------------------------------------------------------------+ + | Field | Value | + +-----------------------------+------------------------------------------------------------------------------------------------------------------+ + | ID | 7be9dcc0-e772-4e24-9e10-c52b525a1bf1 | + | Instantiation State | NOT_INSTANTIATED | + | Links | { | + | | "self": { | + | | "href": "http://127.0.0.1:9890/vnflcm/v2/vnf_instances/7be9dcc0-e772-4e24-9e10-c52b525a1bf1" | + | | }, | + | | "instantiate": { | + | | "href": "http://127.0.0.1:9890/vnflcm/v2/vnf_instances/7be9dcc0-e772-4e24-9e10-c52b525a1bf1/instantiate" | + | | } | + | | } | + | VNF Configurable Properties | | + | VNF Instance Description | | + | VNF Instance Name | | + | VNF Product Name | Sample VNF | + | VNF Provider | Company | + | VNF Software Version | 1.0 | + | VNFD ID | b1bb0ce7-ebca-4fa7-95ed-4840d70a1177 | + | VNFD Version | 1.0 | + +-----------------------------+------------------------------------------------------------------------------------------------------------------+ + + +Help: + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 create --help + usage: openstack vnflcm create [-h] [-f {json,shell,table,value,yaml}] [-c COLUMN] [--noindent] [--prefix PREFIX] + [--max-width ] [--fit-width] [--print-empty] [--name ] + [--description ] [--I ] + + + Create a new VNF Instance + + positional arguments: + Identifier that identifies the VNFD which defines the VNF instance to be created. + + options: + -h, --help show this help message and exit + --name + Name of the VNF instance to be created. + --description + Description of the VNF instance to be created. + --I + Instantiate VNF subsequently after it's creation. Specify instantiate request parameters in a json file. + + output formatters: + output formatter options + + -f {json,shell,table,value,yaml}, --format {json,shell,table,value,yaml} + the output format, defaults to table + -c COLUMN, --column COLUMN + specify the column(s) to include, can be repeated to show multiple columns + + json formatter: + --noindent whether to disable indenting the JSON + + shell formatter: + a format a UNIX shell can parse (variable="value") + + --prefix PREFIX + add a prefix to all variable names + + table formatter: + --max-width + Maximum display width, <1 to disable. You can also use the CLIFF_MAX_TERM_WIDTH environment variable, but the + parameter takes precedence. + --fit-width Fit the table to the display width. Implied if --max-width greater than 0. Set the environment variable + CLIFF_FIT_WIDTH=1 to always enable + --print-empty Print empty table if there is no data to show. + + This command is provided by the python-tackerclient plugin. + + +2. Instantiate VNF +^^^^^^^^^^^^^^^^^^ + +The `VNF_INSTANCE_ID` and `SAMPLE_PARAM_FILE.json` should be replaced with +the ID of VNF instance and the path of parameter json file +that will be used to instantiate VNF, respectively. + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 instantiate VNF_INSTANCE_ID \ + SAMPLE_PARAM_FILE.json + + +Result: + +.. code-block:: console + + Instantiate request for VNF Instance 7be9dcc0-e772-4e24-9e10-c52b525a1bf1 has been accepted. + + +Help: + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 instantiate --help + usage: openstack vnflcm instantiate [-h] + + Instantiate a VNF Instance + + positional arguments: + + VNF instance ID to instantiate + Specify instantiate request parameters in a json file. + + options: + -h, --help show this help message and exit + + This command is provided by the python-tackerclient plugin. + + +3. List VNF +^^^^^^^^^^^ + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 list + + +Result: + +.. code-block:: console + + +--------------------------------------+-------------------+---------------------+--------------+----------------------+------------------+--------------------------------------+ + | ID | VNF Instance Name | Instantiation State | VNF Provider | VNF Software Version | VNF Product Name | VNFD ID | + +--------------------------------------+-------------------+---------------------+--------------+----------------------+------------------+--------------------------------------+ + | 7be9dcc0-e772-4e24-9e10-c52b525a1bf1 | | INSTANTIATED | Company | 1.0 | Sample VNF | b1bb0ce7-ebca-4fa7-95ed-4840d70a1177 | + +--------------------------------------+-------------------+---------------------+--------------+----------------------+------------------+--------------------------------------+ + + +Help: + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 list --help + usage: openstack vnflcm list [-h] [-f {csv,json,table,value,yaml}] [-c COLUMN] [--quote {all,minimal,none,nonnumeric}] [--noindent] [--max-width ] [--fit-width] [--print-empty] + [--sort-column SORT_COLUMN] [--sort-ascending | --sort-descending] + + List VNF Instance + + options: + -h, --help show this help message and exit + + output formatters: + output formatter options + + -f {csv,json,table,value,yaml}, --format {csv,json,table,value,yaml} + the output format, defaults to table + -c COLUMN, --column COLUMN + specify the column(s) to include, can be repeated to show multiple columns + --sort-column SORT_COLUMN + specify the column(s) to sort the data (columns specified first have a priority, non-existing columns are ignored), can be repeated + --sort-ascending sort the column(s) in ascending order + --sort-descending sort the column(s) in descending order + + CSV Formatter: + --quote {all,minimal,none,nonnumeric} + when to include quotes, defaults to nonnumeric + + json formatter: + --noindent whether to disable indenting the JSON + + table formatter: + --max-width + Maximum display width, <1 to disable. You can also use the CLIFF_MAX_TERM_WIDTH environment variable, but the parameter takes precedence. + --fit-width Fit the table to the display width. Implied if --max-width greater than 0. Set the environment variable CLIFF_FIT_WIDTH=1 to always enable + --print-empty Print empty table if there is no data to show. + + This command is provided by the python-tackerclient plugin. + + +4. Show VNF +^^^^^^^^^^^ + +The `VNF_INSTANCE_ID` should be replaced with the ID of VNF instance. + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 show VNF_INSTANCE_ID + + +Result: + +.. code-block:: console + + +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------+ + | Field | Value | + +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------+ + | ID | 7be9dcc0-e772-4e24-9e10-c52b525a1bf1 | + | Instantiated Vnf Info | { | + | | "flavourId": "simple", | + | | "vnfState": "STARTED", | + | | "scaleStatus": [ | + | | { | + | | "aspectId": "VDU1_scale", | + | | "scaleLevel": 0 | + | | } | + | | ], | + | | "maxScaleLevels": [ | + | | { | + | | "aspectId": "VDU1_scale", | + | | "scaleLevel": 2 | + | | } | + | | ], | + | | "vnfcResourceInfo": [ | + | | { | + | | "id": "c9e3f4b4-d1ed-4a2d-98c3-2a654ab27f2a", | + | | "vduId": "VDU1", | + | | "computeResource": { | + | | "vimConnectionId": "default", | + | | "resourceId": "c9e3f4b4-d1ed-4a2d-98c3-2a654ab27f2a", | + | | "vimLevelResourceType": "OS::Nova::Server" | + | | }, | + | | "vnfcCpInfo": [ | + | | { | + | | "id": "CP1-c9e3f4b4-d1ed-4a2d-98c3-2a654ab27f2a", | + | | "cpdId": "CP1" | + | | } | + | | ], | + | | "metadata": { | + | | "creation_time": "2024-04-26T02:22:57Z", | + | | "stack_id": "vnf-7be9dcc0-e772-4e24-9e10-c52b525a1bf1-VDU1-hfkrj4pxccl6/a2a0ca88-948d-460a-a8a1-1f689cae481a", | + | | "vdu_idx": null, | + | | "flavor": "m1.tiny", | + | | "image-VDU1": "cirros-0.5.2-x86_64-disk" | + | | } | + | | } | + | | ], | + | | "vnfVirtualLinkResourceInfo": [ | + | | { | + | | "id": "768c130a-8a72-49ea-9e4e-609e93077342", | + | | "vnfVirtualLinkDescId": "internalVL1", | + | | "networkResource": { | + | | "vimConnectionId": "default", | + | | "resourceId": "768c130a-8a72-49ea-9e4e-609e93077342", | + | | "vimLevelResourceType": "OS::Neutron::Net" | + | | } | + | | } | + | | ], | + | | "vnfcInfo": [ | + | | { | + | | "id": "VDU1-c9e3f4b4-d1ed-4a2d-98c3-2a654ab27f2a", | + | | "vduId": "VDU1", | + | | "vnfcResourceInfoId": "c9e3f4b4-d1ed-4a2d-98c3-2a654ab27f2a", | + | | "vnfcState": "STARTED" | + | | } | + | | ], | + | | "metadata": { | + | | "stack_id": "fd51b123-1b28-4ab4-ab01-5024fea4f125", | + | | "nfv": { | + | | "VDU": { | + | | "VDU1": { | + | | "computeFlavourId": "m1.tiny", | + | | "vcImageId": "cirros-0.5.2-x86_64-disk" | + | | } | + | | } | + | | }, | + | | "tenant": "nfv" | + | | } | + | | } | + | Instantiation State | INSTANTIATED | + | Links | { | + | | "self": { | + | | "href": "http://127.0.0.1:9890/vnflcm/v2/vnf_instances/7be9dcc0-e772-4e24-9e10-c52b525a1bf1" | + | | }, | + | | "terminate": { | + | | "href": "http://127.0.0.1:9890/vnflcm/v2/vnf_instances/7be9dcc0-e772-4e24-9e10-c52b525a1bf1/terminate" | + | | }, | + | | "scale": { | + | | "href": "http://127.0.0.1:9890/vnflcm/v2/vnf_instances/7be9dcc0-e772-4e24-9e10-c52b525a1bf1/scale" | + | | }, | + | | "heal": { | + | | "href": "http://127.0.0.1:9890/vnflcm/v2/vnf_instances/7be9dcc0-e772-4e24-9e10-c52b525a1bf1/heal" | + | | }, | + | | "changeExtConn": { | + | | "href": "http://127.0.0.1:9890/vnflcm/v2/vnf_instances/7be9dcc0-e772-4e24-9e10-c52b525a1bf1/change_ext_conn" | + | | } | + | | } | + | VIM Connection Info | { | + | | "default": { | + | | "vimId": "7a1fc3d6-7bbc-4f6c-9efa-9086a9fd8fbc", | + | | "vimType": "ETSINFV.OPENSTACK_KEYSTONE.V_3", | + | | "interfaceInfo": { | + | | "endpoint": "http://127.0.0.1/identity/v3", | + | | "skipCertificateHostnameCheck": true, | + | | "skipCertificateVerification": true | + | | }, | + | | "accessInfo": { | + | | "username": "nfv_user", | + | | "region": "RegionOne", | + | | "project": "nfv", | + | | "projectDomain": "default", | + | | "userDomain": "default" | + | | }, | + | | "extra": {} | + | | } | + | | } | + | VNF Configurable Properties | | + | VNF Instance Description | | + | VNF Instance Name | | + | VNF Product Name | Sample VNF | + | VNF Provider | Company | + | VNF Software Version | 1.0 | + | VNFD ID | b1bb0ce7-ebca-4fa7-95ed-4840d70a1177 | + | VNFD Version | 1.0 | + +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------+ + + +Help: + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 show --help + usage: openstack vnflcm show [-h] [-f {json,shell,table,value,yaml}] [-c COLUMN] [--noindent] [--prefix PREFIX] [--max-width ] [--fit-width] [--print-empty] + + + Display VNF instance details + + positional arguments: + + VNF instance ID to display + + options: + -h, --help show this help message and exit + + output formatters: + output formatter options + + -f {json,shell,table,value,yaml}, --format {json,shell,table,value,yaml} + the output format, defaults to table + -c COLUMN, --column COLUMN + specify the column(s) to include, can be repeated to show multiple columns + + json formatter: + --noindent whether to disable indenting the JSON + + shell formatter: + a format a UNIX shell can parse (variable="value") + + --prefix PREFIX + add a prefix to all variable names + + table formatter: + --max-width + Maximum display width, <1 to disable. You can also use the CLIFF_MAX_TERM_WIDTH environment variable, but the parameter takes precedence. + --fit-width Fit the table to the display width. Implied if --max-width greater than 0. Set the environment variable CLIFF_FIT_WIDTH=1 to always enable + --print-empty Print empty table if there is no data to show. + + This command is provided by the python-tackerclient plugin. + + +5. Terminate VNF +^^^^^^^^^^^^^^^^ + +The `VNF_INSTANCE_ID` should be replaced with the ID of VNF instance. + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 terminate VNF_INSTANCE_ID + + +Result: + +.. code-block:: console + + Terminate request for VNF Instance '7be9dcc0-e772-4e24-9e10-c52b525a1bf1' has been accepted. + + +Help: + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 terminate --help + usage: openstack vnflcm terminate [-h] [--termination-type ] [--graceful-termination-timeout ] [--D] + + Terminate a VNF instance + + positional arguments: + + VNF instance ID to terminate + + options: + -h, --help show this help message and exit + --termination-type + Termination type can be 'GRACEFUL' or 'FORCEFUL'. Default is 'GRACEFUL' + --graceful-termination-timeout + This attribute is only applicable in case of graceful termination. It defines the time to wait for the VNF to be taken out of service before shutting down the VNF + and releasing the resources. The unit is seconds. + --D Delete VNF Instance subsequently after it's termination + + This command is provided by the python-tackerclient plugin. + + +6. Delete VNF Identifier +^^^^^^^^^^^^^^^^^^^^^^^^ + +The `VNF_INSTANCE_ID` should be replaced with the ID of VNF instance. + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 delete VNF_INSTANCE_ID + + +Result: + +.. code-block:: console + + Vnf instance '7be9dcc0-e772-4e24-9e10-c52b525a1bf1' is deleted successfully + + +Help: + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 delete --help + usage: openstack vnflcm delete [-h] [ ...] + + Delete VNF Instance(s) + + positional arguments: + + VNF instance ID(s) to delete + + options: + -h, --help show this help message and exit + + This command is provided by the python-tackerclient plugin. + + +7. Heal VNF +^^^^^^^^^^^ + +The `VNF_INSTANCE_ID` should be replaced with the ID of VNF instance. + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 heal VNF_INSTANCE_ID + + +.. note:: + + should either be given before \-\-vnfc-instance + parameter or it should be separated with '\-\-' separator in + order to come after \-\-vnfc-instance parameter. + + +Result: + +.. code-block:: console + + Heal request for VNF Instance d44e9511-1857-4530-8a5e-1b28a6e5a744 has been accepted. + + +Help: + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 heal --help + usage: openstack vnflcm heal [-h] [--cause CAUSE] + [--vnfc-instance [ ...]] + [--additional-param-file ] + -- + + Heal VNF Instance + + positional arguments: + + VNF instance ID to heal + + options: + -h, --help show this help message and exit + --cause CAUSE + Specify the reason why a healing procedure is required. + --vnfc-instance [ ...] + List of VNFC instances requiring a healing action. + --additional-param-file + Additional parameters passed by the NFVO as input to the healing process. + + This command is provided by the python-tackerclient plugin. + + +8. Update VNF +^^^^^^^^^^^^^ + +The `VNF_INSTANCE_ID` and `SAMPLE_PARAM_FILE.json` should be replaced with +the ID of VNF instance and the name of parameter json file +that will be used to update VNF, respectively. + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 update VNF_INSTANCE_ID --I SAMPLE_PARAM_FILE.json + + +Result: + +.. code-block:: console + + Update vnf:d44e9511-1857-4530-8a5e-1b28a6e5a744 + + +Help: + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 update --help + usage: openstack vnflcm update [-h] [--I ] + + Update VNF Instance + + positional arguments: + + VNF instance ID to update. + + options: + -h, --help show this help message and exit + --I + Specify update request parameters in a json file. + + This command is provided by the python-tackerclient plugin. + + +9. Scale VNF +^^^^^^^^^^^^ + +The `VNF_INSTANCE_ID` and `WORKER_INSTANCE` should be replaced with +the ID of VNF instance and the ID of the target scaling group, respectively. +See 'How to Identify ASPECT_ID' in :doc:`/user/v2/vnf/scale/index` for details. + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 scale --type SCALE_OUT --aspect-id WORKER_INSTANCE \ + VNF_INSTANCE_ID + + +Result: + +.. code-block:: console + + Scale request for VNF Instance d44e9511-1857-4530-8a5e-1b28a6e5a744 has been accepted. + + +Help: + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 scale --help + usage: openstack vnflcm scale [-h] [--number-of-steps ] [--additional-param-file ] --type --aspect-id + + + + Scale a VNF Instance + + positional arguments: + + VNF instance ID to scale + + options: + -h, --help show this help message and exit + --number-of-steps + Number of scaling steps to be executed as part of this Scale VNF operation. + --additional-param-file + Additional parameters passed by the NFVO as input to the scaling process. + + require arguments: + --type + SCALE_OUT or SCALE_IN for type of scale operation. + --aspect-id + Identifier of the scaling aspect. + + This command is provided by the python-tackerclient plugin. + + +10. Change External VNF Connectivity +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. note:: + + In 2024.2 Dalmatian release, Change External VNF Connectivity + only support VNF, not CNF. + + +The `VNF_INSTANCE_ID` and `SAMPLE_PARAM_FILE.json` should be replaced with +the ID of VNF instance and the path of parameter json file +that will be used to change external VNF connectivity, respectively. + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 change-ext-conn VNF_INSTANCE_ID \ + SAMPLE_PARAM_FILE.json + + +Result: + +.. code-block:: console + + Change External VNF Connectivity for VNF Instance d44e9511-1857-4530-8a5e-1b28a6e5a744 has been accepted. + + +Help: + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 change-ext-conn --help + usage: openstack vnflcm change-ext-conn [-h] + + + + Change External VNF Connectivity + + positional arguments: + + VNF instance ID to Change External VNF Connectivity + Specify change-ext-conn request parameters in a json + file. + + options: + -h, --help show this help message and exit + + This command is provided by the python-tackerclient plugin. + + +11. Change Current VNF Package +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. note:: + + In 2024.2 Dalmatian release, `Change Current VNF Package` only support ``RollingUpdate`` upgrade type, + ``BlueGreen`` will be supported in future releases. + + +The `VNF_INSTANCE_ID` and the `SAMPLE_PARAM_FILE.json` should be replaced with +the ID of VNF instance and the path of parameter json file that will be used +to change VNF Package of VNF instance, respectively. + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 change-vnfpkg VNF_INSTANCE_ID \ + SAMPLE_PARAM_FILE.json + + +Result: + +.. code-block:: console + + Change Current VNF Package for VNF Instance d44e9511-1857-4530-8a5e-1b28a6e5a744 has been accepted + + +Help: + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 change-vnfpkg --help + usage: openstack vnflcm change-vnfpkg [-h] + + + + Change Current VNF Package + + positional arguments: + + VNF instance ID to Change Current VNF Package + Specify change-vnfpkg request parameters in a json + file. + + options: + -h, --help show this help message and exit + + This command is provided by the python-tackerclient plugin. + + +12. Rollback VNF Lifecycle Management Operation +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The `VNF_LCM_OP_OCC_ID` should be replaced with the ID of the target +lifecycle management operation temporary failed. + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 op rollback VNF_LCM_OP_OCC_ID + + +Result: + +.. code-block:: console + + Rollback request for LCM operation 7113c882-cabe-4fff-8837-b856727fbd65 has been accepted + + +Help: + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 op rollback --help + usage: openstack vnflcm op rollback [-h] + + positional arguments: + + VNF lifecycle management operation occurrence ID. + + options: + -h, --help show this help message and exit + + This command is provided by the python-tackerclient plugin. + + +13. Retry VNF Lifecycle Management Operation +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The `VNF_LCM_OP_OCC_ID` should be replaced with the ID of the target +lifecycle management operation temporary failed. + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 op retry VNF_LCM_OP_OCC_ID + + +Result: + +.. code-block:: console + + Retry request for LCM operation 1ba8410c-4181-49a0-b2aa-e3015a6e8257 has been accepted + + +Help: + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 op retry --help + usage: openstack vnflcm op retry [-h] + + Retry VNF Instance + + positional arguments: + + VNF lifecycle management operation occurrence ID. + + options: + -h, --help show this help message and exit + + This command is provided by the python-tackerclient plugin. + + +14. Fail VNF Lifecycle Management Operation +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The `VNF_LCM_OP_OCC_ID` should be replaced with the ID of the target +lifecycle management operation temporary failed. + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 op fail VNF_LCM_OP_OCC_ID + + +Result: + +.. code-block:: console + + +-------------------------+-----------------------------------------------------------------------------------------------------------------+ + | Field | Value | + +-------------------------+-----------------------------------------------------------------------------------------------------------------+ + | Error | { | + | | "title": "Stack delete failed", | + | | "status": 422, | + | | "detail": "Resource DELETE failed: Error: resources.VDU2-0.resources.VDU2-VirtualStorage: Volume in use" | + | | } | + | ID | 1ba8410c-4181-49a0-b2aa-e3015a6e8257 | + | Is Automatic Invocation | False | + | Is Cancel Pending | False | + | Links | { | + | | "self": { | + | | "href": "http://127.0.0.1:9890/vnflcm/v2/vnf_lcm_op_occs/1ba8410c-4181-49a0-b2aa-e3015a6e8257" | + | | }, | + | | "vnfInstance": { | + | | "href": "http://127.0.0.1:9890/vnflcm/v2/vnf_instances/d44e9511-1857-4530-8a5e-1b28a6e5a744" | + | | }, | + | | "retry": { | + | | "href": "http://127.0.0.1:9890/vnflcm/v2/vnf_lcm_op_occs/1ba8410c-4181-49a0-b2aa-e3015a6e8257/retry" | + | | }, | + | | "rollback": { | + | | "href": "http://127.0.0.1:9890/vnflcm/v2/vnf_lcm_op_occs/1ba8410c-4181-49a0-b2aa-e3015a6e8257/rollback" | + | | }, | + | | "fail": { | + | | "href": "http://127.0.0.1:9890/vnflcm/v2/vnf_lcm_op_occs/1ba8410c-4181-49a0-b2aa-e3015a6e8257/fail" | + | | } | + | | } | + | Operation | TERMINATE | + | Operation State | FAILED | + | Start Time | 2024-04-25T02:22:53Z | + | State Entered Time | 2024-04-25T02:24:59Z | + | VNF Instance ID | d44e9511-1857-4530-8a5e-1b28a6e5a744 | + | grantId | 2fa21479-39aa-4810-af7a-3dbc4cede8ac | + | operationParams | { | + | | "terminationType": "GRACEFUL" | + | | } | + +-------------------------+-----------------------------------------------------------------------------------------------------------------+ + + +Help: + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 op fail --help + usage: openstack vnflcm op fail [-h] [-f {json,shell,table,value,yaml}] [-c COLUMN] [--noindent] [--prefix PREFIX] [--max-width ] [--fit-width] + [--print-empty] + + + Fail VNF Instance + + positional arguments: + + VNF lifecycle management operation occurrence ID. + + options: + -h, --help show this help message and exit + + output formatters: + output formatter options + + -f {json,shell,table,value,yaml}, --format {json,shell,table,value,yaml} + the output format, defaults to table + -c COLUMN, --column COLUMN + specify the column(s) to include, can be repeated to show multiple columns + + json formatter: + --noindent whether to disable indenting the JSON + + shell formatter: + a format a UNIX shell can parse (variable="value") + + --prefix PREFIX + add a prefix to all variable names + + table formatter: + --max-width + Maximum display width, <1 to disable. You can also use the CLIFF_MAX_TERM_WIDTH environment variable, but the parameter takes precedence. + --fit-width Fit the table to the display width. Implied if --max-width greater than 0. Set the environment variable CLIFF_FIT_WIDTH=1 to always enable + --print-empty Print empty table if there is no data to show. + + This command is provided by the python-tackerclient plugin. + + +15. List LCM Operation Occurrences +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 op list + + +Result: + +.. code-block:: console + + +--------------------------------------+-----------------+--------------------------------------+-------------+ + | ID | Operation State | VNF Instance ID | Operation | + +--------------------------------------+-----------------+--------------------------------------+-------------+ + | 2389ac68-8a02-4fb7-9ab7-7e622b196e8d | COMPLETED | d5ffa129-ecb8-4cc0-b2d4-1745c3275f27 | INSTANTIATE | + +--------------------------------------+-----------------+--------------------------------------+-------------+ + + +Help: + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 op list --help + usage: openstack vnflcm op list [-h] [-f {csv,json,table,value,yaml}] [-c COLUMN] [--quote {all,minimal,none,nonnumeric}] [--noindent] + [--max-width ] [--fit-width] [--print-empty] [--sort-column SORT_COLUMN] [--sort-ascending | --sort-descending] + [--filter ] [--fields | --exclude-fields ] + + List LCM Operation Occurrences + + options: + -h, --help show this help message and exit + --filter + Attribute-based-filtering parameters + --fields + Complex attributes to be included into the response + --exclude-fields + Complex attributes to be excluded from the response + + output formatters: + output formatter options + + -f {csv,json,table,value,yaml}, --format {csv,json,table,value,yaml} + the output format, defaults to table + -c COLUMN, --column COLUMN + specify the column(s) to include, can be repeated to show multiple columns + --sort-column SORT_COLUMN + specify the column(s) to sort the data (columns specified first have a priority, non-existing columns are ignored), can be repeated + --sort-ascending sort the column(s) in ascending order + --sort-descending sort the column(s) in descending order + + CSV Formatter: + --quote {all,minimal,none,nonnumeric} + when to include quotes, defaults to nonnumeric + + json formatter: + --noindent whether to disable indenting the JSON + + table formatter: + --max-width + Maximum display width, <1 to disable. You can also use the CLIFF_MAX_TERM_WIDTH environment variable, but the parameter takes precedence. + --fit-width Fit the table to the display width. Implied if --max-width greater than 0. Set the environment variable CLIFF_FIT_WIDTH=1 to always enable + --print-empty Print empty table if there is no data to show. + + This command is provided by the python-tackerclient plugin. + + +16. Show LCM Operation Occurrence +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The `VNF_LCM_OP_OCC_ID` should be replaced with the ID of the target +lifecycle management operation. + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 op show VNF_LCM_OP_OCC_ID + + +Result: + +.. code-block:: console + + +-------------------------------+--------------------------------------------------------------------------------------------------------------------------------+ + | Field | Value | + +-------------------------------+--------------------------------------------------------------------------------------------------------------------------------+ + | Cancel Mode | | + | Changed External Connectivity | | + | Changed Info | | + | Error | | + | Grant ID | 2bc583fb-6e1e-4d64-9213-117b9a363885 | + | ID | c4d83b35-ae2b-4291-9eea-83644d700ab8 | + | Is Automatic Invocation | False | + | Is Cancel Pending | False | + | Links | { | + | | "self": { | + | | "href": "http://127.0.0.1:9890/vnflcm/v2/vnf_lcm_op_occs/c4d83b35-ae2b-4291-9eea-83644d700ab8" | + | | }, | + | | "vnfInstance": { | + | | "href": "http://127.0.0.1:9890/vnflcm/v2/vnf_instances/7be9dcc0-e772-4e24-9e10-c52b525a1bf1" | + | | }, | + | | "retry": { | + | | "href": "http://127.0.0.1:9890/vnflcm/v2/vnf_lcm_op_occs/c4d83b35-ae2b-4291-9eea-83644d700ab8/retry" | + | | }, | + | | "rollback": { | + | | "href": "http://127.0.0.1:9890/vnflcm/v2/vnf_lcm_op_occs/c4d83b35-ae2b-4291-9eea-83644d700ab8/rollback" | + | | }, | + | | "fail": { | + | | "href": "http://127.0.0.1:9890/vnflcm/v2/vnf_lcm_op_occs/c4d83b35-ae2b-4291-9eea-83644d700ab8/fail" | + | | } | + | | } | + | Operation | INSTANTIATE | + | Operation Parameters | { | + | | "flavourId": "simple" | + | | } | + | Operation State | COMPLETED | + | Resource Changes | { | + | | "affectedVnfcs": [ | + | | { | + | | "id": "c9e3f4b4-d1ed-4a2d-98c3-2a654ab27f2a", | + | | "vduId": "VDU1", | + | | "changeType": "ADDED", | + | | "computeResource": { | + | | "vimConnectionId": "default", | + | | "resourceId": "c9e3f4b4-d1ed-4a2d-98c3-2a654ab27f2a", | + | | "vimLevelResourceType": "OS::Nova::Server" | + | | }, | + | | "metadata": { | + | | "creation_time": "2024-04-26T02:22:57Z", | + | | "stack_id": "vnf-7be9dcc0-e772-4e24-9e10-c52b525a1bf1-VDU1-hfkrj4pxccl6/a2a0ca88-948d-460a-a8a1-1f689cae481a", | + | | "vdu_idx": null, | + | | "flavor": "m1.tiny", | + | | "image-VDU1": "cirros-0.5.2-x86_64-disk" | + | | }, | + | | "affectedVnfcCpIds": [ | + | | "CP1-c9e3f4b4-d1ed-4a2d-98c3-2a654ab27f2a" | + | | ] | + | | } | + | | ], | + | | "affectedVirtualLinks": [ | + | | { | + | | "id": "768c130a-8a72-49ea-9e4e-609e93077342", | + | | "vnfVirtualLinkDescId": "internalVL1", | + | | "changeType": "ADDED", | + | | "networkResource": { | + | | "vimConnectionId": "default", | + | | "resourceId": "768c130a-8a72-49ea-9e4e-609e93077342", | + | | "vimLevelResourceType": "OS::Neutron::Net" | + | | } | + | | } | + | | ] | + | | } | + | Start Time | 2024-04-26T02:22:50Z | + | State Entered Time | 2024-04-26T02:23:15Z | + | VNF Instance ID | 7be9dcc0-e772-4e24-9e10-c52b525a1bf1 | + +-------------------------------+--------------------------------------------------------------------------------------------------------------------------------+ + + +Help: + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 op show --help + usage: openstack vnflcm op show [-h] [-f {json,shell,table,value,yaml}] [-c COLUMN] [--noindent] [--prefix PREFIX] [--max-width ] [--fit-width] + [--print-empty] + + + Display Operation Occurrence details + + positional arguments: + + VNF lifecycle management operation occurrence ID. + + options: + -h, --help show this help message and exit + + output formatters: + output formatter options + + -f {json,shell,table,value,yaml}, --format {json,shell,table,value,yaml} + the output format, defaults to table + -c COLUMN, --column COLUMN + specify the column(s) to include, can be repeated to show multiple columns + + json formatter: + --noindent whether to disable indenting the JSON + + shell formatter: + a format a UNIX shell can parse (variable="value") + + --prefix PREFIX + add a prefix to all variable names + + table formatter: + --max-width + Maximum display width, <1 to disable. You can also use the CLIFF_MAX_TERM_WIDTH environment variable, but the parameter takes precedence. + --fit-width Fit the table to the display width. Implied if --max-width greater than 0. Set the environment variable CLIFF_FIT_WIDTH=1 to always enable + --print-empty Print empty table if there is no data to show. + + This command is provided by the python-tackerclient plugin. + + +17. Create Lccn Subscription +^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The `SAMPLE_PARAM_FILE.json` should be replaced with the path of parameter +json file that will be used to create Lccn subscription. + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 subsc create SAMPLE_PARAM_FILE.json + + +Result: + +.. code-block:: console + + +--------------+------------------------------------------------------------------------------------------------------+ + | Field | Value | + +--------------+------------------------------------------------------------------------------------------------------+ + | Callback URI | http://localhost:9990/notification/callback/test | + | Filter | { | + | | "vnfInstanceSubscriptionFilter": { | + | | "vnfdIds": [ | + | | "dummy-vnfdId-1", | + | | "dummy-vnfdId-2" | + | | ], | + | | "vnfProductsFromProviders": [ | + | | { | + | | "vnfProvider": "dummy-vnfProvider-1", | + | | "vnfProducts": [ | + | | { | + | | "vnfProductName": "dummy-vnfProductName-1-1", | + | | "versions": [ | + | | { | + | | "vnfSoftwareVersion": "1.0", | + | | "vnfdVersions": [ | + | | "1.0", | + | | "2.0" | + | | ] | + | | }, | + | | { | + | | "vnfSoftwareVersion": "1.1", | + | | "vnfdVersions": [ | + | | "1.1", | + | | "2.1" | + | | ] | + | | } | + | | ] | + | | }, | + | | { | + | | "vnfProductName": "dummy-vnfProductName-1-2", | + | | "versions": [ | + | | { | + | | "vnfSoftwareVersion": "1.0", | + | | "vnfdVersions": [ | + | | "1.0", | + | | "2.0" | + | | ] | + | | }, | + | | { | + | | "vnfSoftwareVersion": "1.1", | + | | "vnfdVersions": [ | + | | "1.1", | + | | "2.1" | + | | ] | + | | } | + | | ] | + | | } | + | | ] | + | | }, | + | | { | + | | "vnfProvider": "dummy-vnfProvider-2", | + | | "vnfProducts": [ | + | | { | + | | "vnfProductName": "dummy-vnfProductName-2-1", | + | | "versions": [ | + | | { | + | | "vnfSoftwareVersion": "1.0", | + | | "vnfdVersions": [ | + | | "1.0", | + | | "2.0" | + | | ] | + | | }, | + | | { | + | | "vnfSoftwareVersion": "1.1", | + | | "vnfdVersions": [ | + | | "1.1", | + | | "2.1" | + | | ] | + | | } | + | | ] | + | | }, | + | | { | + | | "vnfProductName": "dummy-vnfProductName-2-2", | + | | "versions": [ | + | | { | + | | "vnfSoftwareVersion": "1.0", | + | | "vnfdVersions": [ | + | | "1.0", | + | | "2.0" | + | | ] | + | | }, | + | | { | + | | "vnfSoftwareVersion": "1.1", | + | | "vnfdVersions": [ | + | | "1.1", | + | | "2.1" | + | | ] | + | | } | + | | ] | + | | } | + | | ] | + | | } | + | | ], | + | | "vnfInstanceIds": [ | + | | "dummy-vnfInstanceId-1", | + | | "dummy-vnfInstanceId-2" | + | | ], | + | | "vnfInstanceNames": [ | + | | "dummy-vnfInstanceName-1", | + | | "dummy-vnfInstanceName-2" | + | | ] | + | | }, | + | | "notificationTypes": [ | + | | "VnfLcmOperationOccurrenceNotification", | + | | "VnfIdentifierCreationNotification", | + | | "VnfLcmOperationOccurrenceNotification" | + | | ], | + | | "operationTypes": [ | + | | "INSTANTIATE", | + | | "SCALE", | + | | "TERMINATE", | + | | "HEAL", | + | | "MODIFY_INFO", | + | | "CHANGE_EXT_CONN" | + | | ], | + | | "operationStates": [ | + | | "COMPLETED", | + | | "FAILED", | + | | "FAILED_TEMP", | + | | "PROCESSING", | + | | "ROLLING_BACK", | + | | "ROLLED_BACK", | + | | "STARTING" | + | | ] | + | | } | + | ID | 7f18f53b-dae9-4be3-a38e-1b25e420ccfc | + | Links | { | + | | "self": { | + | | "href": "http://127.0.0.1:9890/vnflcm/v2/subscriptions/7f18f53b-dae9-4be3-a38e-1b25e420ccfc" | + | | } | + | | } | + | verbosity | FULL | + +--------------+------------------------------------------------------------------------------------------------------+ + + +Help: + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 subsc create --help + usage: openstack vnflcm subsc create [-h] [-f {json,shell,table,value,yaml}] [-c COLUMN] [--noindent] [--prefix PREFIX] [--max-width ] + [--fit-width] [--print-empty] + + + Create a new Lccn Subscription + + positional arguments: + Specify create request parameters in a json file. + + options: + -h, --help show this help message and exit + + output formatters: + output formatter options + + -f {json,shell,table,value,yaml}, --format {json,shell,table,value,yaml} + the output format, defaults to table + -c COLUMN, --column COLUMN + specify the column(s) to include, can be repeated to show multiple columns + + json formatter: + --noindent whether to disable indenting the JSON + + shell formatter: + a format a UNIX shell can parse (variable="value") + + --prefix PREFIX + add a prefix to all variable names + + table formatter: + --max-width + Maximum display width, <1 to disable. You can also use the CLIFF_MAX_TERM_WIDTH environment variable, but the parameter takes precedence. + --fit-width Fit the table to the display width. Implied if --max-width greater than 0. Set the environment variable CLIFF_FIT_WIDTH=1 to always enable + --print-empty Print empty table if there is no data to show. + + This command is provided by the python-tackerclient plugin. + + +18. List Lccn Subscription +^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 subsc list + + +Result: + +.. code-block:: console + + +--------------------------------------+--------------------------------------------------+ + | ID | Callback URI | + +--------------------------------------+--------------------------------------------------+ + | 7f18f53b-dae9-4be3-a38e-1b25e420ccfc | http://localhost:9990/notification/callback/test | + +--------------------------------------+--------------------------------------------------+ + + +Help: + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 subsc list --help + usage: openstack vnflcm subsc list [-h] [-f {csv,json,table,value,yaml}] [-c COLUMN] [--quote {all,minimal,none,nonnumeric}] [--noindent] + [--max-width ] [--fit-width] [--print-empty] [--sort-column SORT_COLUMN] [--sort-ascending | --sort-descending] + [--filter ] + + List Lccn Subscriptions + + options: + -h, --help show this help message and exit + --filter + Attribute-based-filtering parameters + + output formatters: + output formatter options + + -f {csv,json,table,value,yaml}, --format {csv,json,table,value,yaml} + the output format, defaults to table + -c COLUMN, --column COLUMN + specify the column(s) to include, can be repeated to show multiple columns + --sort-column SORT_COLUMN + specify the column(s) to sort the data (columns specified first have a priority, non-existing columns are ignored), can be repeated + --sort-ascending sort the column(s) in ascending order + --sort-descending sort the column(s) in descending order + + CSV Formatter: + --quote {all,minimal,none,nonnumeric} + when to include quotes, defaults to nonnumeric + + json formatter: + --noindent whether to disable indenting the JSON + + table formatter: + --max-width + Maximum display width, <1 to disable. You can also use the CLIFF_MAX_TERM_WIDTH environment variable, but the parameter takes precedence. + --fit-width Fit the table to the display width. Implied if --max-width greater than 0. Set the environment variable CLIFF_FIT_WIDTH=1 to always enable + --print-empty Print empty table if there is no data to show. + + This command is provided by the python-tackerclient plugin. + + +19. Show Lccn Subscription +^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The `LCCN_SUBSCRIPTION_ID` should be replaced with the ID of Lccn subscription. + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 subsc show LCCN_SUBSCRIPTION_ID + + +Result: + +.. code-block:: console + + +--------------+------------------------------------------------------------------------------------------------------+ + | Field | Value | + +--------------+------------------------------------------------------------------------------------------------------+ + | Callback URI | http://localhost:9990/notification/callback/test | + | Filter | { | + | | "vnfInstanceSubscriptionFilter": { | + | | "vnfdIds": [ | + | | "dummy-vnfdId-1", | + | | "dummy-vnfdId-2" | + | | ], | + | | "vnfProductsFromProviders": [ | + | | { | + | | "vnfProvider": "dummy-vnfProvider-1", | + | | "vnfProducts": [ | + | | { | + | | "vnfProductName": "dummy-vnfProductName-1-1", | + | | "versions": [ | + | | { | + | | "vnfSoftwareVersion": "1.0", | + | | "vnfdVersions": [ | + | | "1.0", | + | | "2.0" | + | | ] | + | | }, | + | | { | + | | "vnfSoftwareVersion": "1.1", | + | | "vnfdVersions": [ | + | | "1.1", | + | | "2.1" | + | | ] | + | | } | + | | ] | + | | }, | + | | { | + | | "vnfProductName": "dummy-vnfProductName-1-2", | + | | "versions": [ | + | | { | + | | "vnfSoftwareVersion": "1.0", | + | | "vnfdVersions": [ | + | | "1.0", | + | | "2.0" | + | | ] | + | | }, | + | | { | + | | "vnfSoftwareVersion": "1.1", | + | | "vnfdVersions": [ | + | | "1.1", | + | | "2.1" | + | | ] | + | | } | + | | ] | + | | } | + | | ] | + | | }, | + | | { | + | | "vnfProvider": "dummy-vnfProvider-2", | + | | "vnfProducts": [ | + | | { | + | | "vnfProductName": "dummy-vnfProductName-2-1", | + | | "versions": [ | + | | { | + | | "vnfSoftwareVersion": "1.0", | + | | "vnfdVersions": [ | + | | "1.0", | + | | "2.0" | + | | ] | + | | }, | + | | { | + | | "vnfSoftwareVersion": "1.1", | + | | "vnfdVersions": [ | + | | "1.1", | + | | "2.1" | + | | ] | + | | } | + | | ] | + | | }, | + | | { | + | | "vnfProductName": "dummy-vnfProductName-2-2", | + | | "versions": [ | + | | { | + | | "vnfSoftwareVersion": "1.0", | + | | "vnfdVersions": [ | + | | "1.0", | + | | "2.0" | + | | ] | + | | }, | + | | { | + | | "vnfSoftwareVersion": "1.1", | + | | "vnfdVersions": [ | + | | "1.1", | + | | "2.1" | + | | ] | + | | } | + | | ] | + | | } | + | | ] | + | | } | + | | ], | + | | "vnfInstanceIds": [ | + | | "dummy-vnfInstanceId-1", | + | | "dummy-vnfInstanceId-2" | + | | ], | + | | "vnfInstanceNames": [ | + | | "dummy-vnfInstanceName-1", | + | | "dummy-vnfInstanceName-2" | + | | ] | + | | }, | + | | "notificationTypes": [ | + | | "VnfLcmOperationOccurrenceNotification", | + | | "VnfIdentifierCreationNotification", | + | | "VnfLcmOperationOccurrenceNotification" | + | | ], | + | | "operationTypes": [ | + | | "INSTANTIATE", | + | | "SCALE", | + | | "TERMINATE", | + | | "HEAL", | + | | "MODIFY_INFO", | + | | "CHANGE_EXT_CONN" | + | | ], | + | | "operationStates": [ | + | | "COMPLETED", | + | | "FAILED", | + | | "FAILED_TEMP", | + | | "PROCESSING", | + | | "ROLLING_BACK", | + | | "ROLLED_BACK", | + | | "STARTING" | + | | ] | + | | } | + | ID | 7f18f53b-dae9-4be3-a38e-1b25e420ccfc | + | Links | { | + | | "self": { | + | | "href": "http://127.0.0.1:9890/vnflcm/v2/subscriptions/7f18f53b-dae9-4be3-a38e-1b25e420ccfc" | + | | } | + | | } | + | verbosity | FULL | + +--------------+------------------------------------------------------------------------------------------------------+ + + +Help: + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 subsc show --help + usage: openstack vnflcm subsc show [-h] [-f {json,shell,table,value,yaml}] [-c COLUMN] [--noindent] [--prefix PREFIX] [--max-width ] [--fit-width] + [--print-empty] + + + Display Lccn Subscription details + + positional arguments: + + Lccn Subscription ID to display + + options: + -h, --help show this help message and exit + + output formatters: + output formatter options + + -f {json,shell,table,value,yaml}, --format {json,shell,table,value,yaml} + the output format, defaults to table + -c COLUMN, --column COLUMN + specify the column(s) to include, can be repeated to show multiple columns + + json formatter: + --noindent whether to disable indenting the JSON + + shell formatter: + a format a UNIX shell can parse (variable="value") + + --prefix PREFIX + add a prefix to all variable names + + table formatter: + --max-width + Maximum display width, <1 to disable. You can also use the CLIFF_MAX_TERM_WIDTH environment variable, but the parameter takes precedence. + --fit-width Fit the table to the display width. Implied if --max-width greater than 0. Set the environment variable CLIFF_FIT_WIDTH=1 to always enable + --print-empty Print empty table if there is no data to show. + + This command is provided by the python-tackerclient plugin. + + +20. Delete Lccn Subscription +^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The `LCCN_SUBSCRIPTION_ID` should be replaced with the ID of Lccn subscription. + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 delete LCCN_SUBSCRIPTION_ID + + +Result: + +.. code-block:: console + + Lccn Subscription '7f18f53b-dae9-4be3-a38e-1b25e420ccfc' is deleted successfully + + +Help: + +.. code-block:: console + + $ openstack vnflcm --os-tacker-api-version 2 subsc delete --help + usage: openstack vnflcm subsc delete [-h] [ ...] + + Delete Lccn Subscription(s) + + positional arguments: + + Lccn Subscription ID(s) to delete + + options: + -h, --help show this help message and exit + + This command is provided by the python-tackerclient plugin. + + +21. Show VNF LCM API versions +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. code-block:: console + + $ openstack vnflcm versions + + +Result: + +.. code-block:: console + + $ openstack vnflcm versions + +-------------+--------------------------------------------------------------------------------------------+ + | Field | Value | + +-------------+--------------------------------------------------------------------------------------------+ + | uriPrefix | /vnflcm | + | apiVersions | [{'version': '1.3.0', 'isDeprecated': False}, {'version': '2.0.0', 'isDeprecated': False}] | + +-------------+--------------------------------------------------------------------------------------------+ + + +.. note:: + + Running the command with **\-\-major-version 2** option shows v2 Tacker's version only. + + +.. code-block:: console + + $ openstack vnflcm versions --major-version 2 + +-------------+-----------------------------------------------+ + | Field | Value | + +-------------+-----------------------------------------------+ + | uriPrefix | /vnflcm/v2 | + | apiVersions | [{'version': '2.0.0', 'isDeprecated': False}] | + +-------------+-----------------------------------------------+ + + +Help: + +.. code-block:: console + + $ openstack vnflcm versions --help + usage: openstack vnflcm versions [-h] [-f {json,shell,table,value,yaml}] [-c COLUMN] [--noindent] [--prefix PREFIX] [--max-width ] [--fit-width] + [--print-empty] [--major-version ] + + Show VnfLcm Api versions + + options: + -h, --help show this help message and exit + --major-version + Show only specify major version. + + output formatters: + output formatter options + + -f {json,shell,table,value,yaml}, --format {json,shell,table,value,yaml} + the output format, defaults to table + -c COLUMN, --column COLUMN + specify the column(s) to include, can be repeated to show multiple columns + + json formatter: + --noindent whether to disable indenting the JSON + + shell formatter: + a format a UNIX shell can parse (variable="value") + + --prefix PREFIX + add a prefix to all variable names + + table formatter: + --max-width + Maximum display width, <1 to disable. You can also use the CLIFF_MAX_TERM_WIDTH environment variable, but the parameter takes precedence. + --fit-width Fit the table to the display width. Implied if --max-width greater than 0. Set the environment variable CLIFF_FIT_WIDTH=1 to always enable + --print-empty Print empty table if there is no data to show. + + This command is provided by the python-tackerclient plugin. + + +.. _basic_lcms_max_individual_vnfc for 2023.2 Bobcat: + https://opendev.org/openstack/tacker/src/branch/stable/2023.2/tacker/tests/functional/sol_v2_common/samples/basic_lcms_max_individual_vnfc +.. _userdata_standard for 2023.2 Bobcat: + https://opendev.org/openstack/tacker/src/branch/stable/2023.2/tacker/tests/functional/sol_v2_common/samples/userdata_standard +.. _userdata_standard_change_vnfpkg_nw for 2023.2 Bobcat: + https://opendev.org/openstack/tacker/src/branch/stable/2023.2/tacker/tests/functional/sol_v2_common/samples/userdata_standard_change_vnfpkg_nw diff --git a/doc/source/cli/vnflcm-index.rst b/doc/source/cli/vnflcm-index.rst new file mode 100644 index 000000000..84c34db00 --- /dev/null +++ b/doc/source/cli/vnflcm-index.rst @@ -0,0 +1,8 @@ +======================== +VNF Lifecycle Management +======================== + +.. toctree:: + + v2/vnflcm + cli-etsi-vnflcm diff --git a/doc/source/configuration/enhanced_policy.rst b/doc/source/configuration/enhanced_policy.rst index cfab088c8..a11baed9d 100644 --- a/doc/source/configuration/enhanced_policy.rst +++ b/doc/source/configuration/enhanced_policy.rst @@ -826,7 +826,7 @@ instantiate VNF. Below are two samples of . } -For VNF LCM API version 2, please refer to :doc:`/cli/cli-etsi-vnflcm` to +For VNF LCM API version 2, please refer to :doc:`/cli/v2/vnflcm` to instantiate VNF. Below are two samples of . #. If the vim in the ``vimConnectionInfo`` parameter of is an diff --git a/doc/source/user/v2/cnf/chg_vnfpkg/index.rst b/doc/source/user/v2/cnf/chg_vnfpkg/index.rst index c3d2bf47c..198b31f30 100644 --- a/doc/source/user/v2/cnf/chg_vnfpkg/index.rst +++ b/doc/source/user/v2/cnf/chg_vnfpkg/index.rst @@ -64,7 +64,7 @@ You need to upload the VNF package you want to change to before executing change current VNF package. Details of CLI commands are described in -:doc:`/cli/cli-etsi-vnflcm`. +:doc:`/cli/v2/vnflcm`. For changing current VNF package, you need to prepare a JSON-formatted definition file before running command for changing the VNF package. diff --git a/doc/source/user/v2/cnf/heal/index.rst b/doc/source/user/v2/cnf/heal/index.rst index 82350ecd4..e71a5adbc 100644 --- a/doc/source/user/v2/cnf/heal/index.rst +++ b/doc/source/user/v2/cnf/heal/index.rst @@ -48,7 +48,7 @@ CNF Healing Procedure As mentioned in Prerequisites and Healing target VNF instance, the VNF must be instantiated before healing. -Details of CLI commands are described in :doc:`/cli/cli-etsi-vnflcm`. +Details of CLI commands are described in :doc:`/cli/v2/vnflcm`. There are two main methods for CNF healing. diff --git a/doc/source/user/v2/cnf/scale/index.rst b/doc/source/user/v2/cnf/scale/index.rst index 7bc15cc21..377eaf2bf 100644 --- a/doc/source/user/v2/cnf/scale/index.rst +++ b/doc/source/user/v2/cnf/scale/index.rst @@ -59,7 +59,7 @@ as Kubernetes Deployment, StatefulSet, and ReplicaSet. during the scale out operation. -Details of CLI commands are described in :doc:`/cli/cli-etsi-vnflcm`. +Details of CLI commands are described in :doc:`/cli/v2/vnflcm`. There are two main methods for CNF scaling. diff --git a/doc/source/user/v2/cnf/update.rst b/doc/source/user/v2/cnf/update.rst index ce5083774..1b281fa77 100644 --- a/doc/source/user/v2/cnf/update.rst +++ b/doc/source/user/v2/cnf/update.rst @@ -26,7 +26,7 @@ As mentioned in Prerequisites, the CNF must be created before performing update. Details of CLI commands are described in -:doc:`/cli/cli-etsi-vnflcm`. +:doc:`/cli/v2/vnflcm`. For update VNF instance, you need to prepare a JSON-formatted definition file. diff --git a/doc/source/user/v2/cnf/update_with_mgmt_driver/index.rst b/doc/source/user/v2/cnf/update_with_mgmt_driver/index.rst index 3472dc812..eacfc8f06 100644 --- a/doc/source/user/v2/cnf/update_with_mgmt_driver/index.rst +++ b/doc/source/user/v2/cnf/update_with_mgmt_driver/index.rst @@ -261,7 +261,7 @@ recreate the deployment, DaemonSet and ReplicaSet to update. `samples/tests/functional/sol_kubernetes_v2/test_cnf_container_update_after`_ -Details of CLI commands are described in :doc:`/cli/cli-etsi-vnflcm`. +Details of CLI commands are described in :doc:`/cli/v2/vnflcm`. How to Update CNF diff --git a/doc/source/user/v2/error_handling.rst b/doc/source/user/v2/error_handling.rst index 66db506d4..36a9bbd1a 100644 --- a/doc/source/user/v2/error_handling.rst +++ b/doc/source/user/v2/error_handling.rst @@ -25,7 +25,7 @@ As mentioned in Prerequisites, the VNF must be created before performing error-handling. Details of CLI commands are described in -:doc:`/cli/cli-etsi-vnflcm`. +:doc:`/cli/v2/vnflcm`. There are some operations to error-handling VNF. @@ -44,7 +44,7 @@ Identify VNF_LCM_OP_OCC_ID The VNF_LCM_OP_OCC_ID can be obtained via CLI. Details of CLI commands are described in -:doc:`/cli/cli-etsi-vnflcm`. +:doc:`/cli/v2/vnflcm`. Before checking the "VNF_LCM_OP_OCC_ID", you should get VNF_INSTANCE_ID first. diff --git a/doc/source/user/v2/vnf/chg_ext_conn.rst b/doc/source/user/v2/vnf/chg_ext_conn.rst index 792975cc7..1aaab7a1e 100644 --- a/doc/source/user/v2/vnf/chg_ext_conn.rst +++ b/doc/source/user/v2/vnf/chg_ext_conn.rst @@ -28,7 +28,7 @@ Assuming that the following VNF instance exists, this instance will be changed. Details of CLI commands are described in -:doc:`/cli/cli-etsi-vnflcm`. +:doc:`/cli/v2/vnflcm`. For changing external VNF connectivity, you need to prepare a JSON-formatted definition file before running command for changing the connectivity. diff --git a/doc/source/user/v2/vnf/chg_vnfpkg/index.rst b/doc/source/user/v2/vnf/chg_vnfpkg/index.rst index 16c0dc501..1954e1fd7 100644 --- a/doc/source/user/v2/vnf/chg_vnfpkg/index.rst +++ b/doc/source/user/v2/vnf/chg_vnfpkg/index.rst @@ -72,7 +72,7 @@ You need to upload the VNF package you want to change to before executing change current vnf package. Details of CLI commands are described in -:doc:`/cli/cli-etsi-vnflcm`. +:doc:`/cli/v2/vnflcm`. For changing current VNF package, you need to prepare a JSON-formatted definition file before running command for changing the VNF package. diff --git a/doc/source/user/v2/vnf/chg_vnfpkg_with_standard/index.rst b/doc/source/user/v2/vnf/chg_vnfpkg_with_standard/index.rst index f44269ba7..d39c04681 100644 --- a/doc/source/user/v2/vnf/chg_vnfpkg_with_standard/index.rst +++ b/doc/source/user/v2/vnf/chg_vnfpkg_with_standard/index.rst @@ -102,7 +102,7 @@ You need to upload the VNF package you want to change to before executing change current vnf package. Details of CLI commands are described in -:doc:`/cli/cli-etsi-vnflcm`. +:doc:`/cli/v2/vnflcm`. .. note:: diff --git a/doc/source/user/v2/vnf/deployment_with_user_data/index.rst b/doc/source/user/v2/vnf/deployment_with_user_data/index.rst index dc71b4aa9..62663b988 100644 --- a/doc/source/user/v2/vnf/deployment_with_user_data/index.rst +++ b/doc/source/user/v2/vnf/deployment_with_user_data/index.rst @@ -406,7 +406,7 @@ VNF Deployment Procedure as VM In order to deploy VNF as a VM, it is necessary to execute the following procedure. Details of CLI commands are described in -:doc:`/cli/cli-etsi-vnfpkgm` and :doc:`/cli/cli-etsi-vnflcm`. +:doc:`/cli/cli-etsi-vnfpkgm` and :doc:`/cli/v2/vnflcm`. 1. Create VNF Package Info diff --git a/doc/source/user/v2/vnf/heal/index.rst b/doc/source/user/v2/vnf/heal/index.rst index 696743237..836a6fa15 100644 --- a/doc/source/user/v2/vnf/heal/index.rst +++ b/doc/source/user/v2/vnf/heal/index.rst @@ -80,7 +80,7 @@ VNF Healing Procedure As mentioned in Prerequisites, the VNF must be instantiated before healing. Details of CLI commands are described in -:doc:`/cli/cli-etsi-vnflcm`. +:doc:`/cli/v2/vnflcm`. There are two main methods for VNF healing. diff --git a/doc/source/user/v2/vnf/scale/index.rst b/doc/source/user/v2/vnf/scale/index.rst index ade42a1d6..a652779d2 100644 --- a/doc/source/user/v2/vnf/scale/index.rst +++ b/doc/source/user/v2/vnf/scale/index.rst @@ -54,7 +54,7 @@ As mentioned in Prerequisites, the VNF must be instantiated before performing scaling. Details of CLI commands are described in -:doc:`/cli/cli-etsi-vnflcm`. +:doc:`/cli/v2/vnflcm`. There are two main methods for VNF scaling. diff --git a/doc/source/user/v2/vnf/update.rst b/doc/source/user/v2/vnf/update.rst index 398d6f68f..8b3f8937c 100644 --- a/doc/source/user/v2/vnf/update.rst +++ b/doc/source/user/v2/vnf/update.rst @@ -23,7 +23,7 @@ As mentioned in Prerequisites, the VNF must be created before performing update. Details of CLI commands are described in -:doc:`/cli/cli-etsi-vnflcm`. +:doc:`/cli/v2/vnflcm`. For update VNF instance, you need to prepare a JSON-formatted definition file.