Commit d803cf7f authored by Giacomo Bernini's avatar Giacomo Bernini
Browse files

updates to SOL005 VNF Pckg mgmt

parent 728f153c
Pipeline #1285 passed with stage
in 0 seconds
......@@ -65,39 +65,39 @@ paths:
required: false
type: string
description: >
Attribute-based filtering parameters according to clause 4.3.2.
The NFVO shall support receiving filtering parameters as part of the URI query string. The
OSS/BSS may supply filtering parameters.
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 in attribute-based filtering parameters.
be supported by the NFVO in the filter expression.
- name: all_fields
in: query
required: false
type: string
description: >
Include all complex attributes in the response. See clause 4.3.3 for details. The NFVO
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.
- name: fields
in: query
required: false
type: string
description: >
Complex attributes to be included into the response. See clause 4.3.3 for details. The
NFVO 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.
- name: exclude_fields
in: query
required: false
type: string
description: >
Complex attributes to be excluded from the response. See clause 4.3.3 for details. The
NFVO 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.
- name: exclude_default
in: query
required: false
type: string
description: >
Indicates to exclude the following complex attributes from the response. See clause 4.3.3
for details.
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",
......@@ -106,6 +106,14 @@ paths:
- additionalArtifacts
- userDefinedData
- checksum
- name: nextpage_opaque_marker
in: query
required: false
type: string
description: >
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.
- name: Accept
description: >
Content-Types that are acceptable for the response.
......@@ -118,7 +126,16 @@ paths:
description: >
200 OK
Information of the selected VNF packages.
Shall be returned when information about zero or more VNF packages has been queried successfully.
The response body shall contain in an array the VNF package info representations that match
the attribute filter, i.e. zero or more VNF package info representations as defined in clause 9.5.2.5.
If the "filter" URI parameter or one of the "all_fields", "fields", "exclude_fields" or
"exclude_default" URI parameters was supplied in the request and is supported, the data in the
response body shall have been transformed according to the rules specified in clauses 5.2.2 and
5.3.2 of ETSI GS NFV SOL 013, respectively.
If the NFVO supports alternative 2 (paging) according to clause 5.4.2.1 of ETSI GS NFV SOL 013
for this resource, inclusion of the Link HTTP header in this response shall follow the provisions in
clause 5.4.2.3 of ETSI GS NFV SOL 013.
headers:
Content-Type:
description: The MIME type of the body of the response.
......@@ -269,7 +286,8 @@ paths:
description: >
200 OK
Information of the VNF package.
Shall be returned when information of the VNF package has been read successfully.
The response body shall contain the VNF package info representation defined in clause 9.5.2.5.
schema:
$ref: "definitions/SOL005VNFPackageManagement_def.yaml#/definitions/VnfPkgInfo"
headers:
......@@ -320,7 +338,7 @@ paths:
description: >
204 No Content
The VNF package was deleted successfully.
The VNF package has been deleted successfully.
The response body shall be empty.
headers:
Version:
......@@ -378,10 +396,8 @@ paths:
description: >
200 OK
The operation was completed successfully.
The response body shall contain attribute
modifications for an "Individual VNF
package" resource
Shall be returned when the operation has been completed successfully.
The response body shall contain attribute modifications for an "Individual VNF package" resource.
headers:
Content-Type:
description: The MIME type of the body of the response.
......@@ -487,14 +503,11 @@ paths:
description: >
200 OK
On success, the content of the VNFD is returned.
The payload body 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 returned file, i.e. to
"text/plain" for a YAML file or to "application/zip" for a ZIP file.
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 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 returned file,
i.e. to "text/plain" for a YAML file or to "application/zip" for a ZIP file.
headers:
Content-Type:
description: The MIME type of the body of the response.
......@@ -592,12 +605,10 @@ paths:
description: >
200 OK
On success, a copy of the VNF package file is returned.
Shall be returned when the whole content of the VNF package file has been read successfully.
The response body shall include a copy of the VNF package file.
The "Content-Type" HTTP header shall be set
according to the type of the file, i.e. to "application/zip"
for a VNF Package as defined in ETSI
GS NFV-SOL 004 [5].
The "Content-Type" HTTP header shall be set according to the type of the file, i.e. to
"application/zip" for a VNF Package as defined in ETSI GS NFV-SOL 004.
headers:
Content-Type:
description: The MIME type of the body of the response.
......@@ -665,18 +676,18 @@ paths:
type: file
description: >
The payload body contains a ZIP file that represents the VNF package.
The "Content-Type" HTTP header shall be set according to the
type of the file, i.e. to "application/zip" for a VNF Package as
defined in ETSI GS NFV-SOL 004 [5].
The "Content-Type" HTTP header shall be set according to the type of the file,
i.e. to "application/zip" for a VNF Package as defined in ETSI GS NFV-SOL 004.
responses:
202:
description: >
202 Accepted
The VNF package was accepted for uploading, but the
processing has not been completed. It is expected to
take some time for processing.
The VNF package has been accepted for uploading, but the processing has not been completed.
It is expected to take some time for processing.
The response body shall be empty.
The client can track the uploading progress by receiving the "VnfPackageOnBoardingNotification"
from the NFVO or by reading the status of the individual VNF package resource using the GET method.
headers:
Version:
description: >
......@@ -756,9 +767,8 @@ paths:
description: >
202 Accepted
The information about the VNF package was received
successfully, but the on-boarding has not been
completed. It is expected to take some time for processing.
The information about the VNF package has been received successfully, but the on-boarding
has not been completed. It is expected to take some time for processing.
The response body shall be empty.
headers:
Version:
......@@ -803,10 +813,11 @@ paths:
required: true
- name: artifactPath
description: >
Path of the artifact within the VNF package.
This identifier can be retrieved from the "artifactPath" attribute of the applicable "additionalArtifacts" entry in
the body of the response to a GET request querying the "Individual VNF package" or the "VNF packages"
resource.
Sequence of one or path segments representing the path of the artifact within the VNF package,
relative to the root of the package.
This identifier can be retrieved from the "artifactPath" attribute of the applicable
"additionalArtifacts" entry in the body of the response to a GET request querying the
"Individual VNF package" or the "VNF packages" resource.
in: path
type: string
required: true
......@@ -850,13 +861,12 @@ paths:
200:
description: >
200 OK
On success, the content of the artifact is returned.
The payload body shall contain a copy of the artifact file from
the VNF package, as defined by ETSI GS NFV-SOL 004.
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".
Shall be returned when the whole content of the artifact file has been read successfully.
The payload body shall contain a copy of the artifact file from the VNF package,
as defined by ETSI GS NFV-SOL 004.
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.
headers:
Content-Type:
description: The MIME type of the body of the response.
......@@ -880,15 +890,14 @@ paths:
206:
description: >
Partial Content.
On success, if the NFVO supports range requests, a single
consecutive byte range from the content of the VNF package file is
returned.
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-Type" HTTP header shall be set as defined above for
the "200 OK" response.
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.
The response body shall contain the requested part of the artifact file from the VNF package, as defined
by ETSI GS NFV-SOL 004.
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.
headers:
Content-Range:
type: string
......@@ -951,14 +960,17 @@ paths:
summary: Subscribe to notifications related to on-boarding and/or changes of VNF packages.
description: >
The POST method creates a new subscription.
This method shall follow the provisions specified in the Tables 9.4.8.3.1-1 and 9.4.8.3.1-2 for URI query parameters,
request and response data structures, and response codes.
Creation of two subscription resources with the same callbackURI and the same filter can result in performance
degradation and will provide duplicates of notifications to the OSS, and might make sense only in very rare use cases.
Consequently, the NFVO may either allow creating a subscription resource if another subscription resource with the
same filter and callbackUri already exists (in which case it shall return the "201 Created" response code), or may decide
to not create a duplicate subscription resource (in which case it shall return a "303 See Other" response code referencing
the existing subscription resource with the same filter and callbackUri).
This method shall follow the provisions specified in the Tables 9.4.8.3.1-1 and 9.4.8.3.1-2 for URI
query parameters, request and response data structures, and response codes.
As the result of successfully executing this method, a new "Individual subscription" resource shall exist
as defined in clause 9.4.9. This method shall not trigger any notification.
Creation of two subscription resources with the same callbackURI and the same filter can result in
performance degradation and will provide duplicates of notifications to the OSS, and might make sense
only in very rare use cases. Consequently, the NFVO may either allow creating a subscription resource
if another subscription resource with the same filter and callbackUri already exists (in which case it
shall return the "201 Created" response code), or may decide to not create a duplicate subscription resource
(in which case it shall return a "303 See Other" response code referencing the existing subscription resource
with the same filter and callbackUri).
parameters:
- name: Accept
description: >
......@@ -988,9 +1000,9 @@ paths:
description: >
201 Created
Representation of the created subscription resource.
The HTTP response shall include a "Location"
HTTP header that points to the created subscription resource.
Shall be returned when the subscription has been created successfully.
The response body shall contain a representation of the created subscription resource.
The HTTP response shall include a "Location" HTTP header that points to the created subscription resource.
headers:
Content-Type:
description: The MIME type of the body of the response.
......@@ -1049,11 +1061,18 @@ paths:
required: false
type: string
description: >
Attribute-based filtering parameters according to clause 4.3.2.
The NFVO shall support receiving filtering parameters as part of the URI query
string. The OSS/BSS may supply filtering parameters.
All attribute names that appear in the PkgmSubscription and in data types
referenced from it shall be supported in attribute-based filtering parameters
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 filtering parameter.
All attribute names that appear in the PkgmSubscription and in data types referenced from it
shall be supported by the NFVO in the filtering expression
- name: nextpage_opaque_marker
in: query
required: false
type: string
description: >
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.
- name: Accept
description: >
Content-Types that are acceptable for the response.
......@@ -1066,7 +1085,15 @@ paths:
description: >
200 OK
Active subscriptions of the functional block that invokes the method.
Shall be returned when the list of subscriptions has been queried successfully.
The response body shall contain in an array the representations of all active subscriptions of the
functional block that invokes the method, i.e. zero or more representations of VNF package management
subscriptions, as defined in clause 9.5.2.7.
If the "filter" URI parameter was supplied in the request, the data in the response body shall have been
transformed according to the rules specified in clause 5.2.2 of ETSI GS NFV-SOL 013.
If the NFVO supports alternative 2 (paging) according to clause 5.4.2.1 of ETSI GS NFV SOL 013 for
this resource, inclusion of the Link HTTP header in this response shall follow the provisions in clause
5.4.2.3 of ETSI GS NFV SOL 013.
headers:
Content-Type:
description: The MIME type of the body of the response.
......@@ -1157,7 +1184,8 @@ paths:
description: >
200 OK
Representation of the subscription resource.
Shall be returned when information about an individual subscription has been read successfully.
The response body shall contain a representation of the subscription resource.
headers:
Content-Type:
description: The MIME type of the body of the response.
......@@ -1202,12 +1230,17 @@ paths:
summary: Terminate a subscription.
description: >
The DELETE method terminates an individual subscription.
This method shall follow the provisions specified in the Tables 9.4.9.3.5-1 and 9.4.9.3.5-2 for
URI query parameters, request and response data structures, and response codes.
As the result of successfully executing this method, the "Individual subscription" resource shall
not exist any longer. This means that no notifications for that subscription shall be sent to the formerly-subscribed API consumer.
NOTE: Due to race conditions, some notifications might still be received by the formerly-subscribed API consumer for a certain time period after the deletion.
responses:
204:
description: >
No Content
The subscription resource was deleted successfully.
Shall be returned when the subscription resource washas been deleted successfully.
headers:
WWW-Authenticate:
type: string
......
......@@ -101,9 +101,7 @@ definitions:
$ref: "../../definitions/SOL005_def.yaml#/definitions/Link"
vnfd:
description: >
Link to the VNFD resource. This link shall
be present after the VNF package content
is on-boarded.
Link to the VNFD resource.
$ref: "../../definitions/SOL005_def.yaml#/definitions/Link"
packageContent:
description: >
......@@ -121,8 +119,10 @@ definitions:
properties:
artifactPath:
description: >
Path in the VNF package, which identifies the artifact
and also allows to access a copy of the artifact.
Path in the VNF package, which identifies the artifact and also allows to access a copy of the artifact.
The value of this attribute shall start with the name of the first segment in the path,
i.e. it shall not be prefixed by path separator characters such as "." and "/".
EXAMPLE: foo/bar/run.sh
$ref: "../../definitions/SOL005_def.yaml#/definitions/String"
checksum:
description: >
......@@ -410,7 +410,7 @@ definitions:
description: >
Authentication parameters to conFigure the use of
authorization when sending notifications corresponding
to this subscription, as defined in clause 4.5.3.4.
to this subscription, as defined in clause 8.3.4 of ETSI GS NFV SOL 013.
This attribute shall only be present if the subscriber
requires authorization of notifications.
$ref: "../../definitions/SOL005_def.yaml#/definitions/SubscriptionAuthentication"
......
......@@ -30,10 +30,8 @@ paths:
post:
summary: Notify about VNF package onboarding or change
description: >
The POST method delivers a notification from the server to the client.
This method shall follow the provisions specified in the
Tables 9.4.10.3.1-1 and 9.4.10.3.1-2 for URI query parameters,
request and response data structures, and response codes.
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.
parameters:
- name: VnfPackageOnboardingNotification
description: >
......@@ -74,7 +72,7 @@ paths:
description: >
204 No Content
The notification was delivered successfully.
Shall be returned when the notification has been delivered successfully.
headers:
WWW-Authenticate:
type: string
......@@ -101,6 +99,71 @@ paths:
503:
$ref: "../responses/SOL005_resp.yaml#/responses/503"
get:
summary: Test the notification endpoint.
description: >
The GET method allows the server to test the notification endpoint that is provided by
the client, e.g. during subscription.
parameters:
- name: Accept
description: >
Content-Types that are acceptable for the response.
Reference: IETF RFC 7231
in: header
required: true
type: string
- name: Authorization
description: >
The authorization token for the request.
Reference: IETF RFC 7235
in: header
required: false
type: string
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
responses:
204:
description: >
204 No Content
Shall be returned to indicate that the notification endpoint has been tested successfully.
The response body shall be empty.
headers:
WWW-Authenticate:
type: string
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.
maximum: 1
minimum: 0
Version:
description: >
Version of the API used in the response.
type: string
maximum: 1
minimum: 1
400:
$ref: "../responses/SOL005_resp.yaml#/responses/400"
401:
$ref: "../responses/SOL005_resp.yaml#/responses/401"
403:
$ref: "../responses/SOL005_resp.yaml#/responses/403"
404:
$ref: "../responses/SOL005_resp.yaml#/responses/404"
405:
$ref: "../responses/SOL005_resp.yaml#/responses/405"
406:
$ref: "../responses/SOL005_resp.yaml#/responses/406"
500:
$ref: "../responses/SOL005_resp.yaml#/responses/500"
503:
$ref: "../responses/SOL005_resp.yaml#/responses/503"
'/URI_is_provided_by_the_client_when_creating_the_subscription-VnfPackageChangeNotification':
post:
summary: Notify about VNF package onboarding or change
......@@ -149,7 +212,8 @@ paths:
description: >
204 No Content
The notification was delivered successfully.
Shall be returned to indicate that the notification endpoint has been tested successfully.
The response body shall be empty.
headers:
WWW-Authenticate:
type: string
......@@ -181,8 +245,6 @@ paths:
description: >
The GET method allows the server to test the notification endpoint that is provided by the client, e.g. during
subscription.
This method shall follow the provisions specified in the Tables 9.4.10.3.2-1 and 9.4.10.3.2-2 for URI query parameters,
request and response data structures, and response codes.
parameters:
- name: Accept
description: >
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment