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

addressed comments from SOL WG

parent a07628a8
Pipeline #8035 failed with stage
in 0 seconds
......@@ -157,7 +157,7 @@ paths:
"406":
$ref: ../responses/SOL005_resp.yaml#/components/responses/406
"422":
$ref: ../responses/SOL005_resp.yaml#/components/responses/422
$ref: '#/components/responses/CapacityThresholds.Post.422'
"500":
$ref: ../responses/SOL005_resp.yaml#/components/responses/500
"503":
......@@ -218,9 +218,9 @@ paths:
"406":
$ref: ../responses/SOL005_resp.yaml#/components/responses/406
"412":
$ref: ../responses/SOL005_resp.yaml#/components/responses/412
$ref: '#/components/responses/IndividualCapacityThreshold.Patch.412'
"422":
$ref: ../responses/SOL005_resp.yaml#/components/responses/422
$ref: '#/components/responses/IndividualCapacityThreshold.Patch.422'
"500":
$ref: ../responses/SOL005_resp.yaml#/components/responses/500
"503":
......@@ -442,6 +442,44 @@ components:
schema:
$ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/CapacityThreshold
CapacityThresholds.Post.422:
description: |
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 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 [16],
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 NFVO has tested
the Notification endpoint as described in clause 10.4.6.3.2 and the test has failed.
In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more information about the error.
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-Type:
description: The MIME type of the body of the response.
style: simple
explode: false
schema:
type: string
content:
application/json:
schema:
$ref: $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails"
IndividualCapacityThreshold.Get.200:
description: |
Shall be returned when information about an individual capacity threshold has been read successfully.
......@@ -505,6 +543,75 @@ components:
schema:
$ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/CapacityThresholdModifications
IndividualCapacityThreshold.Patch.412:
description: |
412 PRECONDITION FAILED
A precondition given in an HTTP request header is not fulfilled.
Typically, this is due to an ETag mismatch, indicating that the resource was modified by another entity.
The response body should contain a ProblemDetails structure, in which the "detail" attribute should convey
more information about the error
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-Type:
description: The MIME type of the body of the response.
style: simple
explode: false
schema:
type: string
IndividualCapacityThreshold.Patch.422:
description: |
422 UNPROCESSABLE ENTITY
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.
The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [16],
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 NFVO has tested
the Notification endpoint as described in clause 10.4.6.3.2 and the test has failed.
In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more information about the error.
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-Type:
description: The MIME type of the body of the response.
style: simple
explode: false
schema:
type: string
content:
application/json:
schema:
$ref: $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails"
IndividualCapacityThreshold.Delete.204:
description: |
Shall be returned when the NFVI capacity threshold has been deleted successfully.
......
......@@ -163,22 +163,9 @@ paths:
406:
$ref: "../responses/SOL005_resp.yaml#/components/responses/406"
409:
# description: |
# 409 CONFLICT
# Error: The operation cannot be executed currently,
# due to a conflict with the state of the "individual NS descriptor" resource.
# Typically, this is due to an operational state
# mismatch, i.e. enable an already enabled or
# disable an already disabled individual NS
# descriptor resource, or the "nsdOnboardingState"
# is not ONBOARDED.
# The response body shall contain a ProblemDetails
# structure, in which the "detail" attribute shall convey
# more information about the error.
$ref: "../responses/SOL005_resp.yaml#/components/responses/409"
$ref: '#/components/responses/IndividualNSDescriptor.Patch.409'
412:
$ref: "../responses/SOL005_resp.yaml#/components/responses/412"
$ref: '#/components/responses/IndividualNSDescriptor.Patch.412'
500:
$ref: "../responses/SOL005_resp.yaml#/components/responses/500"
503:
......@@ -205,20 +192,7 @@ paths:
406:
$ref: "../responses/SOL005_resp.yaml#/components/responses/406"
409:
# description: |
# 409 CONFLICT
# Error: The operation cannot be executed currently,
# due to a conflict with the state of the resource.
# Typically, this is due to the fact the NS descriptor
# resource is in the enabled operational state (i.e.
# nsdOperationalState = ENABLED) or there are running
# NS instances using the concerned individual NS
# descriptor resource (i.e. nsdUsageState = IN_USE).
# The response body shall contain a ProblemDetails
# structure, in which the "detail" attribute shall convey
# more information about the error.
$ref: "../responses/SOL005_resp.yaml#/components/responses/409"
$ref: '#/components/responses/IndividualNSDescriptor.Delete.409'
500:
$ref: "../responses/SOL005_resp.yaml#/components/responses/500"
503:
......@@ -246,19 +220,7 @@ paths:
200:
$ref: '#/components/responses/NsdArchiveContent.Get.200'
206:
# description: |
# 206 PARTIAL CONTENT
# On success, if the NFVO supports range requests,
# a single consecutive byte range from the content of
# the NSD file is returned.
# The response body shall contain the requested part
# of the NSD 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.
$ref: "../responses/SOL005_resp.yaml#/components/responses/206"
$ref: '#/components/responses/NsdArchiveContent.Get.206'
400:
$ref: "../responses/SOL005_resp.yaml#/components/responses/400"
401:
......@@ -269,42 +231,10 @@ paths:
$ref: "../responses/SOL005_resp.yaml#/components/responses/404"
405:
$ref: "../responses/SOL005_resp.yaml#/components/responses/405"
406:
# description: |
# 406 NOT ACCEPTABLE
# If the "Accept" header does not contain at least one
# name of a content type for which the NFVO can
# provide a representation of the NSD, the NFVO
# shall respond with this response code.
# The "ProblemDetails" structure may be included
# with the "detail" attribute providing more information
# about the error.
$ref: "../responses/SOL005_resp.yaml#/components/responses/406"
409:
# description: |
# 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
# "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.
$ref: "../responses/SOL005_resp.yaml#/components/responses/409"
$ref: '#/components/responses/NsdArchiveContent.Get.409'
416:
# description: |
# 416 RANGE NOT SATISFIABLE
# The byte range passed in the "Range" header did
# not match any available byte range in the NSD file
# (e.g. "access after end of file").
# The response body may contain a ProblemDetails
# structure.
$ref: "../responses/SOL005_resp.yaml#/components/responses/416"
$ref: '#/components/responses/NsdArchiveContent.Get.416'
500:
$ref: "../responses/SOL005_resp.yaml#/components/responses/500"
503:
......@@ -335,18 +265,7 @@ paths:
406:
$ref: "../responses/SOL005_resp.yaml#/components/responses/406"
409:
# description: |
# 409 CONFLICT
#
# 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 the
# NsdOnboardingState has a value other than
# CREATED.
# The response body shall contain a ProblemDetails
# structure, in which the "detail" attribute shall convey
# more information about the error.
$ref: "../responses/SOL005_resp.yaml#/components/responses/409"
$ref: '#/components/responses/NsdArchiveContent.Put.409'
500:
$ref: "../responses/SOL005_resp.yaml#/components/responses/500"
503:
......@@ -384,9 +303,9 @@ paths:
405:
$ref: "../responses/SOL005_resp.yaml#/components/responses/405"
406:
$ref: "../responses/SOL005_resp.yaml#/components/responses/406"
$ref: '#/components/responses/NSD.Get.406'
409:
$ref: "../responses/SOL005_resp.yaml#/components/responses/409"
$ref: '#/components/responses/NSD.Get.409'
500:
$ref: "../responses/SOL005_resp.yaml#/components/responses/500"
503:
......@@ -424,19 +343,7 @@ paths:
405:
$ref: "../responses/SOL005_resp.yaml#/components/responses/405"
409:
# description: |
# 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
# "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.
$ref: "../responses/SOL005_resp.yaml#/components/responses/409"
$ref: '#/components/responses/NsdArchiveManifest.Get.409'
500:
$ref: "../responses/SOL005_resp.yaml#/components/responses/500"
503:
......@@ -474,34 +381,13 @@ paths:
404:
$ref: "../responses/SOL005_resp.yaml#/components/responses/404"
406:
# description: |
# If the related request contained an "Accept" header not compatible with the Content type
# "application/zip" but the "include_signatures" flag was provided, the NFVO shall respond
# with this response code.
# The "ProblemDetails" structure may be included with the "detail" attribute providing more
# information about the error.
$ref: "../responses/SOL005_resp.yaml#/components/responses/405"
$ref: '#/components/responses/IndividualNsdArchiveArtifact.Get.406'
405:
$ref: "../responses/SOL005_resp.yaml#/components/responses/406"
409:
# description: |
# 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.
$ref: "../responses/SOL005_resp.yaml#/components/responses/409"
$ref: '#/components/responses/IndividualNsdArchiveArtifact.Get.409'
416:
# description: |
# The byte range passed in the "Range" header did not match any available byte range in the
# artifact file (e.g. "access after end of file").
# The response body may contain a ProblemDetails structure.
$ref: "../responses/SOL005_resp.yaml#/components/responses/416"
$ref: '#/components/responses/IndividualNsdArchiveArtifact.Get.416'
500:
$ref: "../responses/SOL005_resp.yaml#/components/responses/500"
503:
......@@ -641,7 +527,7 @@ paths:
406:
$ref: "../responses/SOL005_resp.yaml#/components/responses/406"
412:
$ref: "../responses/SOL005_resp.yaml#/components/responses/412"
$ref: '#/components/responses/IndividualPnfDescriptor.Patch.412'
500:
$ref: "../responses/SOL005_resp.yaml#/components/responses/500"
503:
......@@ -708,20 +594,9 @@ paths:
406:
$ref: "../responses/SOL005_resp.yaml#/components/responses/406"
409:
# description: |
# 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 pnfdOnboardingState
# 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.
$ref: "../responses/SOL005_resp.yaml#/components/responses/409"
$ref: '#/components/responses/PnfdArchiveContent.Get.409'
416:
$ref: "../responses/SOL005_resp.yaml#/components/responses/416"
$ref: '#/components/responses/PnfdArchiveContent.Get.416'
500:
$ref: "../responses/SOL005_resp.yaml#/components/responses/500"
503:
......@@ -753,18 +628,7 @@ paths:
406:
$ref: "../responses/SOL005_resp.yaml#/components/responses/406"
409:
# description: |
# 409 CONFLICT
# 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 the
# PnfdOnboardingState has a value other than
# CREATED.
# The response body shall contain a ProblemDetails
# structure, in which the "detail" attribute shall convey
# more information about the error.
$ref: "../responses/SOL005_resp.yaml#/components/responses/409"
$ref: '#/components/responses/PnfdArchiveContent.Put.409'
500:
$ref: "../responses/SOL005_resp.yaml#/components/responses/500"
503:
......@@ -801,9 +665,9 @@ paths:
405:
$ref: "../responses/SOL005_resp.yaml#/components/responses/405"
406:
$ref: "../responses/SOL005_resp.yaml#/components/responses/406"
$ref: '#/components/responses/PNFD.Get.406'
409:
$ref: "../responses/SOL005_resp.yaml#/components/responses/409"
$ref: '#/components/responses/PNFD.Get.409'
500:
$ref: "../responses/SOL005_resp.yaml#/components/responses/500"
503:
......@@ -843,7 +707,7 @@ paths:
406:
$ref: "../responses/SOL005_resp.yaml#/components/responses/406"
409:
$ref: "../responses/SOL005_resp.yaml#/components/responses/409"
$ref: '#/components/responses/PnfdArchiveManifest.Get.409'
500:
$ref: "../responses/SOL005_resp.yaml#/components/responses/500"
503:
......@@ -882,34 +746,11 @@ paths:
404:
$ref: "../responses/SOL005_resp.yaml#/components/responses/404"
406:
# description: |
# If the related request contained an "Accept" header not compatible with the Content type
# "application/zip" but the "include_signatures" flag was provided, the NFVO shall respond
# with this response code.
# The "ProblemDetails" structure may be included with the "detail" attribute providing more
# information about the error.
$ref: "../responses/SOL005_resp.yaml#/components/responses/405"
405:
$ref: "../responses/SOL005_resp.yaml#/components/responses/406"
$ref: '#/components/responses/IndividualPnfdArchiveArtifact.Get.406'
409:
# description: |
# 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 "pnfdOnboardingState" 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.
$ref: "../responses/SOL005_resp.yaml#/components/responses/409"
$ref: '#/components/responses/IndividualPnfdArchiveArtifact.Get.409'
416:
# description: |
# The byte range passed in the "Range" header did not match any available byte range in the
# artifact file (e.g. "access after end of file").
# The response body may contain a ProblemDetails structure.
$ref: "../responses/SOL005_resp.yaml#/components/responses/416"
$ref: '#/components/responses/IndividualPnfdArchiveArtifact.Get.416'
500:
$ref: "../responses/SOL005_resp.yaml#/components/responses/500"
503:
......@@ -938,18 +779,7 @@ paths:
201:
$ref: '#/components/responses/Subscriptions.Post.201'
303:
# description: |
# 303 SEE OTHER
# Shall be returned when a subscription with the
# same callbackURI and the same filter already
# exits and the policy of the NFVO is to not create
# redundant subscriptions.
# The HTTP response shall include a "Location"
# HTTP header that contains the resource URI of
# the existing subscription resource.
# The response body shall be empty.
$ref: "../responses/SOL005_resp.yaml#/components/responses/303"
$ref: '#/components/responses/Subscriptions.Post.303'
400:
$ref: "../responses/SOL005_resp.yaml#/components/responses/400"
401:
......@@ -963,7 +793,7 @@ paths:
406:
$ref: "../responses/SOL005_resp.yaml#/components/responses/406"
422:
$ref: "../responses/SOL005_resp.yaml#/components/responses/422"
$ref: '#/components/responses/Subscriptions.Post.422'
500:
$ref: "../responses/SOL005_resp.yaml#/components/responses/500"
503:
......@@ -1371,7 +1201,7 @@ components:
Shall be returned when the operation has been accepted and completed successfully.
The response body shall contain attribute modifications for an 'Individual NS descriptor'
resource (see clause 5.5.2.6).
resource (see clause 5.5.2.1).
headers:
Content-Type:
description: |
......@@ -1400,13 +1230,24 @@ components:
schema:
$ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdInfoModifications"
IndividualNSDescriptor.Delete.204:
IndividualNSDescriptor.Patch.409:
description: |
204 NO CONTENT
409 CONFLICT
Shall be returned when the operation has completed successfully.
The response body shall be empty.
Shall be returned upon the following error: The operation cannot be executed currently, due to a conflict with
the state of the "Individual NS descriptor" resource.
Typically, this is due to an operational state mismatch, i.e. enable an already enabled or disable an already
disabled individual NS descriptor resource, or the "nsdOnboardingState" is not 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: |
The MIME type of the body of the request. Reference: IETF RFC 7231
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
......@@ -1422,22 +1263,20 @@ components:
explode: false
schema:
type: string
content:
application/json:
schema:
$ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails"
NsdArchiveContent.Get.200:
IndividualNSDescriptor.Patch.412:
description: |
200 OK
412 PRECONDITION FAILED
Shall be returned when the content of the NSD has been read successfully.
The payload body shall contain a copy of the ZIP file that contains the NSD file structure.
The "Content-Type" HTTP header shall be set to "application/zip".
Shall be returned upon the following error: A precondition given in an HTTP request header is not fulfilled.
Typically, this is due to an ETag mismatch, indicating that the resource was modified by another entity.
The response body should contain a ProblemDetails structure, in which the "detail" attribute should convey
more information about the error.
headers:
Content-Type:
description: |
The MIME type of the body of the request. Reference: IETF RFC 7231
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
......@@ -1454,26 +1293,13 @@ components:
schema:
type: string
NsdArchiveContent.Put.202:
IndividualNSDescriptor.Delete.204:
description: |
202 ACCEPTED
204 NO CONTENT
Shall be returned when the NSD archive has been accepted for uploading,
but the processing has not been completed. It is expected to take some
time for processing (asynchronous mode).
Shall be returned when the operation has completed successfully.
The response body shall be empty.
The API consumer can track the uploading progress by receiving the
"NsdOnBoardingNotification" and "NsdOnBoardingFailureNotification"
from the NFVO or by reading the status of the individual NS descriptor
resource using the GET method.
headers:
Content-Type:
description: |
The MIME type of the body of the request. Reference: IETF RFC 7231
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
......@@ -1490,14 +1316,25 @@ components:
schema:
type: string
NsdArchiveContent.Put.204:
IndividualNSDescriptor.Delete.409:
description: |
204 NO CONTENT
409 CONFLICT
The NSD content successfully uploaded and
validated (synchronous mode).
The response body shall be empty.
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 the NS descriptor resource is in the enabled operational state
(i.e. nsdOperationalState = ENABLED) or there are running NS instances using the concerned individual
NS descriptor resource (i.e. nsdUsageState = IN_USE).
The response body shall contain a ProblemDetails structure, in which the "detail" attribute shall
convey more information about the error.
headers:
Content-Type:
description: |
The MIME type of the body of the request. Reference: IETF RFC 7231
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
......@@ -1513,17 +1350,18 @@ components:
explode: false
schema:
type: string
content:
application/json:
schema:
$ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails"