diff --git a/Readme.md b/Readme.md index 68f4c5cfea09856ebced31bc2f62543fb5045fc7..2d91c95f1d9f3e8abed6c2ed0f245ea4eef4225c 100644 --- a/Readme.md +++ b/Readme.md @@ -1,12 +1,10 @@ # NFV SOL005 APIs This repository hosts the [OpenAPI](https://www.openapis.org/) specificatons and other documentation -for the APIs defined in ETSI NFV GSs SOL005 v3.5.1. +for the APIs defined in ETSI NFV GSs SOL005 v3.6.1. The APIs described in this repository are defined for the `Os-Ma-nfvo` reference point. -**IMPORTANT: In case of discrepancies the published ETSI Group Specification takes precedence.** - More information at [NFV Solutions wiki](https://nfvwiki.etsi.org/index.php?title=NFV_Solutions). ## Content structure diff --git a/src/SOL005/APIVersion/APIVersion.yaml b/src/SOL005/APIVersion/APIVersion.yaml index 8f6218498d5efdc34bb97bfb0fea2def8c697455..3c27bffb5b8cffeb1125b688b5fd12c76b33cc13 100644 --- a/src/SOL005/APIVersion/APIVersion.yaml +++ b/src/SOL005/APIVersion/APIVersion.yaml @@ -19,8 +19,8 @@ info: version: 1.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.5.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.05.01_60/gs_nfv-sol005v030501p.pdf + description: ETSI GS NFV-SOL 005 V3.6.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf servers: - url: http://127.0.0.1/ diff --git a/src/SOL005/NFVICapacityInformation/NFVICapacityInformation.yaml b/src/SOL005/NFVICapacityInformation/NFVICapacityInformation.yaml index 991ec9b65d1496b4f44e0fe8d0941c614dbad1f0..a8c0da6c024bd4d2592bf4d8da23f70cb514bb4a 100644 --- a/src/SOL005/NFVICapacityInformation/NFVICapacityInformation.yaml +++ b/src/SOL005/NFVICapacityInformation/NFVICapacityInformation.yaml @@ -19,9 +19,9 @@ info: version: 1.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.5.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.05.01_60/gs_nfv-sol005v030501p.pdf - + description: ETSI GS NFV-SOL 005 V3.6.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf + servers: - url: http://127.0.0.1/nfvici/v1 - url: https://127.0.0.1/nfvici/v1 @@ -38,11 +38,40 @@ paths: description: | The API consumer can use this method to retrieve information about NFVI capacity information. See clause 10.4.2.3.2. parameters: - - $ref: ../components/SOL005_params.yaml#/components/parameters/filter + - in: query + name: filter + description: > + Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV SOL 013. + The NFVO shall support receiving this parameter as part of the URI query string. + The OSS/BSS may supply this parameter. If the OSS/BSS does not supply a filter value + for the "timeInterval" attribute in the NfviCapacityInfo, a query of the current NFVI + capacity information available by the NFVO is requested. + The following attribute names in the NfviCapacityInfo shall be supported by the NFVO + in the filter expression: + - resourceZoneId + - vimId + - timeInterval + - resourceType + - capacityMeasurementName + - capacity values: {totalCapacity, allocatedCapacity, reservedCapacity, availableCapacity} + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/all_fields - $ref: ../components/SOL005_params.yaml#/components/parameters/fields - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_fields - - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_default + - in: query + name: exclude_default + description: > + Indicates to exclude the following complex attributes from the response. See clause 5.3 of + ETSI GS NFV-SOL 013 for details. The NFVO shall support this parameter. + The following attributes shall be excluded from the NfviCapacityInfo structure in the response + body if this parameter is provided, or none of the parameters "all_fields", "fields", "exclude_fields", + "exclude_default" are provided: + - capacityInfoPerZone + - totalCapacityInfo + - timeInterval + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept responses: @@ -76,7 +105,23 @@ paths: description: | The API consumer can use this method for reading an individual VIM's NFVI capacity information. See clause 10.4.3.3.2. parameters: - - $ref: ../components/SOL005_params.yaml#/components/parameters/filter + - in: query + name: filter + description: > + Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV SOL 013. + The NFVO shall support receiving this parameter as part of the URI query string. + The OSS/BSS may supply this parameter. If the OSS/BSS does not supply a filter value + for the timeInterval attribute in the NfviCapacityInfo, a query of the current NFVI + capacity information available by the NFVO is requested. + The following attribute names in the NfviCapacityInfo shall be supported by the NFVO + in the filter expression: + - resourceZoneId + - timeInterval + - resourceType + - capacityMeasurementName + - capacity values: {totalCapacity, allocatedCapacity, reservedCapacity, availableCapacity} + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept responses: "200": @@ -108,7 +153,16 @@ paths: description: | The API consumer can use this method to query information about NFVI capacity thresholds. See clause 10.4.4.3.2 parameters: - - $ref: ../components/SOL005_params.yaml#/components/parameters/filter + - in: query + name: filter + description: > + Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV-SOL 013. + The NFVO shall support receiving this parameter as part of the URI query string. + The OSS/BSS may supply this parameter. + All attribute names that appear in the CapacityThreshold data type and in data types + referenced from it shall be supported by the NFVO in the filter expression. + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker responses: diff --git a/src/SOL005/NFVICapacityInformationNotification/NFVICapacityInformationNotification.yaml b/src/SOL005/NFVICapacityInformationNotification/NFVICapacityInformationNotification.yaml index 64705cb1ff945e77743aef74a59ce8c36824897b..38aaad72f0fe48404a6c82a695fd8e1ba7e2a772 100644 --- a/src/SOL005/NFVICapacityInformationNotification/NFVICapacityInformationNotification.yaml +++ b/src/SOL005/NFVICapacityInformationNotification/NFVICapacityInformationNotification.yaml @@ -19,8 +19,8 @@ info: version: 1.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.5.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.05.01_60/gs_nfv-sol005v030501p.pdf + description: ETSI GS NFV-SOL 005 V3.6.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf servers: - url: http://127.0.0.1/callback/v1 diff --git a/src/SOL005/NSDManagement/NSDManagement.yaml b/src/SOL005/NSDManagement/NSDManagement.yaml index 657db1345ccd79a11b97f88b9ca99c24577acf66..91038d476180334396c5cdc1b3a28ac53d1961f2 100644 --- a/src/SOL005/NSDManagement/NSDManagement.yaml +++ b/src/SOL005/NSDManagement/NSDManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.2.1-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.5.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.05.01_60/gs_nfv-sol005v030501p.pdf + description: ETSI GS NFV-SOL 005 V3.6.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf servers: - url: http://127.0.0.1/nsd/v2 @@ -76,11 +76,31 @@ paths: description: | The GET method queries information about multiple NS descriptor resources. See clause 5.4.2.3.2. parameters: - - $ref: ../components/SOL005_params.yaml#/components/parameters/filter + - in: query + name: filter + description: > + Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV SOL 013. + The NFVO shall support receiving this filtering parameter as part of the URI query string. + The OSS/BSS may supply this parameter. + All attribute names that appear in the NsdInfo and in data types referenced from it shall + be supported by the NFVO in the filter expression. + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/all_fields - $ref: ../components/SOL005_params.yaml#/components/parameters/fields - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_fields - - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_default + - in: query + name: exclude_default + description: > + Indicates to exclude the following complex attributes from the response. See clause 5.3 of ETSI GS + NFV-SOL 013 for details. The NFVO shall support this parameter. + The following attributes shall be excluded from the NsdInfo structure in the response body if this + parameter is provided, or none of the parameters "all_fields", "fields", "exclude_fields", + "exclude_default" are provided: + - userDefinedData + - onboardingFailureDetails + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker responses: 200: @@ -328,7 +348,19 @@ paths: The GET method reads the content of the manifest file within an NSD archive. See clasue 5.4.4b.3.2. parameters: - $ref: '#/components/parameters/AcceptTextOrZip' - - $ref: ../components/SOL005_params.yaml#/components/parameters/include_signatures + - in: query + name: include_signatures + description: > + If this parameter is provided, the NFVO shall return the manifest and related security information + (signature and certificate) either in a single text file if the signature and certificate are included + in the manifest file, or in a zip file containing the manifest and the certificate file, if this is + provided as a separate file in the NSD archive. + If this parameter is not given, the NFVO shall provide only a copy of the manifest file, as onboarded. + If the security information is included in the onboarded manifest, it shall also be included in the + returned copy. + This URI query parameter is a flag, i.e. it shall have no value. The NFVO shall support this parameter. + schema: + type: string responses: 200: $ref: '#/components/responses/NsdArchiveManifest.Get.200' @@ -366,7 +398,15 @@ paths: The GET method fetches the content of an individual artifact within an NSD archive. See clause 5.4.4c.3.2. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Range - - $ref: ../components/SOL005_params.yaml#/components/parameters/include_signatures + - in: query + name: include_signatures + description: > + If this parameter is provided, the NFVO shall return the artifact and related security information + (such as signature and optional certificate) in a ZIP archive. + If this parameter is not given, the NFVO shall provide only a copy of the artifact file. + This URI query parameter is a flag, i.e. it shall have no value. The NFVO shall support this parameter. + schema: + type: string responses: 200: $ref: '#/components/responses/IndividualNsdArchiveArtifact.Get.200' @@ -438,11 +478,31 @@ paths: description: | The GET method queries information about multiple PNF descriptor resources. See clause 5.4.5.3.2. parameters: - - $ref: ../components/SOL005_params.yaml#/components/parameters/filter + - in: query + name: filter + description: > + Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV-SOL 013. + The NFVO shall support receiving this filtering parameter as part of the URI query string. + The OSS/BSS may supply this parameter. + All attribute names that appear in the PnfdInfo and in data types referenced from it shall + be supported by the NFVO in the filter expression. + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/all_fields - $ref: ../components/SOL005_params.yaml#/components/parameters/fields - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_fields - - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_default + - in: query + name: exclude_default + description: > + Indicates to exclude the following complex attributes from the response. See clause 5.3 of ETSI GS + NFV-SOL 013for details. The NFVO shall support this parameter. + The following attributes shall be excluded from the PnfdInfo structure in the response body if this + parameter is provided, or none of the parameters "all_fields", "fields", "exclude_fields", + "exclude_default" are provided: + - userDefinedData + - onboardingFailureDetails + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker responses: 200: @@ -690,7 +750,19 @@ paths: The GET method reads the content of the manifest file within a PNFD archive. See clause 5.4.7b.3.2. parameters: - $ref: '#/components/parameters/AcceptTextOrZip' - - $ref: ../components/SOL005_params.yaml#/components/parameters/include_signatures + - in: query + name: include_signatures + description: > + If this parameter is provided, the NFVO shall return the manifest and related security information + (signature and certificate) either in a single text file if the signature and certificate are included + in the manifest file, or in a zip file containing the manifest and the certificate file, if this is + provided as a separate file in the PNFD archive. + If this parameter is not given, the NFVO shall provide only a copy of the manifest file, as onboarded. + If the security information is included in the onboarded manifest, it shall also be included in the + returned copy. This URI query parameter is a flag, i.e. it shall have no value. + The NFVO shall support this parameter. + schema: + type: string responses: 200: $ref: '#/components/responses/PnfdArchiveManifest.Get.200' @@ -731,7 +803,15 @@ paths: The GET method fetches the content of an individual artifact within a PNFD archive. See clause 5.4.7c.3.2. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Range - - $ref: ../components/SOL005_params.yaml#/components/parameters/include_signatures + - in: query + name: include_signatures + description: > + If this parameter is provided, the NFVO shall return the artifact and related security information + (such as signature and optional certificate) in a ZIP archive. + If this parameter is not given, the NFVO shall provide only a copy of the artifact file. + This URI query parameter is a flag, i.e. it shall have no value. The NFVO shall support this parameter. + schema: + type: string responses: 200: $ref: '#/components/responses/IndividualPnfdArchiveArtifact.Get.200' @@ -806,7 +886,16 @@ paths: The GET method queries the list of active subscriptions of the functional block that invokes the method. It can be used e.g. for resynchronization after error situations. See clause 5.4.8.3.2. parameters: - - $ref: ../components/SOL005_params.yaml#/components/parameters/filter + - in: query + name: filter + description: > + Attribute filtering expression according to clause 5.2 of ETSI GS NFV SOL 013. + The NFVO shall support receiving this parameter as part of the URI query string. + The OSS/BSS may supply this parameter. + All attribute names that appear in the NsdmSubscription and in data types referenced + from it shall be supported by the NFVO in the filter expression. + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept responses: @@ -896,6 +985,34 @@ paths: components: parameters: + filter: + name: filter + description: > + Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV SOL 013. + The NFVO shall support receiving this filtering parameter as part of the URI query string. + The OSS/BSS may supply this parameter. + All attribute names that appear in the NsdInfo and in data types referenced from it shall + be supported by the NFVO in the filter expression. + in: query + required: false + schema: + type: string + + exclude_default: + name: exclude_default + in: query + description: >- + Indicates to exclude the following complex attributes from the response. + See clause 5.3 of ETSI GS NFV-SOL 013 for details. The NFVO shall support this parameter. + The following attributes shall be excluded from the NsdInfo structure in the response body + if this parameter is provided, or none of the parameters "all_fields", "fields", "exclude_fields", + "exclude_default" are provided: + - userDefinedData + - onboardingFailureDetails + required: false + schema: + type: string + AcceptTextOrZip: name: Accept description: > @@ -907,6 +1024,7 @@ components: enum: - text/plain - application/zip + AcceptText: name: Accept description: > @@ -917,6 +1035,7 @@ components: type: string enum: - text/plain + ContentTypeZip: name: Content-Type description: | @@ -1737,10 +1856,10 @@ components: 409 CONFLICT Shall be returned upon the following error: The operation cannot be executed currently, due to a - conflict with the state of the resource. - Typically, this is due to the fact that "nsdOnboardingState " has a value different from "ONBOARDED". - The response body shall contain a ProblemDetails structure, in which the "detail" attribute shall convey - more information about the error. + conflict with the state of the resource. + Typically, this is due to the fact that "nsdOnboardingState " has a value different from "ONBOARDED". + The response body shall contain a ProblemDetails structure, in which the "detail" attribute shall convey + more information about the error. headers: Content-Type: description: | @@ -1862,7 +1981,6 @@ components: Typically, this is due to the fact that "nsdOnboardingState" has a value different from "ONBOARDED". The response body shall contain a ProblemDetails structure, in which the "detail" attribute shall convey more information about the error. - headers: Content-Type: description: | diff --git a/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml b/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml index 2146d352c52fbdc60701a69883a810f4fa8089ab..2cc9132a88e8d39b2b002fb35fd52a262cf30fad 100644 --- a/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml +++ b/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml @@ -1,6 +1,5 @@ # Copyright (c) ETSI 2017. # https://forge.etsi.org/etsi-forge-copyright-notice.txt - definitions: NsdInfoModifications: type: object diff --git a/src/SOL005/NSDManagementNotification/NSDManagementNotification.yaml b/src/SOL005/NSDManagementNotification/NSDManagementNotification.yaml index ed44239e6ca85849883cbf95eb77980dfef04119..198a39ffce9eb2c008b6054b4725f1abb54a088b 100644 --- a/src/SOL005/NSDManagementNotification/NSDManagementNotification.yaml +++ b/src/SOL005/NSDManagementNotification/NSDManagementNotification.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.2.1-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.5.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.05.01_60/gs_nfv-sol005v030501p.pdf + description: ETSI GS NFV-SOL 005 V3.6.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf servers: - url: http://127.0.0.1/callback/v2 diff --git a/src/SOL005/NSFaultManagement/NSFaultManagement.yaml b/src/SOL005/NSFaultManagement/NSFaultManagement.yaml index 07708dd0c4d667d613dd7d63205c59c2ee305787..a9af4563ce66b47f0661ffc4692cb725c3f7edb8 100644 --- a/src/SOL005/NSFaultManagement/NSFaultManagement.yaml +++ b/src/SOL005/NSFaultManagement/NSFaultManagement.yaml @@ -19,8 +19,8 @@ info: version: 1.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.5.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.05.01_60/gs_nfv-sol005v030501p.pdf + description: ETSI GS NFV-SOL 005 V3.6.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf servers: - url: http://127.0.0.1/nsfm/v1 @@ -38,7 +38,24 @@ paths: description: | The API consumer can use this method to retrieve information about the alarm list. See clause 8.4.2.3.2. parameters: - - $ref: ../components/SOL005_params.yaml#/components/parameters/filter + - in: query + name: filter + description: > + Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV SOL 013. + The NFVO shall support receiving this parameter as part of the URI query string. + The OSS/BSS may supply this parameter. + The following attribute names shall be supported by the NFVO in the filter expression: + - id + - nsInstanceId + - rootCauseFaultyComponent.faultyNestedNsInstanceId + - rootCauseFaultyComponent.faultyNsVirtualLinkInstanceId + - rootCauseFaultyComponent.faultyVnfInstanceId + - rootCauseFaultyResource.faultyResourceType + - eventType + - perceivedSeverity + - probableCause + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept responses: @@ -145,7 +162,16 @@ paths: NS subscribed by the API consumer. It can be used e.g. for resynchronization after error situations. See clause 8.4.4.3.2. parameters: - - $ref: ../components/SOL005_params.yaml#/components/parameters/filter + - in: query + name: filter + description: > + Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV SOL 013. + The NFVO shall support receiving this parameter as part of the URI query string. + The OSS/BSS may supply this parameter. + All attribute names that appear in the FmSubscription and in data types referenced from + it shall be supported by the NFVO in the filter expression. + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept responses: diff --git a/src/SOL005/NSFaultManagementNotification/NSFaultManagementNotification.yaml b/src/SOL005/NSFaultManagementNotification/NSFaultManagementNotification.yaml index 831bad5c1ca57d32e8794707935f3a96ec52dd35..79f8a9b3b7a5d65d8f5a30120922179552efa408 100644 --- a/src/SOL005/NSFaultManagementNotification/NSFaultManagementNotification.yaml +++ b/src/SOL005/NSFaultManagementNotification/NSFaultManagementNotification.yaml @@ -19,8 +19,8 @@ info: version: 1.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.5.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.05.01_60/gs_nfv-sol005v030501p.pdf + description: ETSI GS NFV-SOL 005 V3.6.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf servers: - url: http://127.0.0.1/callback/v1 diff --git a/src/SOL005/NSLCMCoordination/NSLCMCoordination.yaml b/src/SOL005/NSLCMCoordination/NSLCMCoordination.yaml index 60583457ff4998775a7ff12cbc4ce33543505b58..9714854025a6385c0097cf9d0ddbd7a3fd30d446 100644 --- a/src/SOL005/NSLCMCoordination/NSLCMCoordination.yaml +++ b/src/SOL005/NSLCMCoordination/NSLCMCoordination.yaml @@ -19,8 +19,8 @@ info: version: 1.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.5.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.05.01_60/gs_nfv-sol005v030501p.pdf + description: ETSI GS NFV-SOL 005 V3.6.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf servers: - url: http://127.0.0.1/lcmcoord/v1 diff --git a/src/SOL005/NSLifecycleManagement/NSLifecycleManagement.yaml b/src/SOL005/NSLifecycleManagement/NSLifecycleManagement.yaml index 1f4c873464a94dbd9d8cadc9c63c0d33856e9483..bd76cb81b7412abafa2696ab2c25da268a611c24 100644 --- a/src/SOL005/NSLifecycleManagement/NSLifecycleManagement.yaml +++ b/src/SOL005/NSLifecycleManagement/NSLifecycleManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.1.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.5.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.05.01_60/gs_nfv-sol005v030501p.pdf + description: ETSI GS NFV-SOL 005 V3.6.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf servers: - url: http://127.0.0.1/nslcm/v2 @@ -38,11 +38,37 @@ paths: description: | The GET method queries information about multiple NS instances. See clause 6.4.2.3.2. parameters: - - $ref: ../components/SOL005_params.yaml#/components/parameters/filter + - in: query + name: filter + description: > + Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV SOL 013. + The NFVO shall support receiving this parameter as part of the URI query string. + The OSS/BSS may supply this parameter. + All attribute names that appear in the NsInstance and in data types referenced from + it shall be supported by the NFVO in the filter expression. + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/all_fields - $ref: ../components/SOL005_params.yaml#/components/parameters/fields - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_fields - - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_default + - in: query + name: exclude_default + description: > + Indicates to exclude the following complex attributes from the response. + See clause 5.3 of ETSI GS NFV-SOL 013 for details. The NFVO shall support this parameter. + The following attributes shall be excluded from the NsInstance structure in the response + body if this parameter is provided, or none of the parameters "all_fields", "fields", + "exclude_fields", "exclude_default" are provided: + - vnfInstances + - pnfInfo + - virtualLinkInfo + - vnffgInfo + - sapInfo + - nsScaleStatus + - additionalAffinityOrAntiAffinityRules + - wanConnectionInfo + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept responses: @@ -374,21 +400,31 @@ paths: The API consumer can use this method to query status information about multiple NS lifecycle management operation occurrences. See clause 6.4.9.3.2. parameters: - - $ref: ../components/SOL005_params.yaml#/components/parameters/filter + - in: query + name: filter + description: > + Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV SOL 013. + The NFVO shall support receiving this parameter as part of the URI query string. + The OSS/BSS may supply this parameter. + All attribute names that appear in the NsLcmOpOcc and in data types referenced from + it shall be supported by the NFVO in the filter expression. + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/fields - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_fields - in: query name: exclude_default description: > - - Indicates to exclude the following complex attributes from the response. See clause 5.3 of ETSI GS NFV-SOL 013 [16] for details. The NFVO shall support this parameter. - - The following attributes shall be excluded from the NsLcmOpOcc structure in the response body if this parameter is provided: - - operationParams - - changedVnfInfo - - error - - resourceChanges - - lcmCoordinations - - warnings + Indicates to exclude the following complex attributes from the response. + See clause 5.3 of ETSI GS NFV-SOL 013 for details. The NFVO shall support this parameter. + The following attributes shall be excluded from the NsLcmOpOcc structure in the response + body if this parameter is provided: + - operationParams + - changedVnfInfo + - error + - resourceChanges + - lcmCoordinations + - warnings schema: type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker @@ -643,7 +679,16 @@ paths: The GET method queries the list of active subscriptions of the functional block that invokes the method. It can be used e.g. for resynchronization after error situations. See clause 6.4.16.3.2. parameters: - - $ref: ../components/SOL005_params.yaml#/components/parameters/filter + - in: query + name: filter + description: > + Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV SOL 013. + The NFVO shall support receiving this parameter as part of the URI query string. + The OSS/BSS may supply this parameter. + All attribute names that appear in the LccnSubscription and in data types referenced + from it shall be supported by the NFVO in the filter expression. + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept responses: @@ -768,11 +813,31 @@ paths: description: | The GET method queries information about multiple VNF snapshots. See clause 6.4.19.3.2. parameters: - - $ref: ../components/SOL005_params.yaml#/components/parameters/filter + - in: query + name: filter + description: > + Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV-SOL 013. + The NFVO shall support receiving this parameter as part of the URI query string. + The OSS/BSS may supply this parameter. + All attribute names that appear in the VnfSnapshotInfo and in data types referenced + from it shall be supported by the NFVO in the filter expression. + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/all_fields - $ref: ../components/SOL005_params.yaml#/components/parameters/fields - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_fields - - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_default + - in: query + name: exclude_default + description: > + Indicates to exclude the following complex attributes from the response. See clause 5.3 of + ETSI GS NFV-SOL 013 for details. The NFVO shall support this parameter. + The following attributes shall be excluded from the VnfSnapshot structure in the response + body if this parameter is provided, or none of the parameters "all_fields", "fields", + "exclude_fields", "exclude_default" are provided: + - vnfInstance + - vnfcSnapshots + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept responses: @@ -861,6 +926,40 @@ paths: components: parameters: + filter: + name: filter + description: > + Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV SOL 013. + The NFVO shall support receiving this parameter as part of the URI query string. + The OSS/BSS may supply this parameter. + All attribute names that appear in the NsInstance and in data types referenced from + it shall be supported by the NFVO in the filter expression. + in: query + required: false + schema: + type: string + + exclude_default: + name: exclude_default + in: query + description: >- + Indicates to exclude the following complex attributes from the response. + See clause 5.3 of ETSI GS NFV-SOL 013 for details. The NFVO shall support this parameter. + The following attributes shall be excluded from the NsInstance structure in the response + body if this parameter is provided, or none of the parameters "all_fields", "fields", + "exclude_fields", "exclude_default" are provided: + - vnfInstances + - pnfInfo + - virtualLinkInfo + - vnffgInfo + - sapInfo + - nsScaleStatus + - additionalAffinityOrAntiAffinityRules + - wanConnectionInfo + required: false + schema: + type: string + NsInstanceId: name: nsInstanceId in: path diff --git a/src/SOL005/NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml b/src/SOL005/NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml index 3e039c7226e259fdbd41c28cbbd34460b781b6bb..e2e6917b3d9795772b9685760f648502c7b253a1 100644 --- a/src/SOL005/NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml +++ b/src/SOL005/NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml @@ -1,7 +1,6 @@ # Copyright (c) ETSI 2017. # https://forge.etsi.org/etsi-forge-copyright-notice.txt definitions: - HealNsRequest: description: > This type represents request parameters for the "Heal NS" operation. This operation supports the healing of an NS @@ -2013,7 +2012,7 @@ definitions: type: array items: $ref: "#/definitions/VnfLocationConstraint" - nestedNslocationConstraints: + nestedNsLocationConstraints: description: > Defines the location constraints for the nested NS to be instantiated as part of the NS instantiation. An example can be a constraint for the nested NS to be in a specific geographic location. @@ -2156,7 +2155,8 @@ definitions: description: > Additional input parameters for the instantiation process, specific to the VNF being instantiated, as declared in the - VNFD as part of "InstantiateVnfOpConfig". + VNFD as part of "InstantiateVnfOpConfig" defined in ETSI GS + NFV-IFA 011 [29]. $ref: "../../definitions/SOL005_def.yaml#/definitions/KeyValuePairs" LocationConstraints: @@ -2811,7 +2811,7 @@ definitions: description: > Additional input parameters for the flavor change process, specific to the VNF being modified, as declared - in the VNFD as part of "ChangeVnfFlavourOpConfig". + in the VNFD as part of "ChangeVnfFlavourOpConfig" defined in ETSI GS NFV-IFA 011 [29]. $ref: "../../definitions/SOL005_def.yaml#/definitions/KeyValuePairs" extensions: description: > @@ -3876,26 +3876,6 @@ definitions: - ROLLED_BACK - FAILED - NsLcmOperationStateType: - description: > - The enumeration NsLcmOperationStateType shall comply with the provisions defined in Table 6.5.4.4-1. - Value | Description - ------|------------ - PROCESSING | The LCM operation is currently in execution. - COMPLETED | The LCM operation has been completed successfully. - PARTIALLY_COMPLETED | The LCM operation has been partially completed with accepTable errors. - FAILED_TEMP | The LCM operation has failed and execution has stopped, but the execution of the operation is not considered to be closed. - FAILED | The LCM operation has failed and it cannot be retried or rolled back, as it is determined that such action won't succeed. - OLLING_BACK | The LCM operation is currently being rolled back. - ROLLED_BACK | The LCM operation has been successfully rolled back, i.e. The state of the VNF prior to the original operation invocation has been restored as closely as possible. - type: string - enum: - - PROCESSING - - COMPLETED - - FAILED_TEMP - - FAILED - - ROLLING_BACK - - ROLLED_BACK NsLcmOpType: description: > The enumeration NsLcmOpType represents those lifecycle operations that trigger a NS lifecycle management operation @@ -4051,7 +4031,7 @@ definitions: shall be absent otherwise. type: array items: - $ref: "#/definitions/LcmOperationStateType" + $ref: "#/definitions/NsLcmOperationStateType" affectedNsInstanceIds: description: > Match particular identifiers of the NS instance(s) related to the operation occurrence that were affected by @@ -4179,7 +4159,7 @@ definitions: type: array items: $ref: "#/definitions/VnfLocationConstraint" - nestedNslocationConstraints: + nestedNsLocationConstraints: description: > Defines the location constraints for the nested NS to be instantiated as part of the NS instantiation. An example can be a constraint for the nested NS to be in a specific geographic location. @@ -4360,7 +4340,7 @@ definitions: the scaling process, specific to the VNF instance being scaled. $ref: "../../definitions/SOL005_def.yaml#/definitions/KeyValuePairs" - LcmOperationStateType: + NsLcmOperationStateType: description: > Value | Description ------|------------ @@ -4425,6 +4405,9 @@ definitions: - VNF_OPERATE - VNF_CHANGE_EXT_CONN - VNF_MODIFY_INFO + - VNF_CREATE_SNAPSHOT + - VNF_REVERT_TO_SNAPSHOT + - VNF_CHANGE_VNFPKG - NS_INSTANTIATE - NS_SCALE - NS_UPDATE @@ -5072,6 +5055,12 @@ definitions: a VDU which includes a CPD identified by the "cpdId" attribute. If the cpConfig represents a subport in a trunk, all "cpConfig" entries in this list shall have the same segmentationId, which means they are connected to the same set of external VLs via the trunk. + NOTE 4: If, as defined by the input parameters of a "ChangeVnfFlavour", "ChangeExtVnfConnectivity" + or "ChangeCurrentVnfPkg" operation, a cpConfig map entry identified by a particular map key value is + moved into another "ExtVirtualLinkData" or "VnfExtCpData" structure, this particular cpConfig map entry + may be used by an external CP instance different than the one that has used it before the operation, or + by no external CP instance at all. Renaming a CPD identifier during the "changeCurrentVnfPkg" operation + does not count as moving the related "cpConfig" map entries to a new "extCpData" structure. type: object required: - cpdId @@ -5083,10 +5072,12 @@ definitions: $ref: "../../definitions/SOL005_def.yaml#/definitions/IdentifierInVnfd" cpConfig: description: > - Map of instance data that need to be configured on the CP instances created from the respective CPD. - The key of the map which identifies the individual VnfExtCpConfig entries is managed by the API consumer. - The entries shall be applied by the VNFM according to the rules of JSON Merge Patch (see IETF RFC 7396). - See note 2 and note 3. + Map of instance data that need to be configured on the CP instances + created from the respective CPD. The key of the map which identifies + the individual VnfExtCpConfig entries is of type "IdentifierInVnf" + and is managed by the API consumer. The entries shall be applied by + the VNFM according to the rules of JSON Merge Patch (see IETF RFC 7396 [11]). + See notes 2, 3 and 4. type: object additionalProperties: $ref: "#/definitions/VnfExtCpConfig" @@ -5518,7 +5509,8 @@ definitions: additionalParams: description: > Additional parameters passed by the OSS/BSS as input to the change current VNF package process, specific to the - VNF of which the underlying VNF package is changed, as declared in the VNFD as part of "ChangeCurrentVnfPkgOpConfig". + VNF of which the underlying VNF package is changed, as declared in the VNFD as part of "ChangeCurrentVnfPkgOpConfig" + defined in ETSI GS NFV-IFA 011 [29]. $ref: "../../definitions/SOL005_def.yaml#/definitions/KeyValuePairs" extensions: description: > @@ -5574,7 +5566,7 @@ definitions: additionalParams: description: > Additional input parameters for the revert to VNF snapshot process, specific for the VNF being “reverted”, - as declared in the VNFD as part of “RevertToSnapshotVnfOpConfig”. + as declared in the VNFD as part of “RevertToSnapshotVnfOpConfig” defined in ETSI GS NFV-IFA 011 [29]. $ref: "../../definitions/SOL005_def.yaml#/definitions/KeyValuePairs" CreateVnfSnapshotData: @@ -5593,7 +5585,7 @@ definitions: additionalParams: description: > Additional input parameters for the snapshot creation process, specific for the VNF being “snapshotted”, as - declared in the VNFD as part of “CreateSnapshotVnfOpConfig”. + declared in the VNFD as part of “CreateSnapshotVnfOpConfig” defined in ETSI GS NFV-IFA 011 [29]. $ref: "../../definitions/SOL005_def.yaml#/definitions/KeyValuePairs" userDefinedData: description: > @@ -5697,10 +5689,8 @@ definitions: ModificationsTriggeredByVnfPkgChange: description: > - This type represents attribute modifications that were performed on an "Individual VNF instance" resource when - changing the current VNF package. The attributes that can be included consist of those requested to be modified - explicitly in the "ChangeCurrentVnfPkgRequest" data structure, and additional attributes of the "VnfInstance" data - structure that were modified implicitly during the operation. + This type represents attribute modifications that were performed by the VNFM on an "Individual VNF instance" + resource when changing the current VNF package. The "ModificationsTriggeredByVnfPkgChange" data type shall comply with the provisions defined in table 6.5.3.79-1. type: object properties: @@ -6651,6 +6641,12 @@ definitions: description: > Identifier of the VIP Connection Point Descriptor, VipCpd, in the VNFD. $ref: "../../definitions/SOL005_def.yaml#/definitions/IdentifierInVnfd" + vnfdId: + description: > + Identifier of the VNFD. Shall be present in case the value differs from the + vnfdId attribute of the VnfInstance (e.g. during a "Change current VNF package" + operation or due to its final failure). + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" vnfExtCpId: description: > When the VIP CP is exposed as external CP of the VNF, the identifier of this external VNF CP instance. diff --git a/src/SOL005/NSLifecycleManagementNotification/NSLifecycleManagementNotification.yaml b/src/SOL005/NSLifecycleManagementNotification/NSLifecycleManagementNotification.yaml index bc8a567fed9008ca388c399cde8ad804fc530dfb..cba8174db25b156b05c505d4ca1e2173694a5707 100644 --- a/src/SOL005/NSLifecycleManagementNotification/NSLifecycleManagementNotification.yaml +++ b/src/SOL005/NSLifecycleManagementNotification/NSLifecycleManagementNotification.yaml @@ -14,11 +14,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.1.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.5.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.05.01_60/gs_nfv-sol005v030501p.pdf + description: ETSI GS NFV-SOL 005 V3.6.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf servers: - url: http://127.0.0.1/callback/v2 @@ -195,6 +195,63 @@ paths: "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 + /URI_is_provided_by_the_client_when_creating_the_subscription-NsChangeNotification: + parameters: + - $ref: ../components/SOL005_params.yaml#/components/parameters/Version + - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization + get: + description: | + The POST method delivers a notification from the API producer to an API consumer. The API consumer shall + have previously created an "Individual subscription" resource with a matching filter. + See clause 6.4.18.3.1. + parameters: + - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept + responses: + "204": + $ref: '#/components/responses/NsChangeNotification.Get.204' + "400": + $ref: ../responses/SOL005_resp.yaml#/components/responses/400 + "401": + $ref: ../responses/SOL005_resp.yaml#/components/responses/401 + "403": + $ref: ../responses/SOL005_resp.yaml#/components/responses/403 + "405": + $ref: ../responses/SOL005_resp.yaml#/components/responses/405 + "406": + $ref: ../responses/SOL005_resp.yaml#/components/responses/406 + "500": + $ref: ../responses/SOL005_resp.yaml#/components/responses/500 + "503": + $ref: ../responses/SOL005_resp.yaml#/components/responses/503 + + post: + description: | + The POST method delivers a notification from the API producer to an API consumer. The API consumer shall + have previously created an "Individual subscription" resource with a matching filter. + See clause 6.4.18.3.1. + parameters: + - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept + - $ref: ../components/SOL005_params.yaml#/components/parameters/ContentType + requestBody: + $ref: '#/components/requestBodies/NsChangeNotificationRequest' + responses: + "204": + $ref: '#/components/responses/NsChangeNotification.Post.204' + "400": + $ref: ../responses/SOL005_resp.yaml#/components/responses/400 + "401": + $ref: ../responses/SOL005_resp.yaml#/components/responses/401 + "403": + $ref: ../responses/SOL005_resp.yaml#/components/responses/403 + "405": + $ref: ../responses/SOL005_resp.yaml#/components/responses/405 + "406": + $ref: ../responses/SOL005_resp.yaml#/components/responses/406 + "500": + $ref: ../responses/SOL005_resp.yaml#/components/responses/500 + "503": + $ref: ../responses/SOL005_resp.yaml#/components/responses/503 + /URI_is_provided_by_the_client_when_creating_the_subscription-NsLcmCapacityShortageNotification: parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Version @@ -279,6 +336,15 @@ components: $ref: ./definitions/SOL005NSLifecycleManagementNotification_def.yaml#/definitions/NsIdentifierDeletionNotification required: true + NsChangeNotificationRequest: + description: | + A notification to inform the receiver of changes on the NS instance caused by the LCM operation occurrence. + content: + application/json: + schema: + $ref: ./definitions/SOL005NSLifecycleManagementNotification_def.yaml#/definitions/NsChangeNotification + required: true + NsLcmCapacityShortageNotificationRequest: description: | A notification about lifecycle capacity shortage triggered when there is a shortage condition. @@ -422,6 +488,50 @@ components: type: string content: {} + NsChangeNotification.Get.204: + description: | + 204 No Content + Shall be returned when the notification has been delivered successfully. + headers: + Version: + description: | + Version of the API used in the response. + style: simple + explode: false + schema: + type: string + WWW-Authenticate: + description: | + Challenge if the corresponding HTTP request has not provided authorization, or error details if the + corresponding HTTP request has provided an invalid authorization token. + style: simple + explode: false + schema: + type: string + content: {} + + NsChangeNotification.Post.204: + description: | + 204 No Content + Shall be returned when the notification has been delivered successfully. + headers: + Version: + description: | + Version of the API used in the response. + style: simple + explode: false + schema: + type: string + WWW-Authenticate: + description: | + Challenge if the corresponding HTTP request has not provided authorization, or error details if the + corresponding HTTP request has provided an invalid authorization token. + style: simple + explode: false + schema: + type: string + content: {} + NsLcmCapacityShortageNotification.Get.204: description: | 204 No Content diff --git a/src/SOL005/NSLifecycleManagementNotification/definitions/SOL005NSLifecycleManagementNotification_def.yaml b/src/SOL005/NSLifecycleManagementNotification/definitions/SOL005NSLifecycleManagementNotification_def.yaml index c1fba969b66d9984aa9e8869d7da1c0e51821201..1b77d94e7048baf9744246b56d4d90066c6a8cf4 100644 --- a/src/SOL005/NSLifecycleManagementNotification/definitions/SOL005NSLifecycleManagementNotification_def.yaml +++ b/src/SOL005/NSLifecycleManagementNotification/definitions/SOL005NSLifecycleManagementNotification_def.yaml @@ -433,19 +433,6 @@ definitions: $ref: "../../definitions/SOL005_def.yaml#/definitions/Link" NsChangeNotification: - description: > - This type represents an NS change notification, which informs the receiver of changes on the NS instance caused by the - LCM operation occurrence, which directly or indirectly impacts its NS component and is triggered without any context - of this NS instance. - This notification is different from the NsLcmOperationOccurenceNotification (see clause 6.5.2.5), which is triggered by - the NS LCM operation occurrence on the NS instance itself. It shall comply with the provisions defined in - Table 6.5.2.8-1. The support of the notification is mandatory. - The trigger conditions include: - 1) NS LCM operation occurrence which directly or indirectly impacts the NS component (start and result). - If this is a notification about the start of an LCM operation occurrence impacting the NS component, the notification - shall be sent as soon as the impact on the NS component is identified. - If this is a notification about a final result state of an NS LCM operation occurrence impacting the NS component, the - notification shall be sent after the impact on the NS component has been executed. type: object required: - id diff --git a/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml b/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml index aaf9527a004ada09c518efe7afd65a96a1180796..b36f7130f1dafa8d099d29b86035a33d86c0d672 100644 --- a/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml +++ b/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml @@ -19,8 +19,8 @@ info: version: 2.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.5.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.05.01_60/gs_nfv-sol005v030501p.pdf + description: ETSI GS NFV-SOL 005 V3.6.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf servers: - url: http://127.0.0.1/nspm/v2 @@ -75,11 +75,30 @@ paths: description: | The API consumer can use this method to retrieve information about PM jobs. See clause 7.4.2.3.2. parameters: - - $ref: ../components/SOL005_params.yaml#/components/parameters/filter + - in: query + name: filter + description: > + Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV SOL 013. + The NFVO shall support receiving this parameter as part of the URI query string. + The OSS/BSS may supply this parameter. + All attribute names that appear in the PmJob and in data types referenced from it shall + be supported by the NFVO in the filter expression. + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/all_fields - $ref: ../components/SOL005_params.yaml#/components/parameters/fields - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_fields - - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_default + - in: query + name: exclude_default + description: > + Indicates to exclude the following complex attributes from the response. See clause 5.3 of + ETSI GS NFV-SOL 013 for details. The NFVO shall support this parameter. + The following attributes shall be excluded from the PmJob structure in the response body if + this parameter is provided, or none of the parameters "all_fields", "fields", "exclude_fields", + "exclude_default" are provided: + - Reports + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker responses: 200: @@ -271,7 +290,16 @@ paths: description: | The API consumer can use this method to query information about thresholds. See clause 7.4.5.3.2. parameters: - - $ref: ../components/SOL005_params.yaml#/components/parameters/filter + - in: query + name: filter + description: > + Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV SOL 013. + The NFVO shall support receiving this parameter as part of the URI query string. + The OSS/BSS may supply this parameter. + All attribute names that appear in the Thresholds data type and in data types referenced + from it shall be supported by the NFVO in the filter expression. + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker responses: 200: diff --git a/src/SOL005/NSPerformanceManagementNotification/NSPerformanceManagementNotification.yaml b/src/SOL005/NSPerformanceManagementNotification/NSPerformanceManagementNotification.yaml index a497b0616dfe8eadac418ca9c2a2a419903c9c1f..a7b12b5681514a0962a450df0c11d5c6e3f3bd64 100644 --- a/src/SOL005/NSPerformanceManagementNotification/NSPerformanceManagementNotification.yaml +++ b/src/SOL005/NSPerformanceManagementNotification/NSPerformanceManagementNotification.yaml @@ -19,8 +19,8 @@ info: version: 2.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.5.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.05.01_60/gs_nfv-sol005v030501p.pdf + description: ETSI GS NFV-SOL 005 V3.6.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf servers: - url: http://127.0.0.1/callback/v2 diff --git a/src/SOL005/VNFPackageManagement/VNFPackageManagement.yaml b/src/SOL005/VNFPackageManagement/VNFPackageManagement.yaml index 3a69c7ac82d947a150b85e6872cb4b1a14be5ccd..d220354844f219072ae7924266ebd7a73ccba00c 100644 --- a/src/SOL005/VNFPackageManagement/VNFPackageManagement.yaml +++ b/src/SOL005/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.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.3.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.5.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.05.01_60/gs_nfv-sol005v030501p.pdf + description: ETSI GS NFV-SOL 005 V3.6.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf servers: - url: http://127.0.0.1/vnfpkgm/v2 @@ -38,11 +38,34 @@ paths: description: | The GET method queries the information of the VNF packages matching the filter. See clause 9.4.2.3.2. parameters: - - $ref: ../components/SOL005_params.yaml#/components/parameters/filter + - in: query + name: filter + description: > + Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV SOL 013. + The NFVO shall support receiving this parameter as part of the URI query string. + The OSS/BSS may supply this parameter. + All attribute names that appear in the VnfPkgInfo and in data types referenced from + it shall be supported by the NFVO in the filter expression. + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/all_fields - $ref: ../components/SOL005_params.yaml#/components/parameters/fields - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_fields - - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_default + - in: query + name: exclude_default + description: > + Indicates to exclude the following complex attributes from the response. See clause 5.3 of + ETSI GS NFV-SOL 013 for details. + The NFVO shall support this parameter. The following attributes shall be excluded from the + VnfPkgInfo structure in the response body if this parameter is provided, or none of the parameters + "all_fields", "fields", "exclude_fields", "exclude_default" are provided: + - softwareImages + - additionalArtifacts + - userDefinedData + - checksum + - onboardingFailureDetails + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept responses: @@ -201,7 +224,15 @@ paths: The GET method reads the content of the VNFD within a VNF package. See clause 9.4.4.3.2. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept - - $ref: ../components/SOL005_params.yaml#/components/parameters/include_signatures + - in: query + name: include_signatures + description: > + If this parameter is provided, the NFVO shall include in the ZIP archive the security + information as specified above. + This URI query parameter is a flag, i.e. it shall have no value. + The NFVO shall support this parameter. + schema: + type: string responses: "200": $ref: '#/components/responses/IndividualVnfPackageVnfd.Get.200' @@ -303,7 +334,16 @@ paths: The GET method reads the content of the manifest within a VNF package. See clause 9.4.4b.3.2. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept - - $ref: ../components/SOL005_params.yaml#/components/parameters/include_signatures + - in: query + name: include_signatures + description: > + If this parameter is provided, the NFVO shall return the manifest and related security information + (such as certificate) in a ZIP archive. + If this parameter is not given, the NFVO shall provide only a copy of the manifest file. + This URI query parameter is a flag, i.e. it shall have no value. + The NFVO shall support this parameter. + schema: + type: string responses: "200": $ref: '#/components/responses/IndividualVnfPackageManifest.Get.200' @@ -416,7 +456,16 @@ paths: parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept - $ref: ../components/SOL005_params.yaml#/components/parameters/Range - - $ref: ../components/SOL005_params.yaml#/components/parameters/include_signatures + - in: query + name: include_signatures + description: > + If this parameter is provided, the NFVO shall include in the ZIP archive the individual signatures and, + if provided, related certificates for the included artifacts, in the format in which they are provided + in the VNF package. + If this parameter is not given, the NFVO shall only provide copies of the artifact files. + This URI query parameter is a flag, i.e. it shall have no value. The NFVO shall support this parameter. + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_all_mano_artifacts - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_all_non_mano_artifacts - $ref: ../components/SOL005_params.yaml#/components/parameters/select_non_mano_artifact_sets @@ -501,7 +550,16 @@ paths: parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept - $ref: ../components/SOL005_params.yaml#/components/parameters/Range - - $ref: ../components/SOL005_params.yaml#/components/parameters/include_signatures + - in: query + name: include_signatures + description: > + If this parameter is provided, the NFVO shall return the artifact and related security + information (such as signature and optional certificate) in a ZIP archive. + If this parameter is not given, the NFVO shall provide only a copy of the artifact file. + This URI query parameter is a flag, i.e. it shall have no value. + The NFVO shall support this parameter. + schema: + type: string responses: "200": $ref: '#/components/responses/IndividualVnfPackageArtifact.Get.200' @@ -540,7 +598,16 @@ paths: It can be used e.g. for resynchronization after error situations. See clause 9.4.7.3.2. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept - - $ref: ../components/SOL005_params.yaml#/components/parameters/filter + - in: query + name: filter + description: > + Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV SOL 013. + The NFVO shall support receiving this parameter as part of the URI query string. + The OSS/BSS may supply this parameter. + All attribute names that appear in the PkgmSubscription and in data types referenced + from it shall be supported by the NFVO in the filter expression. + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker responses: "200": diff --git a/src/SOL005/VNFPackageManagementNotification/VNFPackageManagementNotification.yaml b/src/SOL005/VNFPackageManagementNotification/VNFPackageManagementNotification.yaml index 59f5072c94780cfc71c89ca1cd96f9a455366af6..342cae489e7875d91b5cc05c05cc2bef5f720af4 100644 --- a/src/SOL005/VNFPackageManagementNotification/VNFPackageManagementNotification.yaml +++ b/src/SOL005/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.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.3.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.5.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.05.01_60/gs_nfv-sol005v030501p.pdf + description: ETSI GS NFV-SOL 005 V3.6.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf servers: - url: http://127.0.0.1/callback/v2 diff --git a/src/SOL005/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml b/src/SOL005/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml index ca77053d1c2e8dee0b5f09da7654dc6b37d6d346..adfa75e97539c61b8a7a68759cc0f2573cf2bc4a 100644 --- a/src/SOL005/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml +++ b/src/SOL005/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml @@ -19,8 +19,8 @@ info: version: 1.1.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.5.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.05.01_60/gs_nfv-sol005v030501p.pdf + description: ETSI GS NFV-SOL 005 V3.6.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf servers: - url: http://127.0.0.1/vnfsnapshotpkgm/v1 @@ -75,11 +75,33 @@ paths: description: | The GET method queries the information of the VNF packages matching the filter. See clause 11.4.2.3.2. parameters: - - $ref: ../components/SOL005_params.yaml#/components/parameters/filter + - in: query + name: filter + description: > + Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV SOL 013. + The NFVO shall support receiving this parameter as part of the URI query string. + The OSS/BSS may supply this parameter. + All attribute names that appear in the VnfSnapshotPkgInfo and in data types referenced + from it shall be supported by the NFVO in the filter expression. + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/all_fields - $ref: ../components/SOL005_params.yaml#/components/parameters/fields - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_fields - - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_default + - in: query + name: exclude_default + description: > + Indicates to exclude the following complex attributes from the response. See clause 5.3 of + ETSI GS NFV-SOL 013 for details. The NFVO shall support this parameter. + The following attributes shall be excluded from the VnfSnapshotPkgInfo structure in the response + body if this parameter is provided, or none of the parameters "all_fields", "fields", "exclude_fields", + "exclude_default" are provided: + - vnfcSnapshotImages + - additionalArtifacts + - userDefinedData + - checksum + schema: + type: string - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker responses: 200: diff --git a/src/SOL005/components/SOL005_params.yaml b/src/SOL005/components/SOL005_params.yaml index a55f564c3c813e597eede8d5f43c8157a7c1c955..58220e1eeedb146b54c60c8444ceaf3d20c9ec0a 100644 --- a/src/SOL005/components/SOL005_params.yaml +++ b/src/SOL005/components/SOL005_params.yaml @@ -49,27 +49,11 @@ components: schema: type: string - filter: - name: filter - description: > - Attribute-based filtering expression according to clause 5.2 of ETSI - GS NFV-SOL 013. The NFV-MANO functional entity shall support - receiving this parameter as part of the URI query string. The API - consumer may supply this parameter. All attribute names that appear - in the FmSubscription and in data types referenced from it shall be - supported by the NFV-MANO functional entity in the filter - expression. - in: query - required: false - schema: - type: string - all_fields: name: all_fields description: > - Include all complex attributes in the response. See clause - 5.3 of ETSI GS NFV-SOL 013. The NFV-MANO functional entity - shall support this parameter. + Include all complex attributes in the response. See clause 5.3 of ETSI GS NFV-SOL 013 for details. + The NFVO shall support this parameter. in: query required: false schema: @@ -78,9 +62,8 @@ components: fields: name: fields description: > - Complex attributes to be included into the response. See clause - 5.3 of ETSI GS NFV-SOL 013 for details. The NFV-MANO functional - entity should support this parameter. + Complex attributes to be included into the response. See clause 5.3 of ETSI GS NFV-SOL 013 for details. + The NFVO should support this parameter. in: query required: false schema: @@ -89,42 +72,18 @@ components: exclude_fields: name: exclude_fields description: > - Complex attributes to be excluded from the response. See clause - 5.3 of ETSI GS NFV-SOL 013 for details. The NFV-MANO functional - entity should support this parameter. + Complex attributes to be excluded from the response. See clause 5.3 of ETSI GS NFV-SOL 013 for details. + The NFVO should support this parameter. in: query required: false schema: type: string - exclude_default: - name: exclude_default - in: query - description: >- - Indicates to exclude the following complex attributes from the response. See clause 5.3 of ETSI GS NFV-SOL 013 - for details. The NFV-MANO functional entity shall support this parameter. - The NFVO shall support this parameter. - - The following attributes shall be excluded from the NsInstance structure in the response body if this parameter - is provided, or none of the parameters "all_fields," "fields", "exclude_fields", "exclude_default" are provided: - - vnfInstances - - pnfInfo - - virtualLinkInfo - - vnffgInfo - - sapInfo - - nsScaleStatus - - additionalAffinityOrAntiAffinityRules - - wanConnectionInfo - required: false - schema: - type: string - nextpage_opaque_marker: name: nextpage_opaque_marker description: > - Marker to obtain the next page of a paged response. Shall be supported by - the NFV-MANO functional entity if the entity supports alternative 2 (paging) - according to clause 5.4.2.1 of ETSI GS NFV-SOL 013 for this resource. + Marker to obtain the next page of a paged response. Shall be supported by the NFVO if the NFVO supports alternative 2 + (paging) according to clause 5.4.2.1 of ETSI GS NFV-SOL 013 for this resource. in: query required: false schema: @@ -133,9 +92,9 @@ components: include_signatures: name: include_signatures description: > - If this parameter is provided, the NFVO shall include in the ZIP archive the security information - as specified above. - This URI query parameter is a flag, i.e. it shall have no value. The NFVO shall support this parameter. + If this parameter is provided, the NFVO shall include in the ZIP file the security information as specified above. + This URI query parameter is a flag, i.e. it shall have no value. + The NFVO shall support this parameter. in: query required: false schema: @@ -147,7 +106,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. The NFVO shall support this parameter. - The VNFM may supply this parameter. + The OSS/BSS may supply this parameter. required: false style: form explode: true