From b4f13d2c2b83ff8a585e035798828874041be5e8 Mon Sep 17 00:00:00 2001 From: Giacomo Bernini Date: Tue, 14 Feb 2023 16:59:11 +0000 Subject: [PATCH 01/11] Update Readme.md --- Readme.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Readme.md b/Readme.md index a8414add..dea3ce81 100644 --- a/Readme.md +++ b/Readme.md @@ -1,7 +1,7 @@ # NFV SOL002 and SOL003 APIs This repository hosts the [OpenAPI](https://www.openapis.org/) specificatons and other documentation -for the APIs defined in ETSI NFV GSs SOL002 and SOL003 v4.3.1. +for the APIs defined in ETSI NFV GSs SOL002 and SOL003 v4.4.1. The APIs described in this repository are defined for the following reference points: @@ -51,7 +51,7 @@ See the recent builds from: ## License -Copyright (c) ETSI 2020. +Copyright (c) ETSI 2023. This software is subject to copyrights owned by ETSI. Non-exclusive permission is hereby granted, free of charge, to copy, reproduce and amend this file -- GitLab From ba51873ea0bc00a61484b44ced043e93622b2635 Mon Sep 17 00:00:00 2001 From: muhammadh Date: Tue, 7 Mar 2023 12:21:46 +0500 Subject: [PATCH 02/11] implement OAS for SOL002 v4.4.1 --- src/SOL002/APIVersion/APIVersion.yaml | 4 +- .../General_Definitions/SOL002_def.yaml | 109 +++--------------- .../VNFConfiguration/VNFConfiguration.yaml | 6 +- .../SOL002VNFConfiguration_def.yaml | 5 - .../VNFFaultManagement.yaml | 10 +- .../SOL002VNFFaultManagement_def.yaml | 2 +- .../VNFFaultManagementNotification.yaml | 4 +- src/SOL002/VNFIndicator/VNFIndicator.yaml | 12 +- .../VNFIndicatorNotification.yaml | 4 +- .../VNFLifecycleCoordination.yaml | 8 +- .../VNFLifecycleManagement.yaml | 18 +-- .../SOL002VNFLifecycleManagement_def.yaml | 50 ++++---- .../VNFLifecycleManagementNotification.yaml | 4 +- .../VNFPerformanceManagement.yaml | 10 +- .../VNFPerformanceManagementNotification.yaml | 4 +- 15 files changed, 86 insertions(+), 164 deletions(-) diff --git a/src/SOL002/APIVersion/APIVersion.yaml b/src/SOL002/APIVersion/APIVersion.yaml index 078b5901..9a17dc4b 100644 --- a/src/SOL002/APIVersion/APIVersion.yaml +++ b/src/SOL002/APIVersion/APIVersion.yaml @@ -19,8 +19,8 @@ info: version: 1.3.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 002 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/04.03.01_60/gs_NFV-SOL002v040301p.pdf + description: ETSI GS NFV-SOL 002 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/04.04.01_60/gs_NFV-SOL002v040401p.pdf paths: /vnfconfig/api_versions: diff --git a/src/SOL002/General_Definitions/SOL002_def.yaml b/src/SOL002/General_Definitions/SOL002_def.yaml index cb2bfa65..58bf5095 100644 --- a/src/SOL002/General_Definitions/SOL002_def.yaml +++ b/src/SOL002/General_Definitions/SOL002_def.yaml @@ -185,91 +185,6 @@ definitions: items: type: string - VimConnectionInfo: - description: > - This type represents parameters to connect to a VIM, a CISM, a CIR or a MCIOP repository for managing - the resources of a VNF instance. - - This structure is used to convey VIM-related, CISM-related, CIR-related, or MCIOP-repository-relate - dparameters over the Or-Vnfm interface. Additional parameters for a VIM, a CISM, a CIR or a MCIOP - repository may be configured into the VNFM by means outside the scope of the present document and - bound to the identifier of that VIM. - - * NOTE 1: If applicable, this attribute also provides information about the resourceGroupIds - that are accessible using a particular set of credentials. See definition of - "resourceGroupId" in clause 9.5.3.3. - * NOTE 2: Once the connectivity between VNFM and VIM, CISM, CIR or MCIOP repository is provided - through a secure connection over HTTP Secure (HTTP over SSL/TLS), and the connection might also be - established through a VPN (for example TLS-based VPN tunnelling) for site-to-site connection, the - "accessInfo" JSON data structure, and the sensitive data related information ("username"/"password" as - required properties for authentication purpose), will be transmitted as plain text through a TLS tunnel - without additional encoding/encryption before transmitting it, making the sensitive data visible to the - endpoint. The base64 encoded certificates are only used by the VNFM to verify the authenticity of the - interface endpoint of the VIM., CISM, CIR or MCIOP repository. - type: object - required: - - vimType - properties: - vimId: - description: > - The identifier of the VIM, CISM, CIR or MCIOP repository - instance. This identifier is managed by the NFVO. - Shall be present to address additional information about - the VIM, CISM, CIR or MCIOP repository if such - information has been configured into the VNFM by - means outside the scope of the present document and - should be absent otherwise. - $ref: "#/definitions/Identifier" - vimType: - description: > - Discriminator for the different types of the VIM - information. - The value of this attribute determines the structure of the - "interfaceInfo" and "accessInfo" attributes, based on the - type of the VIM., CISM, CIR or MCIOP repository. - The set of permitted values is expected to change over - time as new types or versions of VIMs become available. - The ETSI NFV registry of VIM-related information [i.3] - provides access to information about VimConnectionInfo - definitions for various VIM, CISM, CIR or MCIOP - repository types. The structure of the registry is defined in - annex C. - type: string - interfaceInfo: - description: > - Information about the interface or interfaces to the VIM, - CISM, CIR or MCIOP repository, if applicable, such as - the URI of an interface endpoint to communicate with the - VIM, CISM, CIR or MCIOP repository. The applicable - keys are dependent on the content of vimType. - Alternatively, such information may have been configured - into the VNFM and bound to the vimId. - $ref: "#/definitions/KeyValuePairs" - accessInfo: - description: > - Authentication credentials for accessing the VIM, CISM, - CIR or MCIOP repository and other access-related - information such as tenants or infrastructure resource - groups (see note 1). The applicable keys are dependent - on the content of vimType. - If the VimConnectionInfo structure is part of an HTTP - response payload body, sensitive attributes that are - children of this attributes (such as passwords) shall not - be included. - If the VimConnectionInfo structure is part of an HTTP - request payload body, sensitive attributes that are - children of this attribute (such as passwords) shall be - present if they have not been provisioned out of band. - See note 2. - $ref: "#/definitions/KeyValuePairs" - extra: - description: > - VIM, CISM, CIR or MCIOP repository type specific - additional information. The applicable structure, and - whether or not this attribute is available, is dependent on - the content of vimType. - $ref: "#/definitions/KeyValuePairs" - ResourceHandle: required: - resourceId @@ -409,15 +324,14 @@ definitions: * NOTE 2: The following conditions apply to the attributes “netAttDefResourceId” and “cpProtocolData” for an external CP instance connected or to be connected to a secondary container cluster network: - 1) The "netAttDefResourceId" and "cpProtocolData" attributes shall both be absent for the deletion of an - existing external CP instance addressed by cpInstanceId. + 1) Void. 2) The "netAttDefResourceId" attribute shall be present and the "cpProtocolData" attribute may be present for a to-be-created external CP instance or an existing external CP instance. * NOTE 3: Cardinality greater than 1 is only applicable for specific cases where more than one network attachment definition resource is needed to fulfil the connectivity requirements of the external CP, e.g. to build a link redundant mated pair in SR-IOV cases. When more than one netAttDefResourceId is indicated, all shall belong - to the same namespace as defined by the corresponding "netAttDefResourceNamespace" attribute in the - "NetAttDefResourceData". + to the same namespace as defined by the corresponding "containerNamespace" attribute in the "resourceHandle" attribute + in the "NetAttDefResourceData". * NOTE 4: Either linkPortId or netAttDefResourceId may be included, but not both. anyOf: - required: @@ -622,14 +536,20 @@ definitions: VirtualCpAddressData: description: > - This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an - NS VL. + This type represents network address data for a virtual CP. * NOTE 1: If the container cluster is set up to be able to configure an external load balancer this address will be used, otherwise it will be ignored by the CISM. * NOTE 2: In case the cluster can configure an external load balancer but no loadBalancerIp is provided the container cluster will assign an IP address. + + * NOTE 3: The attribute is only relevant if the virtual CP is instantiated in a cluster that supports configuration of IP + address pools for virtual CPs. Otherwise it shall be ignored. MetalLB is an example of a solution for + Kubernetes® that supports configuration of address pools for load balancer services. + + * NOTE 4: The loadBalancerIp and the addressPoolName attributes shall not be present at the same time. + type: object required: - type @@ -645,8 +565,13 @@ definitions: loadBalancerIp: description: > Fixed address to assign to an external load balancer. - See notes 1 and 2. + See notes 1, 2 and 4. $ref: "#/definitions/IpAddress" + addressPoolName : + description: > + Name of an address pool from which the container + cluster will assign an IP address to the virtual CP. See + notes 3 and 4. ExtVirtualLinkData: description: > diff --git a/src/SOL002/VNFConfiguration/VNFConfiguration.yaml b/src/SOL002/VNFConfiguration/VNFConfiguration.yaml index a21547bc..b9db1e5b 100644 --- a/src/SOL002/VNFConfiguration/VNFConfiguration.yaml +++ b/src/SOL002/VNFConfiguration/VNFConfiguration.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 1.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 1.11.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 002 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/04.03.01_60/gs_NFV-SOL002v040301p.pdf + description: ETSI GS NFV-SOL 002 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/04.04.01_60/gs_NFV-SOL002v040401p.pdf servers: - url: http://127.0.0.1/vnfconfig/v1 diff --git a/src/SOL002/VNFConfiguration/definitions/SOL002VNFConfiguration_def.yaml b/src/SOL002/VNFConfiguration/definitions/SOL002VNFConfiguration_def.yaml index a873c3ff..d195e212 100644 --- a/src/SOL002/VNFConfiguration/definitions/SOL002VNFConfiguration_def.yaml +++ b/src/SOL002/VNFConfiguration/definitions/SOL002VNFConfiguration_def.yaml @@ -112,11 +112,6 @@ definitions: type: array items: $ref: '#/definitions/CpConfiguration' - dhcpServer: - description: > - IP address of the DHCP server that the VNF instance can use to obtain - IP addresses to be assigned to its external CPs. - $ref: '../../General_Definitions/SOL002_def.yaml#/definitions/IpAddress' vnfcSpecificData: description: > Additional configurable properties of the VNFC instance declared in the diff --git a/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml b/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml index 2c04b5ec..7e9ab4a6 100644 --- a/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml +++ b/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 1.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 1.11.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 002 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/04.03.01_60/gs_NFV-SOL002v040301p.pdf + description: ETSI GS NFV-SOL 002 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/04.04.01_60/gs_NFV-SOL002v040401p.pdf servers: - url: http://127.0.0.1/vnffm/v1 @@ -380,7 +380,7 @@ components: description: | Identifier of the alarm. This identifier can be retrieved from the "id" attribute of the "alarm" attribute in the AlarmNotification or AlarmClearedNotification. It can also be retrieved from the "id" attribute of - the applicable array element in the payload body of the response to a GET request to the "Alarms" resource. + the applicable array element in the message content of the response to a GET request to the "Alarms" resource. required: true style: simple explode: false @@ -393,7 +393,7 @@ components: description: | Identifier of this subscription. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new subscription resource. It can also be retrieved - from the "id" attribute in the payload body of that response. + from the "id" attribute in the message content of that response. required: true style: simple explode: false diff --git a/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml b/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml index 65623733..81306b1b 100644 --- a/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml +++ b/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml @@ -42,7 +42,7 @@ definitions: properties: id: description: > - Identifier of this Alarm information element. + Identifier of this Alarm. $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" managedObjectId: description: > diff --git a/src/SOL002/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml b/src/SOL002/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml index a72c7e70..45590628 100644 --- a/src/SOL002/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml +++ b/src/SOL002/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml @@ -19,8 +19,8 @@ info: version: 1.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 002 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/04.03.01_60/gs_NFV-SOL002v040301p.pdf + description: ETSI GS NFV-SOL 002 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/04.04.01_60/gs_NFV-SOL002v040401p.pdf servers: - url: http://127.0.0.1/callback/v1 diff --git a/src/SOL002/VNFIndicator/VNFIndicator.yaml b/src/SOL002/VNFIndicator/VNFIndicator.yaml index f4b5c200..9503c23d 100644 --- a/src/SOL002/VNFIndicator/VNFIndicator.yaml +++ b/src/SOL002/VNFIndicator/VNFIndicator.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 1.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 1.11.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 002 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/04.03.01_60/gs_NFV-SOL002v040301p.pdf + description: ETSI GS NFV-SOL 002 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/04.04.01_60/gs_NFV-SOL002v040401p.pdf servers: - url: http://127.0.0.1/vnfind/v1 @@ -342,7 +342,7 @@ components: Identifier of the VNF instance to which the VNF indicators applies. NOTE: This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new VNF instance resource. It can also be retrieved from the "id" - attribute in the payload body of that response. + attribute in the message content of that response. required: true style: simple explode: false @@ -354,6 +354,8 @@ components: in: path description: | Identifier of the VNF indicator. + NOTE: This identifier can be retrieved from the resource referenced by the payload bodymessage content in the + response to a POST request creating a new "Individual VNF instance" resource. required: true style: simple explode: false @@ -367,7 +369,7 @@ components: Identifier of this subscription. NOTE: This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new subscription resource. It can also be retrieved - from the "id" attribute in the payload body of that response. + from the "id" attribute in the message content of that response. required: true style: simple explode: false diff --git a/src/SOL002/VNFIndicatorNotification/VNFIndicatorNotification.yaml b/src/SOL002/VNFIndicatorNotification/VNFIndicatorNotification.yaml index 1e004d94..92b51ac5 100644 --- a/src/SOL002/VNFIndicatorNotification/VNFIndicatorNotification.yaml +++ b/src/SOL002/VNFIndicatorNotification/VNFIndicatorNotification.yaml @@ -19,8 +19,8 @@ info: version: 1.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 002 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/04.03.01_60/gs_NFV-SOL002v040301p.pdf + description: ETSI GS NFV-SOL 002 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/04.04.01_60/gs_NFV-SOL002v040401p.pdf servers: - url: http://127.0.0.1/callback/v1 diff --git a/src/SOL002/VNFLifecycleCoordination/VNFLifecycleCoordination.yaml b/src/SOL002/VNFLifecycleCoordination/VNFLifecycleCoordination.yaml index ead6e13f..dd14be41 100644 --- a/src/SOL002/VNFLifecycleCoordination/VNFLifecycleCoordination.yaml +++ b/src/SOL002/VNFLifecycleCoordination/VNFLifecycleCoordination.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 1.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 1.11.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 002 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/04.03.01_60/gs_NFV-SOL002v040301p.pdf + description: ETSI GS NFV-SOL 002 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/04.04.01_60/gs_NFV-SOL002v040401p.pdf servers: - url: http://127.0.0.1/lcmcoord/v1 @@ -465,7 +465,7 @@ components: description: | 202 ACCEPTED Shall be returned when the cancellation request has been accepted for processing. - The response shall have an empty payload body. + The response shall have an empty message content. headers: Version: description: | diff --git a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml index a6f44c6a..e0c70b8f 100644 --- a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.11.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 002 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/04.03.01_60/gs_NFV-SOL002v040301p.pdf + description: ETSI GS NFV-SOL 002 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/04.04.01_60/gs_NFV-SOL002v040401p.pdf servers: - url: http://127.0.0.1/vnflcm/v2 @@ -1314,7 +1314,7 @@ components: description: | Identifier of the VNF instance. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new VNF instance resource. It can also be retrieved - from the "id" attribute in the payload body of that response. + from the "id" attribute in the message content of that response. required: true style: simple explode: false @@ -1340,7 +1340,7 @@ components: description: | Identifier of this subscription. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new subscription resource. It can also be retrieved from - the "id" attribute in the payload body of that response. + the "id" attribute in the message content of that response. required: true style: simple explode: false @@ -1353,7 +1353,7 @@ components: description: | Identifier of the individual VNF snapshot resource. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new VNF snapshot resource. It can also be - retrieved from the "id" attribute in the payload body of that response. + retrieved from the "id" attribute in the message content of that response. required: true style: simple explode: false @@ -2565,7 +2565,7 @@ components: description: | 202 ACCEPTED The request has been accepted for processing, but processing has not been completed. The response shall - have an empty payload body. + have an empty message content. headers: Version: description: The used API version. @@ -2629,7 +2629,7 @@ components: description: | 202 ACCEPTED The request has been accepted for processing, but processing has not been completed. The response shall have - an empty payload body. + an empty message content. headers: Version: description: The used API version. @@ -2766,7 +2766,7 @@ components: description: | 202 ACCEPTED The request has been accepted for processing, but processing has not been completed. The response shall - have an empty payload body. + have an empty message content. headers: Version: description: The used API version. diff --git a/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml b/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml index 8f1e0b54..3920b3e4 100644 --- a/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml +++ b/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml @@ -94,7 +94,7 @@ definitions: The declaration of configurable properties in the VNFD can optionally contain the specification of initial values. See note 2, note 3 and note 4. The VNFM shall reject requests to write configurable properties that are not declared in the - VNFD with a "422 Unprocessable entity" error response as defined in clause 6.4 of ETSI GS NFV SOL 013. + VNFD with a "422 Unprocessable Content" error response as defined in clause 6.4 of ETSI GS NFV SOL 013. These configurable properties include the following standard attributes, which are declared in the VNFD if auto-scaling and/or auto-healing are supported by the VNF: @@ -274,7 +274,7 @@ definitions: extension in the VNFD contains information on whether its presence is optional or required, and optionally can specify an initial value. See note 2 and note 4. The VNFM shall reject requests to write extension attributes that are not declared in the VNFD with a "422 Unprocessable - entity" error response as defined in clause 6.4 of ETSI GS NFV SOL 013. + Content" error response as defined in clause 6.4 of ETSI GS NFV SOL 013. Modifying the values of these attributes has no direct effect on the VNF instance; however, the modified attribute values can be considered during subsequent VNF lifecycle management operations, @@ -1378,9 +1378,11 @@ definitions: - TEMPORARY computeResource: description: > - Reference to the VirtualCompute resource. Detailed information is - (for new and modified resources) or has been (for removed - resources) available from the VIM. + Reference to the VirtualCompute resource or + reference to a Compute MCIO. + Detailed information is (for new and modified + resources) or has been (for removed + resources) available from the VIM or the CISM. $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ResourceHandle" metadata: description: > @@ -1475,9 +1477,11 @@ definitions: - LINK_PORT_REMOVED networkResource: description: > - Reference to the VirtualNetwork resource. Detailed information is - (for new and modified resources) or has been (for removed - resources) available from the VIM. See note. + Reference to the VirtualNetwork resource + resource or reference to a Network MCIO. + Detailed information is (for new and modified + resources) or has been (for removed resources) + available from the VIM or the CISM. See note. $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ResourceHandle" vnfLinkPortIds: description: > @@ -1543,9 +1547,10 @@ definitions: - TEMPORARY storageResource: description: > - Reference to the VirtualStorage resource. Detailed information is - (for new and modified resources) or has been (for removed - resources) available from the VIM. + Reference to the VirtualStorage resource or + reference to a Storage MCIO. + Detailed information is (for new and modified resources) + or has been (for removed resources) available from the VIM or the CISM. $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ResourceHandle" metadata: description: > @@ -2851,8 +2856,7 @@ definitions: $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" vduId: description: > - Reference to the applicable VDU information element in - the VNFD. + Reference to the applicable VDU in the VNFD. $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" vnfcResourceInfoId: description: > @@ -2940,14 +2944,6 @@ definitions: If present, this attribute signals the new value of the "vnfdVersion" attribute in "VnfInstance". See note 2. $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Version" - vimConnectionInfo: - description: > - If present, this attribute signals the changes to VIM connection info that were passed in the related - "ChangeCurrentVnfPkgRequest" structure. The provisions for sensitive information defined in clause - 4.4.1.6 apply. - type: object - additionalProperties: - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/VimConnectionInfo" LcmOpOccNotificationVerbosityType: description: > @@ -2968,7 +2964,7 @@ definitions: type: string enum: - Deployment - - Statefulset + - StatefulSet AffectedVipCp: description: > @@ -3012,7 +3008,7 @@ definitions: VipCpInfo: description: > - This type provides information related to virtual IP (VIP) CP. + This type provides information related to virtual IP CP. NOTE 1: It is possible that there is no associated VnfcCp because the VIP CP is available but not associated yet. @@ -3027,7 +3023,7 @@ definitions: properties: cpInstanceId: description: > - Identifier of this VIP CP instance and of this VipCpInfo information element. + Identifier of this virtual IP CP instance and of this VipCpInfo. $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" cpdId: description: > @@ -3362,4 +3358,8 @@ definitions: loadBalancerIp: description: > Fixed addresses assigned to an external load balancer. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IpAddress" \ No newline at end of file + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IpAddress" + addressPoolName: + description: > + Name of an address pool from which an IP address is + assigned to the virtual CP. \ No newline at end of file diff --git a/src/SOL002/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml b/src/SOL002/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml index fecc3dea..84e6e707 100644 --- a/src/SOL002/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml +++ b/src/SOL002/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml @@ -19,8 +19,8 @@ info: version: 2.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 002 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/04.03.01_60/gs_NFV-SOL002v040301p.pdf + description: ETSI GS NFV-SOL 002 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/04.04.01_60/gs_NFV-SOL002v040401p.pdf servers: - url: http://127.0.0.1/callback/v2 diff --git a/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml b/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml index 658522bc..a9137a84 100644 --- a/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml +++ b/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.11.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 002 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/04.03.01_60/gs_NFV-SOL002v040301p.pdf + description: ETSI GS NFV-SOL 002 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/04.04.01_60/gs_NFV-SOL002v040401p.pdf servers: - url: http://127.0.0.1/vnfpm/v2 @@ -495,7 +495,7 @@ components: description: | Identifier of the PM job. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new PM job resource. It can also be retrieved from the "id" - attribute in the payload body of that response. + attribute in the message content of that response. required: true style: simple explode: false @@ -519,7 +519,7 @@ components: description: | Identifier of the threshold. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new threshold resource. It can also be retrieved from - the "id" attribute in the payload body of that response. + the "id" attribute in the message content of that response. required: true style: simple explode: false diff --git a/src/SOL002/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml b/src/SOL002/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml index cba62b39..ba552bde 100644 --- a/src/SOL002/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml +++ b/src/SOL002/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml @@ -19,8 +19,8 @@ info: version: 2.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 002 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/04.03.01_60/gs_NFV-SOL002v040301p.pdf + description: ETSI GS NFV-SOL 002 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/04.04.01_60/gs_NFV-SOL002v040401p.pdf servers: - url: http://127.0.0.1/callback/v2 -- GitLab From c28e849c71ecc2a29628c3d825d460347854ad13 Mon Sep 17 00:00:00 2001 From: muhammadh Date: Tue, 7 Mar 2023 12:31:59 +0500 Subject: [PATCH 03/11] fix minor issue in SOL002 VNF Indicator API --- src/SOL002/VNFIndicator/VNFIndicator.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/SOL002/VNFIndicator/VNFIndicator.yaml b/src/SOL002/VNFIndicator/VNFIndicator.yaml index 9503c23d..e8341e6e 100644 --- a/src/SOL002/VNFIndicator/VNFIndicator.yaml +++ b/src/SOL002/VNFIndicator/VNFIndicator.yaml @@ -354,7 +354,7 @@ components: in: path description: | Identifier of the VNF indicator. - NOTE: This identifier can be retrieved from the resource referenced by the payload bodymessage content in the + NOTE: This identifier can be retrieved from the resource referenced by the message content in the response to a POST request creating a new "Individual VNF instance" resource. required: true style: simple -- GitLab From b3defe6ae1fcd57e62f290e19167e7754b5c398e Mon Sep 17 00:00:00 2001 From: ishaqm Date: Tue, 7 Mar 2023 12:37:26 +0500 Subject: [PATCH 04/11] implement OAS for SOL003 v4.4.1 --- src/SOL003/APIVersion/APIVersion.yaml | 4 +- .../General_Definitions/SOL003_def.yaml | 57 +++++++++++++++---- .../VNFFaultManagement.yaml | 16 +++--- .../VNFFaultManagementNotification.yaml | 6 +- src/SOL003/VNFIndicator/VNFIndicator.yaml | 14 ++--- .../VNFIndicatorNotification.yaml | 6 +- .../VNFLifecycleManagement.yaml | 38 ++++++------- .../SOL003VNFLifecycleManagement_def.yaml | 44 +++++++++----- .../VNFLifecycleManagementNotification.yaml | 6 +- .../VNFLifecycleOperationGranting.yaml | 8 +-- ...L003VNFLifecycleOperationGranting_def.yaml | 1 + .../VNFPackageManagement.yaml | 48 ++++++++-------- .../SOL003VNFPackageManagement_def.yaml | 9 ++- .../VNFPackageManagementNotification.yaml | 6 +- .../VNFPerformanceManagement.yaml | 32 +++++------ .../VNFPerformanceManagementNotification.yaml | 6 +- .../VNFSnapshotPackageManagement.yaml | 12 ++-- ...edResourcesQuotaAvailableNotification.yaml | 14 ++--- 18 files changed, 193 insertions(+), 134 deletions(-) diff --git a/src/SOL003/APIVersion/APIVersion.yaml b/src/SOL003/APIVersion/APIVersion.yaml index 2f1f2a24..150b645a 100644 --- a/src/SOL003/APIVersion/APIVersion.yaml +++ b/src/SOL003/APIVersion/APIVersion.yaml @@ -20,8 +20,8 @@ info: version: "1.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" externalDocs: - description: ETSI GS NFV-SOL 003 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.03.01_60/gs_NFV-SOL003v040301p.pdf + description: ETSI GS NFV-SOL 003 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.04.01_60/gs_NFV-SOL003v040401p.pdf paths: /vrqan/api_versions: diff --git a/src/SOL003/General_Definitions/SOL003_def.yaml b/src/SOL003/General_Definitions/SOL003_def.yaml index cfa6c227..7c3bfe53 100644 --- a/src/SOL003/General_Definitions/SOL003_def.yaml +++ b/src/SOL003/General_Definitions/SOL003_def.yaml @@ -206,6 +206,11 @@ definitions: without additional encoding/encryption before transmitting it, making the sensitive data visible to the endpoint. The base64 encoded certificates are only used by the VNFM to verify the authenticity of the interface endpoint of the VIM, CISM, CIR or MCIOP repository. + * NOTE 3: ETSI GS NFV-SOL 009 [i.19] specifies the means to configure into the VNFM applicable VIM connection + information via the "NFV-MANO Configuration and Information Management" interface. + * NOTE 4: Due to the possibility of configuring such information into the VNFM out-of-band, by means outside the scope of + the present document, as well as in-band, by means specified in the present document, care should be taken to + avoid unintended conflicts in the VNFM when managing such information. type: object required: - vimType @@ -216,9 +221,9 @@ definitions: instance. This identifier is managed by the NFVO. Shall be present to address additional information about the VIM, CISM, CIR or MCIOP repository if such - information has been configured into the VNFM by + information has been configured into the VNFM out-of-band by means outside the scope of the present document and - should be absent otherwise. + should be absent otherwise.See note 3. $ref: "#/definitions/Identifier" vimType: description: > @@ -242,8 +247,14 @@ definitions: the URI of an interface endpoint to communicate with the VIM, CISM, CIR or MCIOP repository. The applicable keys are dependent on the content of vimType. - Alternatively, such information may have been configured - into the VNFM and bound to the vimId. + Such information may have been configured + into the VNFM out-of-band by means outside the scope of + the present document. See note 3. + If present and VimConnectionInfo has already been + configured into the VNFM out-of-band, the information + values provided by the present attribute shall be used to + perform resource management for the VNF + instance by the VNFM. See note 4. $ref: "#/definitions/KeyValuePairs" accessInfo: description: > @@ -253,14 +264,23 @@ definitions: groups (see note 1). The applicable keys are dependent on the content of vimType. If the VimConnectionInfo structure is part of an HTTP - response payload body, sensitive attributes that are + response message content, sensitive attributes that are children of this attributes (such as passwords) shall not be included. If the VimConnectionInfo structure is part of an HTTP - request payload body, sensitive attributes that are + request message content, sensitive attributes that are children of this attribute (such as passwords) shall be present if they have not been provisioned out of band. See note 2. + Such information may have been configured into the + VNFM out-of-band by means outside the scope of the + present document. + See note 3. + If present and VimConnectionInfo has already been + configured into the VNFM out-of-band, the information + values provided by the present attribute shall be used to + perform resource management for the VNF instance by + the VNFM. See note 4. $ref: "#/definitions/KeyValuePairs" extra: description: > @@ -268,6 +288,15 @@ definitions: additional information. The applicable structure, and whether or not this attribute is available, is dependent on the content of vimType. + Such information may have been configured into the + VNFM out-of-band by means outside the scope of the + present document. + See note 3. + If present and VimConnectionInfo has already been + configured into the VNFM out-of-band, the information + values provided by the present attribute shall be used to + perform resource management for the VNF instance by + the VNFM. See note 4. $ref: "#/definitions/KeyValuePairs" ResourceHandle: @@ -408,14 +437,13 @@ definitions: * NOTE 2: The following conditions apply to the attributes “netAttDefResourceId” and “cpProtocolData” for an external CP instance connected or to be connected to a secondary container cluster network: - 1) The "netAttDefResourceId" and "cpProtocolData" attributes shall both be absent for the deletion of an - existing external CP instance addressed by cpInstanceId. + 1) Void. 2) The "netAttDefResourceId" attribute shall be present and the "cpProtocolData" attribute may be present for a to-be-created external CP instance or an existing external CP instance. * NOTE 3: Cardinality greater than 1 is only applicable for specific cases where more than one network attachment definition resource is needed to fulfil the connectivity requirements of the external CP, e.g. to build a link redundant mated pair in SR-IOV cases. When more than one netAttDefResourceId is indicated, all shall belong - to the same namespace as defined by the corresponding "netAttDefResourceNamespace" attribute in the + to the same namespace as defined by the corresponding "containerNamespace" attribute in the "resourceHandle" a attribute in the "NetAttDefResourceData". * NOTE 4: Either linkPortId or netAttDefResourceId may be included, but not both. anyOf: @@ -628,6 +656,10 @@ definitions: * NOTE 2: In case the cluster can configure an external load balancer but no loadBalancerIp is provided the container cluster will assign an IP address. + * NOTE 3: The attribute is only relevant if the virtual CP is instantiated in a cluster that supports configuration of IP + address pools for virtual CPs. Otherwise it shall be ignored. MetalLB is an example of a solution for + Kubernetes® that supports configuration of address pools for load balancer services. + * NOTE 4: The loadBalancerIp and the addressPoolName attributes shall not be present at the same time. type: object required: - type @@ -643,8 +675,13 @@ definitions: loadBalancerIp: description: > Fixed address to assign to an external load balancer. - See notes 1 and 2. + See notes 1,2 and 4. $ref: "#/definitions/IpAddress" + addressPoolName: + description: > + Name of an address pool from which the container + cluster will assign an IP address to the virtual CP. See + notes 3 and 4. ExtVirtualLinkData: description: > diff --git a/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml b/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml index 5204d752..237f61b0 100644 --- a/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml +++ b/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: "1.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" + version: "1.11.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" externalDocs: - description: ETSI GS NFV-SOL 003 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.03.01_60/gs_NFV-SOL003v040301p.pdf + description: ETSI GS NFV-SOL 003 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.04.01_60/gs_NFV-SOL003v040401p.pdf servers: - url: http://127.0.0.1/vnffm/v1 @@ -324,7 +324,7 @@ components: Identifier of the alarm. This identifier can be retrieved from the "id" attribute of the "alarm" attribute in the AlarmNotification or AlarmClearedNotification. It can also be retrieved from the "id" attribute of the applicable array element in - the payload body of the response to a GET request to the "Alarms" resource. + the message content of the response to a GET request to the "Alarms" resource. required: true style: simple explode: false @@ -339,7 +339,7 @@ components: This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new "Individual subscription" resource. It can also be retrieved from the "id" - attribute in the payload body of that response. + attribute in the message content of that response. required: true style: simple explode: false @@ -705,11 +705,11 @@ components: Subscriptions.Post.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content Shall be returned upon the following error: The - content type of the payload body is supported - and the payload body of a request contains + content type of the message content is supported + and the message content of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its handling diff --git a/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml b/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml index 68394808..329c04c5 100644 --- a/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml +++ b/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 1.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 1.11.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 003 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.03.01_60/gs_NFV-SOL003v040301p.pdf + description: ETSI GS NFV-SOL 003 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.04.01_60/gs_NFV-SOL003v040401p.pdf servers: - url: http://127.0.0.1/callback/v1 diff --git a/src/SOL003/VNFIndicator/VNFIndicator.yaml b/src/SOL003/VNFIndicator/VNFIndicator.yaml index 6f55e1c9..aa0921da 100644 --- a/src/SOL003/VNFIndicator/VNFIndicator.yaml +++ b/src/SOL003/VNFIndicator/VNFIndicator.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: "1.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" + version: "1.11.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" externalDocs: - description: ETSI GS NFV-SOL 003 V3.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.03.01_60/gs_NFV-SOL003v040301p.pdf + description: ETSI GS NFV-SOL 003 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.04.01_60/gs_NFV-SOL003v040401p.pdf servers: - url: http://127.0.0.1/vnfind/v1 @@ -343,7 +343,7 @@ components: This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new "Individual VNF instance" resource. It can also be retrieved from the "id" - attribute in the payload body of that response. + attribute in the message content of that response. required: true style: simple explode: false @@ -356,7 +356,7 @@ components: description: | Identifier of the VNF indicator. This identifier can be retrieved from the resource referenced by the - payload body in the response to a POST request creating a new "Individual VNF + message content in the response to a POST request creating a new "Individual VNF instance" resource. required: true style: simple @@ -372,7 +372,7 @@ components: This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new "Individual subscription" resource. It can also be retrieved from the "id" - attribute in the payload body of that response. + attribute in the message content of that response. required: true style: simple explode: false @@ -573,7 +573,7 @@ components: Subscriptions.Post.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content Shall be returned when a subscription with the same callback URI and the same filter diff --git a/src/SOL003/VNFIndicatorNotification/VNFIndicatorNotification.yaml b/src/SOL003/VNFIndicatorNotification/VNFIndicatorNotification.yaml index c89a094a..37413c6b 100644 --- a/src/SOL003/VNFIndicatorNotification/VNFIndicatorNotification.yaml +++ b/src/SOL003/VNFIndicatorNotification/VNFIndicatorNotification.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: "1.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" + version: "1.11.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" externalDocs: - description: ETSI GS NFV-SOL 003 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.03.01_60/gs_NFV-SOL003v040301p.pdf + description: ETSI GS NFV-SOL 003 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.04.01_60/gs_NFV-SOL003v040401p.pdf servers: - url: http://127.0.0.1/callback/v1 diff --git a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml index 3955a2c5..a26e679a 100644 --- a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: "2.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" + version: "2.11.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" externalDocs: - description: ETSI GS NFV-SOL 003 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.03.01_60/gs_NFV-SOL003v040301p.pdf + description: ETSI GS NFV-SOL 003 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.04.01_60/gs_NFV-SOL003v040401p.pdf servers: - url: http://127.0.0.1/vnflcm/v2 @@ -1365,7 +1365,7 @@ components: description: | Identifier of the VNF instance for the VNF snapshot to be reverted to. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new "Individual VNF instance" resource. - It can also be retrieved from the "id" attribute in the payload body of that response. + It can also be retrieved from the "id" attribute in the message content of that response. required: true style: simple explode: false @@ -1391,7 +1391,7 @@ components: description: | Identifier of this subscription. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new subscription resource. It can also be retrieved from - the "id" attribute in the payload body of that response. + the "id" attribute in the message content of that response. required: true style: simple explode: false @@ -1405,7 +1405,7 @@ components: Identifier of the "Individual VNF snapshot" resource. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new VNF snapshot resource. It can also be retrieved from the "id" attribute in - the payload body of that response. + the message content of that response. required: true style: simple explode: false @@ -1610,11 +1610,11 @@ components: VNFInstances.Post.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content Shall be returned upon the following error: The content - type of the payload body is supported and the payload - body of a request contains syntactically correct data + type of the message content is supported and the message + content of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [8], @@ -2941,7 +2941,7 @@ components: 202 ACCEPTED Shall be returned when the request has been accepted for processing. - The response shall have an empty payload body. + The response shall have an empty message content. headers: WWW-Authenticate: description: | @@ -3052,7 +3052,7 @@ components: 202 ACCEPTED Shall be returned when the request has been accepted for processing. - The response shall have an empty payload body. + The response shall have an empty message content. headers: WWW-Authenticate: description: | @@ -3289,7 +3289,7 @@ components: 202 ACCEPTED Shall be returned when the request has been accepted for processing. - The response shall have an empty payload body. + The response shall have an empty message content. headers: WWW-Authenticate: description: | @@ -3484,10 +3484,10 @@ components: Subscriptions.Post.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content - Shall be returned upon the following error: The content type of the payload body is supported - and the payload body of a request contains syntactically correct data but the data cannot be processed. + Shall be returned upon the following error: The content type of the message content is supported + and the message content of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [8], including rules for the presence of the response body. Specifically in case of this resource, the response code 422 shall also be returned if the VNFM has @@ -3749,11 +3749,11 @@ components: CreateVnfSnapshotTask.Post.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content Shall be returned upon the following error: The - content type of the payload body is supported and - the payload body of a request contains syntactically + content type of the message content is supported and + the message content of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its handling is specified in clause 6.4 of ETSI @@ -4254,7 +4254,7 @@ components: Shall be returned when the whole content of the VNF state snapshot file has been read successfully. - The payload body shall contain a copy of the VNF state snapshot file and the "Content-Type" HTTP + The message content shall contain a copy of the VNF state snapshot file and the "Content-Type" HTTP header shall be set according to the content type of the VNF state snapshot file. If the VNF state snapshot content is encrypted, the header shall be set to the value "application/cms" (IETF RFC 7193). diff --git a/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml b/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml index 32e84d34..52c5a6a4 100644 --- a/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml +++ b/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml @@ -858,7 +858,7 @@ definitions: Configurable properties referred in these attributes are declared in the VNFD. The declaration of configurable properties in the VNFD can optionally contain the specification of initial values. See notes 2, 3 and 4. The VNFM shall reject requests to write configurable properties that are - not declared in the VNFD with a "422 Unprocessable entity" error response as defined in clause + not declared in the VNFD with a "422 Unprocessable Content" error response as defined in clause 6.4 of ETSI GS NFV SOL 013. These configurable properties include the following standard attributes, which are declared in @@ -896,6 +896,17 @@ definitions: VNFCs are managed by a CISM. This attribute can be modified with the PATCH method. + If VIM connection information is provisioned + to the VNFM by means outside the scope of + the present document, the information in the + "vimConnectionInfo" attribute provides + necessary information for binding the + VnfInstance representing the "Individual VNF + instance" to the applicable VIM connection + information used to perform resource + management for the VNF instance. See also + the definition of the "VimConnectionInfo" in + clause 4.4.1.6. type: object additionalProperties: $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/VimConnectionInfo" @@ -1081,7 +1092,7 @@ definitions: All extensions that are allowed for the VNF are declared in the VNFD. The declaration of an extension in the VNFD contains information on whether its presence is optional or required, and optionally can specify an initial value. See notes 2 and 4. The VNFM shall reject requests to write extension attributes - that are not declared in the VNFD with a "422 Unprocessable entity" error response as defined in clause + that are not declared in the VNFD with a "422 Unprocessable Content" error response as defined in clause 6.4 of ETSI GS NFV-SOL 013. Modifying the values of these attributes has no direct effect on the VNF instance; however, the modified @@ -1733,9 +1744,10 @@ definitions: - TEMPORARY computeResource: description: > - Reference to the VirtualCompute resource. Detailed information is - (for new and modified resources) or has been (for removed - resources) available from the VIM. + Reference to the VirtualCompute resource or reference to a Compute MCIO. + Detailed information is (for new and modified + resources) or has been (for removed + resources) available from the VIM or the CISM. $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ResourceHandle" resourceDefinitionId: description: > @@ -2450,8 +2462,8 @@ definitions: - LINK_PORT_REMOVED networkResource: description: > - Reference to the VirtualNetwork resource. - Detailed information is (for new and modified resources) or has been (for removed resources) available from the VIM. + Reference to the VirtualNetwork resource or reference to a Network MCIO. + Detailed information is (for new and modified resources) or has been (for removed resources) available from the VIM or the CISM. See note 1. $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ResourceHandle" vnfLinkPortIds: @@ -2532,9 +2544,9 @@ definitions: - TEMPORARY storageResource: description: > - Reference to the VirtualStorage resource. Detailed information is - (for new and modified resources) or has been (for removed - resources) available from the VIM. + Reference to the VirtualStorage resource or reference to a Storage MCIO. + Detailed information is (for new and modified resources) or has been (for removed + resources) available from the VIM or the CISM. $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ResourceHandle" resourceDefinitionId: description: > @@ -2562,7 +2574,7 @@ definitions: NOTE: Cardinality greater than 1 is only applicable for specific cases where more than one network attachment definition resource is needed to fulfil the connectivity requirements of the VNF internal CP, e.g. to build a link redundant mated pair in SR-IOV cases. When more than one netAttDefResourceId is indicated, all shall - belong to the same namespace as defined by the corresponding "netAttDefResourceNamespace" attribute + belong to the same namespace as defined by the corresponding "containerNamespace" attribute in the "resourceHandle" attribute in the "NetAttDefResourceData". type: object required: @@ -3556,7 +3568,7 @@ definitions: type: string enum: - Deployment - - Statefulset + - StatefulSet AffectedVipCp: description: > @@ -3615,7 +3627,7 @@ definitions: properties: cpInstanceId: description: > - Identifier of this VIP CP instance and of this VipCpInfo information element. + Identifier of this VIP CP instance and of this VipCpInfo. $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" cpdId: description: > @@ -3950,4 +3962,8 @@ definitions: loadBalancerIp: description: > Fixed addresses assigned to an external load balancer. - $ref: '../../General_Definitions/SOL003_def.yaml#/definitions/IpAddress' \ No newline at end of file + $ref: '../../General_Definitions/SOL003_def.yaml#/definitions/IpAddress' + addressPoolName: + description: > + Name of an address pool from which an IP address is + assigned to the virtual CP. \ No newline at end of file diff --git a/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml b/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml index a405fce9..9ca18232 100644 --- a/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml +++ b/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml @@ -16,11 +16,11 @@ info: license: name: "ETSI Forge copyright notice" url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: "2.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" + version: "2.11.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" externalDocs: - description: ETSI GS NFV-SOL 003 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.03.01_60/gs_NFV-SOL003v040301p.pdf + description: ETSI GS NFV-SOL 003 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.04.01_60/gs_NFV-SOL003v040401p.pdf servers: - url: http://127.0.0.1/callback/v2 diff --git a/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml b/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml index ffd277c9..15045be9 100644 --- a/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml +++ b/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: "1.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" + version: "1.11.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" externalDocs: - description: ETSI GS NFV-SOL 003 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.03.01_60/gs_NFV-SOL003v040301p.pdf + description: ETSI GS NFV-SOL 003 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.04.01_60/gs_NFV-SOL003v040401p.pdf servers: - url: http://127.0.0.1/grant/v1 @@ -124,7 +124,7 @@ components: This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request granting a new VNF lifecycle operation. It can also be retrieved from the "id" - attribute in the payload body of that response. + attribute in the message content of that response. required: true style: simple explode: false diff --git a/src/SOL003/VNFLifecycleOperationGranting/definitions/SOL003VNFLifecycleOperationGranting_def.yaml b/src/SOL003/VNFLifecycleOperationGranting/definitions/SOL003VNFLifecycleOperationGranting_def.yaml index 3ee3c1b1..db092d5e 100644 --- a/src/SOL003/VNFLifecycleOperationGranting/definitions/SOL003VNFLifecycleOperationGranting_def.yaml +++ b/src/SOL003/VNFLifecycleOperationGranting/definitions/SOL003VNFLifecycleOperationGranting_def.yaml @@ -513,6 +513,7 @@ definitions: - if type="LINKPORT" : VnfExtCpd - if type="STORAGE" : VirtualStorageDesc - If type="OSCONTAINER": OsContainerDesc + - If type=" VIRTUALCP ": VirtualCpd - Cardinality may be greater than "1" when type="OSCONTAINER" and multiple references to OsContainerDesc are present in the VDU indicated by the "vduId". Cardinality shall be "1" otherwise. type: array diff --git a/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml b/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml index 04a91832..dd9af8e4 100644 --- a/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml +++ b/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: "2.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" + version: "2.11.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" externalDocs: - description: ETSI GS NFV-SOL 003 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.03.01_60/gs_NFV-SOL003v040301p.pdf + description: ETSI GS NFV-SOL 003 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.04.01_60/gs_NFV-SOL003v040401p.pdf servers: - url: http://127.0.0.1/vnfpkgm/v2 @@ -734,7 +734,7 @@ components: description: > Flag (i.e. parameter without value) that instructs the NFVO to exclude the set of additional MANO artifacts (i.e. those that are not images) - from the response payload body. + from the response message content. The NFVO shall support this parameter. The VNFM may supply this parameter. in: query @@ -746,7 +746,7 @@ components: name: exclude_all_non_mano_artifacts description: > Flag (i.e. parameter without value) that instructs the NFVO to exclude - the set of non-MANO artifacts from the response payload body. + the set of non-MANO artifacts from the response message content. The NFVO shall support this parameter. The VNFM may supply this parameter. in: query @@ -758,7 +758,7 @@ components: name: include_external_artifacts description: > Flag (i.e. parameter without value) that instructs the NFVO to include - external artifacts in the response payload body. It shall not be treated + external artifacts in the response message content. It shall not be treated as an error if this flag is provided but there is no external artifact to include in the result. If this parameter is missing, no external artifacts shall be included. @@ -890,7 +890,7 @@ components: This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new "Individual subscription" resource. It can also be retrieved from - the "id" attribute in the payload body of that response. + the "id" attribute in the message content of that response. required: true style: simple explode: false @@ -1069,7 +1069,7 @@ components: 200 OK Shall be returned when the content of the VNFD has been read successfully. - The payload body shall contain a copy of the file representing the VNFD or + The message content shall contain a copy of the file representing the VNFD or a ZIP file that contains the file or multiple files representing the VNFD, as specified above. The "Content-Type" HTTP header shall be set according to the format of the @@ -1146,7 +1146,7 @@ components: 200 OK Shall be returned when the content of the VNFD has been read successfully. - The payload body shall contain a copy of the file representing the VNFD or + The message content shall contain a copy of the file representing the VNFD or a ZIP file that contains the file or multiple files representing the VNFD, as specified above. The "Content-Type" HTTP header shall be set according to the format of the @@ -1225,7 +1225,7 @@ components: Shall be returned when the content of the manifest has been read successfully. If the "include_signatures" URI query parameter was absent in the request, or if the manifest file has all security-related information embedded - (i.e. there is no separate certificate file), the payload body shall contain + (i.e. there is no separate certificate file), the message content shall contain a copy of the manifest file of the VNF package and the "Content-Type" HTTP header shall be set to "text/plain". @@ -1233,7 +1233,7 @@ components: request and the manifest file does not have all the security-related information embedded (i.e. there is a separate certificate file), the "Content-Type" HTTP header shall be set to "application/zip and the - payload body shall contain a ZIP archive which includes: + message content shall contain a ZIP archive which includes: • a copy of the manifest file of the VNF package; • a copy of the related individual certificate file. headers: @@ -1343,7 +1343,7 @@ components: Shall be returned when the content of the manifest has been read successfully. If the "include_signatures" URI query parameter was absent in the request, or if the manifest file has all security-related information embedded - (i.e. there is no separate certificate file), the payload body shall contain + (i.e. there is no separate certificate file), the message content shall contain a copy of the manifest file of the VNF package and the "Content-Type" HTTP header shall be set to "text/plain". @@ -1351,7 +1351,7 @@ components: request and the manifest file does not have all the security-related information embedded (i.e. there is a separate certificate file), the "Content-Type" HTTP header shall be set to "application/zip and the - payload body shall contain a ZIP archive which includes: + message content shall contain a ZIP archive which includes: • a copy of the manifest file of the VNF package; • a copy of the related individual certificate file. headers: @@ -1492,7 +1492,7 @@ components: a single consecutive byte range from the content of the VNF package file has been read successfully according to the request. The response body shall contain the requested part of the VNF package file. - The "Content-Range" HTTP header shall be provided according to IETF RFC 7233. + The "Content-Range" HTTP header shall be provided according to IETF RFC 9110 [16]. The "Content-Type" HTTP header shall be set as defined above for the "200 OK" response. headers: Content-Range: @@ -1699,7 +1699,7 @@ components: been read successfully. If the "include_signatures" request URI parameter was not provided in - the related request, the payload body shall contain a copy of the artifact + the related request, the message content shall contain a copy of the artifact file from the VNF package, as defined by ETSI GS NFV-SOL 004 and the "Content-Type" HTTP header shall be set according to the content type of the artifact file. If the artifact is encrypted, the header shall be set to the value "application/cms" @@ -1707,7 +1707,7 @@ components: to the value "application/octet-stream". If the "include_signatures" request URI parameter was provided in the related request, - the "Content-Type" HTTP header shall be set to "application/zip and the payload body + the "Content-Type" HTTP header shall be set to "application/zip and the message content shall contain a ZIP archive which includes: • a copy of the artifact file from the VNF package, as defined by ETSI GS NFV SOL 004; • the related security information (individual signature file and optional related @@ -2017,7 +2017,7 @@ components: a single consecutive byte range from the content of the VNF package file has been read successfully according to the request. The response body shall contain the requested part of the VNF package file. - The "Content-Range" HTTP header shall be provided according to IETF RFC 7233. + The "Content-Range" HTTP header shall be provided according to IETF RFC 9110 [16]. The "Content-Type" HTTP header shall be set as defined above for the "200 OK" response. headers: Content-Range: @@ -2055,7 +2055,7 @@ components: Shall be returned when the whole content of the archive containing the artifact files has been read successfully. - The payload body shall be a ZIP archive containing the requested + The message content shall be a ZIP archive containing the requested set of artifacts selected according to the provisions specified above in this clause, and, if the flag "include_signatures" was provided in the related request, the applicable signature files and, if available, @@ -2100,7 +2100,7 @@ components: The response body shall contain the requested part of the VNF package file. The "Content-Range" HTTP header shall be provided according to - IETF RFC 7233. + IETF RFC 9110 [18]. The "Content-Type" HTTP header shall be set as defined above for the "200 OK" response. headers: @@ -2142,7 +2142,7 @@ components: successfully according to the request. The response body shall contain the requested part of the archive. The "Content-Type" HTTP header shall be set to "application/zip". - The "Content-Range" HTTP header shall be provided according to IETF RFC 7233. + The "Content-Range" HTTP header shall be provided according to IETF RFC 9110 [17]. headers: Content-Range: required : true @@ -2182,7 +2182,7 @@ components: Shall be returned when the whole content of the archive containing the artifact files has been read successfully. - The payload body shall be a ZIP archive containing the requested + The message content shall be a ZIP archive containing the requested set of artifacts selected according to the provisions specified above in this clause, and, if the flag "include_signatures" was provided in the related request, the applicable signature files and, if available, @@ -2267,7 +2267,7 @@ components: been read successfully. If the "include_signatures" request URI parameter was not provided in - the related request, the payload body shall contain a copy of the artifact + the related request, the message content shall contain a copy of the artifact file from the VNF package, as defined by ETSI GS NFV-SOL 004 and the "Content-Type" HTTP header shall be set according to the content type of the artifact file. If the artifact is encrypted, the header shall be set to the value "application/cms" @@ -2275,7 +2275,7 @@ components: to the value "application/octet-stream". If the "include_signatures" request URI parameter was provided in the related request, - the "Content-Type" HTTP header shall be set to "application/zip and the payload body + the "Content-Type" HTTP header shall be set to "application/zip and the message content shall contain a ZIP archive which includes: • a copy of the artifact file from the VNF package, as defined by ETSI GS NFV SOL 004; • the related security information (individual signature file and optional related @@ -2435,7 +2435,7 @@ components: Subscriptions.Post.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content Shall be returned when a subscription with the same callback URI and the same filter already diff --git a/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml b/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml index 2c264066..191ffb5c 100644 --- a/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml +++ b/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml @@ -135,7 +135,8 @@ definitions: $ref: "#/definitions/PackageUsageStateType" vnfmInfo: description: > - Specifies VNFMs compatible with the VNF. This information is copied from the VNFD. See note 3. + Specifies VNFMs compatible with the VNF. This information is copied from the VNFD of the on-boarded VNF package.. See note 3. + It shall be present after the VNF package content has been on-boarded and absent otherwise. $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" userDefinedData: description: > @@ -389,6 +390,8 @@ definitions: description: > This type represents an artifact other than a software image which is contained in or external to a VNF package. + * NOTE 1: The attribute name "artifactURI" does not comply with the naming convention defined in clause 4.3 in ETSI GS + NFV-SOL 015 [i.20]. This is to maintain the backward compatibility. type: object required: - artifactPath @@ -425,7 +428,9 @@ definitions: Shall be present if the artifact is external to the package and shall be absent otherwise. - EXAMPLE: https://example.com/m%40ster.sh + EXAMPLE:https://example.com/m%40ster.sh + See note. + type: array items: $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri" diff --git a/src/SOL003/VNFPackageManagementNotification/VNFPackageManagementNotification.yaml b/src/SOL003/VNFPackageManagementNotification/VNFPackageManagementNotification.yaml index 56b6edee..eafa5d26 100644 --- a/src/SOL003/VNFPackageManagementNotification/VNFPackageManagementNotification.yaml +++ b/src/SOL003/VNFPackageManagementNotification/VNFPackageManagementNotification.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.11.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 003 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.03.01_60/gs_NFV-SOL003v040301p.pdf + description: ETSI GS NFV-SOL 003 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.04.01_60/gs_NFV-SOL003v040401p.pdf servers: - url: http://127.0.0.1/callback/v2 diff --git a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml index 3a9f0d2d..9fcbc9b8 100644 --- a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml +++ b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.11.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 003 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.03.01_60/gs_NFV-SOL003v040301p.pdf + description: ETSI GS NFV-SOL 003 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.04.01_60/gs_NFV-SOL003v040401p.pdf servers: - url: http://127.0.0.1/vnfpm/v2 @@ -463,7 +463,7 @@ components: This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new "Individual PM job" resource. It can also be retrieved from the "id" - attribute in the payload body of that response. + attribute in the message content of that response. required: true style: simple explode: false @@ -489,7 +489,7 @@ components: This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new "Individual threshold" resource. It can also be retrieved from the "id" - attribute in the payload body of that response. + attribute in the message content of that response. required: true style: simple explode: false @@ -552,11 +552,11 @@ components: PmJobs.Post.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content Shall be returned upon the following error: The - content type of the payload body is supported and - the payload body of a request contains syntactically + content type of the message content is supported and + the message content of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [8], @@ -765,11 +765,11 @@ components: IndividualPmJob.Patch.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content Shall be returned upon the following error: The - content type of the payload body is supported and the - payload body of a request contains syntactically + content type of the message content is supported and the + message content of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [8], @@ -909,11 +909,11 @@ components: Thresholds.Post.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content Shall be returned upon the following error: The - content type of the payload body is supported and - the payload body of a request contains + content type of the message content is supported and + the message content of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its handling is @@ -1155,8 +1155,8 @@ components: 422 Unprocessable entity Shall be returned upon the following error: The - content type of the payload body is supported and - the payload body of a request contains + content type of the message content is supported and + the message content of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its handling is diff --git a/src/SOL003/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml b/src/SOL003/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml index e98b9e6c..670502e8 100644 --- a/src/SOL003/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml +++ b/src/SOL003/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.11.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 003 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.03.01_60/gs_NFV-SOL003v040301p.pdf + description: ETSI GS NFV-SOL 003 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.04.01_60/gs_NFV-SOL003v040401p.pdf servers: - url: http://127.0.0.1/callback/v2 diff --git a/src/SOL003/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml b/src/SOL003/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml index 787d5ebf..3fb67bd5 100644 --- a/src/SOL003/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml +++ b/src/SOL003/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 1.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 1.11.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 003 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.03.01_60/gs_NFV-SOL003v040301p.pdf + description: ETSI GS NFV-SOL 003 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.04.01_60/gs_NFV-SOL003v040401p.pdf servers: - url: http://127.0.0.1/vnfsnapshotpkgm/v1 @@ -408,7 +408,7 @@ components: from the content of the VNF snapshot package file has been read successfully according to the request. The response body shall contain the requested part of the VNF snapshot package file. The "Content-Range" - HTTP header shall be provided according to IETF RFC 7233. The "Content-Type" HTTP header shall be set as + HTTP header shall be provided according to IETF RFC 49110 [19]. The "Content-Type" HTTP header shall be set as defined above for the "200 OK" response. headers: Version: @@ -550,7 +550,7 @@ components: IndividualArtifact.Get.206: description: | - 2006 PARTIAL CONTENT + 206 PARTIAL CONTENT If the NFVO supports range requests, this response shall be returned when a single consecutive byte range from the content of the artifact file has been read successfully according to the request. @@ -561,7 +561,7 @@ components: The "Content-Type" HTTP header shall be set according to the content type of the artifact file. If the content type cannot be determined, the header shall be set to the value "application/octet-stream". - The "Content-Range" HTTP header shall be provided according to IETF RFC 7233. + The "Content-Range" HTTP header shall be provided according to IETF RFC 9110[20]. headers: Version: description: The used API version. diff --git a/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/VirtualisedResourcesQuotaAvailableNotification.yaml b/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/VirtualisedResourcesQuotaAvailableNotification.yaml index a47d1b30..373fc581 100644 --- a/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/VirtualisedResourcesQuotaAvailableNotification.yaml +++ b/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/VirtualisedResourcesQuotaAvailableNotification.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: "1.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" + version: "1.11.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" externalDocs: - description: ETSI GS NFV-SOL 003 V4.3.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.03.01_60/gs_NFV-SOL003v040301p.pdf + description: ETSI GS NFV-SOL 003 V4.4.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/04.04.01_60/gs_NFV-SOL003v040401p.pdf servers: - url: http://127.0.0.1/vrqan/v1 @@ -194,7 +194,7 @@ components: This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new "Individual subscription" resource. It can also be retrieved from the "id" - attribute in the payload body of that response. + attribute in the message content of that response. required: true style: simple explode: false @@ -303,11 +303,11 @@ components: Subscriptions.Post.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content Shall be returned upon the following error: - The content type of the payload body is - supported and the payload body of a + The content type of the message content is + supported and the message content of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its -- GitLab From e91a058e42765a7575f2256257f37b7279699322 Mon Sep 17 00:00:00 2001 From: muhammadh Date: Tue, 7 Mar 2023 18:02:27 +0500 Subject: [PATCH 05/11] update SOL002SOL003_resp.yaml as per v4.4.1 --- src/responses/SOL002SOL003_resp.yaml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/responses/SOL002SOL003_resp.yaml b/src/responses/SOL002SOL003_resp.yaml index 78d92fe9..32ba91ec 100644 --- a/src/responses/SOL002SOL003_resp.yaml +++ b/src/responses/SOL002SOL003_resp.yaml @@ -77,7 +77,7 @@ components: "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect - query parameters or the payload body contains a syntactically incorrect data structure), + query parameters or the message content contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. @@ -209,7 +209,7 @@ components: This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response - contains a 200 OK response code and a payload body with an empty array. + contains a 200 OK response code and a message content with an empty array. headers: Content-Type: description: The MIME type of the body of the response. @@ -378,7 +378,7 @@ components: description: > 413 PAYLOAD TOO LARGE - If the payload body of a request is larger than the amount of data the API producer is willing or able to process, + If the message content of a request is larger than the amount of data the API producer is willing or able to process, it shall respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for closing the connection. The "ProblemDetails" structure may be omitted. headers: @@ -477,9 +477,9 @@ components: 422: description: > - 422 UNPROCESSABLE ENTITY + 422 UNPROCESSABLE CONTENT - If the payload body of a request contains syntactically correct data (e.g. well-formed JSON) but the data + If the message content of a request contains syntactically correct data (e.g. well-formed JSON) but the data cannot be processed (e.g. because it fails validation against a schema), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. -- GitLab From c51fd5431ff64e396817d3e524d82edbd2423b27 Mon Sep 17 00:00:00 2001 From: Mubeena Date: Fri, 10 Mar 2023 11:59:28 +0500 Subject: [PATCH 06/11] fix issue #8 - fix definition for IpOverEthernetAddressInfo type in v4.4.1 --- .../definitions/SOL002VNFLifecycleManagement_def.yaml | 10 +++++----- .../definitions/SOL003VNFLifecycleManagement_def.yaml | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml b/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml index 3920b3e4..cdf596f1 100644 --- a/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml +++ b/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml @@ -2398,11 +2398,6 @@ definitions: - macAddress - required: - ipAddresses - oneOf: - - required: - - addresses - - required: - - addressRange properties: macAddress: description: > @@ -2421,6 +2416,11 @@ definitions: type: object required: - type + oneOf: + - required: + - addresses + - required: + - addressRange properties: type: description: > diff --git a/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml b/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml index 52c5a6a4..ff7f9337 100644 --- a/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml +++ b/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml @@ -2997,11 +2997,6 @@ definitions: - macAddress - required: - ipAddresses - oneOf: - - required: - - addresses - - required: - - addressRange properties: macAddress: description: > @@ -3020,6 +3015,11 @@ definitions: type: object required: - type + oneOf: + - required: + - addresses + - required: + - addressRange properties: type: description: > -- GitLab From 347f100036d0e34ba97a28037b3c985183bcbd2b Mon Sep 17 00:00:00 2001 From: Mubeena Date: Fri, 10 Mar 2023 12:22:11 +0500 Subject: [PATCH 07/11] fix issue #7 - fix definition for IpOverEthernetAddressData type in v4.4.1 --- src/SOL002/General_Definitions/SOL002_def.yaml | 14 +++++++------- src/SOL003/General_Definitions/SOL003_def.yaml | 14 +++++++------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/src/SOL002/General_Definitions/SOL002_def.yaml b/src/SOL002/General_Definitions/SOL002_def.yaml index 58bf5095..b5c2dd5d 100644 --- a/src/SOL002/General_Definitions/SOL002_def.yaml +++ b/src/SOL002/General_Definitions/SOL002_def.yaml @@ -444,13 +444,6 @@ definitions: - macAddress - required: - ipAddresses - oneOf: - - required: - - fixedAddresses - - required: - - numDynamicAddresses - - required: - - ipAddressRange properties: macAddress: description: > @@ -485,6 +478,13 @@ definitions: type: object required: - type + oneOf: + - required: + - fixedAddresses + - required: + - numDynamicAddresses + - required: + - ipAddressRange properties: type: description: > diff --git a/src/SOL003/General_Definitions/SOL003_def.yaml b/src/SOL003/General_Definitions/SOL003_def.yaml index 7c3bfe53..4aad6852 100644 --- a/src/SOL003/General_Definitions/SOL003_def.yaml +++ b/src/SOL003/General_Definitions/SOL003_def.yaml @@ -557,13 +557,6 @@ definitions: - macAddress - required: - ipAddresses - oneOf: - - required: - - fixedAddresses - - required: - - numDynamicAddresses - - required: - - ipAddressRange properties: macAddress: description: > @@ -598,6 +591,13 @@ definitions: type: object required: - type + oneOf: + - required: + - fixedAddresses + - required: + - numDynamicAddresses + - required: + - ipAddressRange properties: type: description: > -- GitLab From dcf62028c20fa1201184a461c7acf086921bc260 Mon Sep 17 00:00:00 2001 From: Mubeena Date: Mon, 13 Mar 2023 12:44:30 +0500 Subject: [PATCH 08/11] fix issue #7 - change ipAddressRange to addressRange in v4.4.1 --- src/SOL002/General_Definitions/SOL002_def.yaml | 2 +- src/SOL003/General_Definitions/SOL003_def.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/SOL002/General_Definitions/SOL002_def.yaml b/src/SOL002/General_Definitions/SOL002_def.yaml index b5c2dd5d..a2b428ff 100644 --- a/src/SOL002/General_Definitions/SOL002_def.yaml +++ b/src/SOL002/General_Definitions/SOL002_def.yaml @@ -484,7 +484,7 @@ definitions: - required: - numDynamicAddresses - required: - - ipAddressRange + - addressRange properties: type: description: > diff --git a/src/SOL003/General_Definitions/SOL003_def.yaml b/src/SOL003/General_Definitions/SOL003_def.yaml index 4aad6852..87406e45 100644 --- a/src/SOL003/General_Definitions/SOL003_def.yaml +++ b/src/SOL003/General_Definitions/SOL003_def.yaml @@ -597,7 +597,7 @@ definitions: - required: - numDynamicAddresses - required: - - ipAddressRange + - addressRange properties: type: description: > -- GitLab From 43e030a263dcd393d224f85f9f3caa6a336eeb82 Mon Sep 17 00:00:00 2001 From: "M. Hamza" Date: Mon, 13 Mar 2023 17:28:49 +0500 Subject: [PATCH 09/11] fix minor issues in SOL002 --- .../General_Definitions/SOL002_def.yaml | 1 + .../SOL002VNFLifecycleManagement_def.yaml | 20 ++++++++----------- .../VNFLifecycleManagementNotification.yaml | 2 +- .../VNFPerformanceManagementNotification.yaml | 2 +- 4 files changed, 11 insertions(+), 14 deletions(-) diff --git a/src/SOL002/General_Definitions/SOL002_def.yaml b/src/SOL002/General_Definitions/SOL002_def.yaml index a2b428ff..7bad7626 100644 --- a/src/SOL002/General_Definitions/SOL002_def.yaml +++ b/src/SOL002/General_Definitions/SOL002_def.yaml @@ -572,6 +572,7 @@ definitions: Name of an address pool from which the container cluster will assign an IP address to the virtual CP. See notes 3 and 4. + type: string ExtVirtualLinkData: description: > diff --git a/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml b/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml index cdf596f1..52fa68c3 100644 --- a/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml +++ b/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml @@ -1378,11 +1378,9 @@ definitions: - TEMPORARY computeResource: description: > - Reference to the VirtualCompute resource or - reference to a Compute MCIO. - Detailed information is (for new and modified - resources) or has been (for removed - resources) available from the VIM or the CISM. + Reference to the VirtualCompute resource or reference to a Compute MCIO. + Detailed information is (for new and modified resources) or has been (for removed resources) + available from the VIM or the CISM. $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ResourceHandle" metadata: description: > @@ -1477,10 +1475,8 @@ definitions: - LINK_PORT_REMOVED networkResource: description: > - Reference to the VirtualNetwork resource - resource or reference to a Network MCIO. - Detailed information is (for new and modified - resources) or has been (for removed resources) + Reference to the VirtualNetwork resource resource or reference to a Network MCIO. + Detailed information is (for new and modified resources) or has been (for removed resources) available from the VIM or the CISM. See note. $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ResourceHandle" vnfLinkPortIds: @@ -1547,8 +1543,7 @@ definitions: - TEMPORARY storageResource: description: > - Reference to the VirtualStorage resource or - reference to a Storage MCIO. + Reference to the VirtualStorage resource or reference to a Storage MCIO. Detailed information is (for new and modified resources) or has been (for removed resources) available from the VIM or the CISM. $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ResourceHandle" @@ -3362,4 +3357,5 @@ definitions: addressPoolName: description: > Name of an address pool from which an IP address is - assigned to the virtual CP. \ No newline at end of file + assigned to the virtual CP. + type: string \ No newline at end of file diff --git a/src/SOL002/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml b/src/SOL002/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml index 84e6e707..4d2d5d52 100644 --- a/src/SOL002/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml +++ b/src/SOL002/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml @@ -16,7 +16,7 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.11.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: description: ETSI GS NFV-SOL 002 V4.4.1 diff --git a/src/SOL002/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml b/src/SOL002/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml index ba552bde..e0d8fe2b 100644 --- a/src/SOL002/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml +++ b/src/SOL002/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml @@ -16,7 +16,7 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.10.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.11.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: description: ETSI GS NFV-SOL 002 V4.4.1 -- GitLab From 9e9e0d5117ca067452f21da96e867f2cb2e69b09 Mon Sep 17 00:00:00 2001 From: "M. Hamza" Date: Mon, 13 Mar 2023 18:36:21 +0500 Subject: [PATCH 10/11] fix minor issues in SOL003 --- .../General_Definitions/SOL003_def.yaml | 108 +++++++----------- .../SOL003VNFFaultManagement_def.yaml | 2 +- .../SOL003VNFLifecycleManagement_def.yaml | 76 ++++++------ ...L003VNFLifecycleOperationGranting_def.yaml | 2 +- .../SOL003VNFPackageManagement_def.yaml | 10 +- .../VNFPerformanceManagement.yaml | 2 +- 6 files changed, 81 insertions(+), 119 deletions(-) diff --git a/src/SOL003/General_Definitions/SOL003_def.yaml b/src/SOL003/General_Definitions/SOL003_def.yaml index 87406e45..932827a8 100644 --- a/src/SOL003/General_Definitions/SOL003_def.yaml +++ b/src/SOL003/General_Definitions/SOL003_def.yaml @@ -206,7 +206,7 @@ definitions: without additional encoding/encryption before transmitting it, making the sensitive data visible to the endpoint. The base64 encoded certificates are only used by the VNFM to verify the authenticity of the interface endpoint of the VIM, CISM, CIR or MCIOP repository. - * NOTE 3: ETSI GS NFV-SOL 009 [i.19] specifies the means to configure into the VNFM applicable VIM connection + * NOTE 3: ETSI GS NFV-SOL 009 specifies the means to configure into the VNFM applicable VIM connection information via the "NFV-MANO Configuration and Information Management" interface. * NOTE 4: Due to the possibility of configuring such information into the VNFM out-of-band, by means outside the scope of the present document, as well as in-band, by means specified in the present document, care should be taken to @@ -217,86 +217,60 @@ definitions: properties: vimId: description: > - The identifier of the VIM, CISM, CIR or MCIOP repository - instance. This identifier is managed by the NFVO. - Shall be present to address additional information about - the VIM, CISM, CIR or MCIOP repository if such - information has been configured into the VNFM out-of-band by - means outside the scope of the present document and - should be absent otherwise.See note 3. + The identifier of the VIM, CISM, CIR or MCIOP repository instance. This identifier is managed + by the NFVO. + Shall be present to address additional information about the VIM, CISM, CIR or MCIOP repository + if such information has been configured into the VNFM out-of-band by means outside the scope of + the present document and should be absent otherwise. See note 3. $ref: "#/definitions/Identifier" vimType: description: > - Discriminator for the different types of the VIM - information. - The value of this attribute determines the structure of the - "interfaceInfo" and "accessInfo" attributes, based on the + Discriminator for the different types of the VIM information. The value of this attribute + determines the structure of the "interfaceInfo" and "accessInfo" attributes, based on the type of the VIM., CISM, CIR or MCIOP repository. - The set of permitted values is expected to change over - time as new types or versions of VIMs become available. - The ETSI NFV registry of VIM-related information [i.3] - provides access to information about VimConnectionInfo - definitions for various VIM, CISM, CIR or MCIOP - repository types. The structure of the registry is defined in - annex C. + The set of permitted values is expected to change over time as new types or versions of VIMs + become available. + The ETSI NFV registry of VIM-related information provides access to information about VimConnectionInfo + definitions for various VIM, CISM, CIR or MCIOP repository types. The structure of the registry + is defined in annex C. type: string interfaceInfo: description: > - Information about the interface or interfaces to the VIM, - CISM, CIR or MCIOP repository, if applicable, such as - the URI of an interface endpoint to communicate with the - VIM, CISM, CIR or MCIOP repository. The applicable - keys are dependent on the content of vimType. - Such information may have been configured - into the VNFM out-of-band by means outside the scope of + Information about the interface or interfaces to the VIM, CISM, CIR or MCIOP repository, + if applicable, such as the URI of an interface endpoint to communicate with the + VIM, CISM, CIR or MCIOP repository. The applicable keys are dependent on the content of vimType. + Such information may have been configured into the VNFM out-of-band by means outside the scope of the present document. See note 3. - If present and VimConnectionInfo has already been - configured into the VNFM out-of-band, the information - values provided by the present attribute shall be used to - perform resource management for the VNF - instance by the VNFM. See note 4. + If present and VimConnectionInfo has already been configured into the VNFM out-of-band, the + information values provided by the present attribute shall be used to perform resource management + for the VNF instance by the VNFM. See note 4. $ref: "#/definitions/KeyValuePairs" accessInfo: description: > - Authentication credentials for accessing the VIM, CISM, - CIR or MCIOP repository and other access-related - information such as tenants or infrastructure resource - groups (see note 1). The applicable keys are dependent - on the content of vimType. - If the VimConnectionInfo structure is part of an HTTP - response message content, sensitive attributes that are - children of this attributes (such as passwords) shall not - be included. - If the VimConnectionInfo structure is part of an HTTP - request message content, sensitive attributes that are - children of this attribute (such as passwords) shall be - present if they have not been provisioned out of band. - See note 2. - Such information may have been configured into the - VNFM out-of-band by means outside the scope of the - present document. - See note 3. - If present and VimConnectionInfo has already been - configured into the VNFM out-of-band, the information - values provided by the present attribute shall be used to - perform resource management for the VNF instance by - the VNFM. See note 4. + Authentication credentials for accessing the VIM, CISM, CIR or MCIOP repository and other + access-related information such as tenants or infrastructure resource groups (see note 1). + The applicable keys are dependent on the content of vimType. + If the VimConnectionInfo structure is part of an HTTP response message content, sensitive + attributes that are children of this attributes (such as passwords) shall not be included. + If the VimConnectionInfo structure is part of an HTTP request message content, sensitive + attributes that are children of this attribute (such as passwords) shall be + present if they have not been provisioned out of band. See note 2. + Such information may have been configured into the VNFM out-of-band by means outside the scope of the + present document. See note 3. + If present and VimConnectionInfo has already been configured into the VNFM out-of-band, + the information values provided by the present attribute shall be used to perform resource + management for the VNF instance by the VNFM. See note 4. $ref: "#/definitions/KeyValuePairs" extra: description: > - VIM, CISM, CIR or MCIOP repository type specific - additional information. The applicable structure, and - whether or not this attribute is available, is dependent on - the content of vimType. - Such information may have been configured into the - VNFM out-of-band by means outside the scope of the - present document. + VIM, CISM, CIR or MCIOP repository type specific additional information. The applicable + structure, and whether or not this attribute is available, is dependent on the content of vimType. + Such information may have been configured into the VNFM out-of-band by means outside the + scope of the present document. See note 3. - If present and VimConnectionInfo has already been - configured into the VNFM out-of-band, the information - values provided by the present attribute shall be used to - perform resource management for the VNF instance by - the VNFM. See note 4. + If present and VimConnectionInfo has already been configured into the VNFM out-of-band, + the information values provided by the present attribute shall be used to perform resource + management for the VNF instance by the VNFM. See note 4. $ref: "#/definitions/KeyValuePairs" ResourceHandle: @@ -653,7 +627,6 @@ definitions: * NOTE 1: If the container cluster is set up to be able to configure an external load balancer this address will be used, otherwise it will be ignored by the CISM. - * NOTE 2: In case the cluster can configure an external load balancer but no loadBalancerIp is provided the container cluster will assign an IP address. * NOTE 3: The attribute is only relevant if the virtual CP is instantiated in a cluster that supports configuration of IP @@ -682,6 +655,7 @@ definitions: Name of an address pool from which the container cluster will assign an IP address to the virtual CP. See notes 3 and 4. + type: string ExtVirtualLinkData: description: > diff --git a/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml b/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml index 6210c4ad..072cdd14 100644 --- a/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml +++ b/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml @@ -38,7 +38,7 @@ definitions: properties: id: description: > - Identifier of this Alarm information element. + Identifier of this Alarm. $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" managedObjectId: description: > diff --git a/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml b/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml index ff7f9337..4e129ad5 100644 --- a/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml +++ b/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml @@ -878,34 +878,20 @@ definitions: $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" vimConnectionInfo: description: > - Information about VIM or CISM connections - to be used for managing the resources for - the VNF instance. The keys of the map, each - of which identifies information about a - particular VIM connection, are managed by - the NFVO and referenced from other data - structures via the "vimConnectionId" - attribute. - This attribute shall only be supported and - present if - - the resources of at least of the - VNFCs are managed by a VIM and - VNF-related resource management - in direct mode is applicable. - - the resources of at least of the - VNFCs are managed by a CISM. - This attribute can be modified with the - PATCH method. - If VIM connection information is provisioned - to the VNFM by means outside the scope of - the present document, the information in the - "vimConnectionInfo" attribute provides - necessary information for binding the - VnfInstance representing the "Individual VNF - instance" to the applicable VIM connection - information used to perform resource - management for the VNF instance. See also - the definition of the "VimConnectionInfo" in + Information about VIM or CISM connections to be used for managing the resources for + the VNF instance. The keys of the map, each of which identifies information about a + particular VIM connection, are managed by the NFVO and referenced from other data + structures via the "vimConnectionId" attribute. + This attribute shall only be supported and present if + - the resources of at least of the VNFCs are managed by a VIM and + VNF-related resource management in direct mode is applicable. + - the resources of at least of the VNFCs are managed by a CISM. + This attribute can be modified with the PATCH method. + If VIM connection information is provisioned to the VNFM by means outside the scope of + the present document, the information in the "vimConnectionInfo" attribute provides + necessary information for binding the VnfInstance representing the "Individual VNF + instance" to the applicable VIM connection information used to perform resource + management for the VNF instance. See also the definition of the "VimConnectionInfo" in clause 4.4.1.6. type: object additionalProperties: @@ -1236,7 +1222,7 @@ definitions: $ref: "#/definitions/NetAttDefResourceInfo" extManagedMultisiteVirtualLinkId: description: > - Identifier of the externally-managed multi-site VL instance. The identifier is assigned by the NFVMANO entity + Identifier of the externally-managed multi-site VL instance. The identifier is assigned by the NFV-MANO entity that manages the externally managed multi-site VL instance. It shall be present when the externally-managed internal VL is part of a multi-site VL, e.g., in support of multi-site VNF spanning several VIMs. All externally-managed internal VL instances corresponding to an internal VL created based on the same @@ -1724,8 +1710,8 @@ definitions: vnfdId: description: > Identifier of the VNFD. - Shall be present in case of a "change current VNF Package" to identify whether the affected VNFC instance is - associated to a VDU which is referred from the source or destination VNFD. + Shall be present in case of a "change current VNF Package" to identify whether the affected + VNFC instance is associated to a VDU which is referred from the source or destination VNFD. $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" changeType: description: > @@ -1745,14 +1731,13 @@ definitions: computeResource: description: > Reference to the VirtualCompute resource or reference to a Compute MCIO. - Detailed information is (for new and modified - resources) or has been (for removed - resources) available from the VIM or the CISM. + Detailed information is (for new and modified resources) or has been (for removed resources) + available from the VIM or the CISM. $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ResourceHandle" resourceDefinitionId: description: > - The identifier of the "ResourceDefinition" in the granting exchange related to the LCM operation occurrence. - It shall be present when an applicable GrantInfo for thegranted resource exists. See note. + The identifier of the "ResourceDefinition" in the granting exchange related to the LCM operation + occurrence. It shall be present when an applicable GrantInfo for thegranted resource exists. See note. $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierLocal" zoneId: description: > @@ -2463,18 +2448,20 @@ definitions: networkResource: description: > Reference to the VirtualNetwork resource or reference to a Network MCIO. - Detailed information is (for new and modified resources) or has been (for removed resources) available from the VIM or the CISM. + Detailed information is (for new and modified resources) or has been (for removed resources) + available from the VIM or the CISM. See note 1. $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ResourceHandle" vnfLinkPortIds: description: > - Identifiers of the link ports of the affected VL related to the change. Each identifier references a "VnfLinkPortInfo" - structure. + Identifiers of the link ports of the affected VL related to the change. Each identifier references + a "VnfLinkPortInfo" structure. - Shall be set when changeType is equal to "LINK_PORT_ADDED" or "LINK_PORT_REMOVED", and the related "VnfLinkPortInfo" - structures are present (case "added") or have been present (case "removed") in the "VnfVirtualLinkResourceInfo" or - "ExtManagedVirtualLinkInfo" structures that are represented by the "vnfVirtualLinkResource¬Info" or "extManagedVirtualLinkInfo" - attribute in the "VnfInstance" structure. See note 1. + Shall be set when changeType is equal to "LINK_PORT_ADDED" or "LINK_PORT_REMOVED", and the + related "VnfLinkPortInfo" structures are present (case "added") or have been present (case "removed") + in the "VnfVirtualLinkResourceInfo" or "ExtManagedVirtualLinkInfo" structures that are represented + by the "vnfVirtualLinkResource¬Info" or "extManagedVirtualLinkInfo" attribute in the "VnfInstance" + structure. See note 1. type: array items: $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" @@ -3966,4 +3953,5 @@ definitions: addressPoolName: description: > Name of an address pool from which an IP address is - assigned to the virtual CP. \ No newline at end of file + assigned to the virtual CP. + type: string \ No newline at end of file diff --git a/src/SOL003/VNFLifecycleOperationGranting/definitions/SOL003VNFLifecycleOperationGranting_def.yaml b/src/SOL003/VNFLifecycleOperationGranting/definitions/SOL003VNFLifecycleOperationGranting_def.yaml index db092d5e..23490025 100644 --- a/src/SOL003/VNFLifecycleOperationGranting/definitions/SOL003VNFLifecycleOperationGranting_def.yaml +++ b/src/SOL003/VNFLifecycleOperationGranting/definitions/SOL003VNFLifecycleOperationGranting_def.yaml @@ -513,7 +513,7 @@ definitions: - if type="LINKPORT" : VnfExtCpd - if type="STORAGE" : VirtualStorageDesc - If type="OSCONTAINER": OsContainerDesc - - If type=" VIRTUALCP ": VirtualCpd + - If type="VIRTUALCP": VirtualCpd - Cardinality may be greater than "1" when type="OSCONTAINER" and multiple references to OsContainerDesc are present in the VDU indicated by the "vduId". Cardinality shall be "1" otherwise. type: array diff --git a/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml b/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml index 191ffb5c..d93c4f20 100644 --- a/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml +++ b/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml @@ -135,7 +135,8 @@ definitions: $ref: "#/definitions/PackageUsageStateType" vnfmInfo: description: > - Specifies VNFMs compatible with the VNF. This information is copied from the VNFD of the on-boarded VNF package.. See note 3. + Specifies VNFMs compatible with the VNF. This information is copied from the VNFD of the + on-boarded VNF package.. See note 3. It shall be present after the VNF package content has been on-boarded and absent otherwise. $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" userDefinedData: @@ -390,8 +391,9 @@ definitions: description: > This type represents an artifact other than a software image which is contained in or external to a VNF package. - * NOTE 1: The attribute name "artifactURI" does not comply with the naming convention defined in clause 4.3 in ETSI GS - NFV-SOL 015 [i.20]. This is to maintain the backward compatibility. + + * NOTE: The attribute name "artifactURI" does not comply with the naming convention defined + in clause 4.3 in ETSI GS NFV-SOL 015. This is to maintain the backward compatibility. type: object required: - artifactPath @@ -427,10 +429,8 @@ definitions: URI of the artifact as defined in the VNF package manifest. Shall be present if the artifact is external to the package and shall be absent otherwise. - EXAMPLE:https://example.com/m%40ster.sh See note. - type: array items: $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri" diff --git a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml index 9fcbc9b8..eabe8547 100644 --- a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml +++ b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml @@ -1152,7 +1152,7 @@ components: IndividualThreshold.Patch.422: description: | - 422 Unprocessable entity + 422 Unprocessable Content Shall be returned upon the following error: The content type of the message content is supported and -- GitLab From f3b03c900960f76ede92a873e28bfbabe63ffdb6 Mon Sep 17 00:00:00 2001 From: "M. Hamza" Date: Tue, 14 Mar 2023 12:54:54 +0500 Subject: [PATCH 11/11] fix issue #9 - response type of vnfLcmOpOccsGet is changed to array --- src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml | 4 +++- src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml index e0c70b8f..fd877c54 100644 --- a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -2528,7 +2528,9 @@ components: content: application/json: schema: - $ref: ./definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/VnfLcmOpOcc + type: array + items: + $ref: ./definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/VnfLcmOpOcc IndividualVnfLcmOpOcc.Get.200: description: | diff --git a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml index a26e679a..948ad24d 100644 --- a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -2900,7 +2900,9 @@ components: content: application/json: schema: - $ref: "./definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfLcmOpOcc" + type: array + items: + $ref: "./definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfLcmOpOcc" IndividualVnfLcmOpOcc.Get.200: description: | -- GitLab