Commit c2d197ef authored by rameshnaraya's avatar rameshnaraya
Browse files

Fixed SOL005 v2.4.1 Review issues.

parent f8fedac8
Pipeline #323 pending with stage
swagger: "2.0" swagger: "2.0"
info: info:
version: "2.4.1" version: "1.0.0"
title: SOL005 - VNF Package Management Interface title: SOL005 - VNF Package Management Interface
description: > description: >
SOL005 - VNF Package Management Interface SOL005 - VNF Package Management Interface
...@@ -19,15 +19,12 @@ externalDocs: ...@@ -19,15 +19,12 @@ externalDocs:
description: ETSI GS NFV-SOL 005 V2.4.1 description: ETSI GS NFV-SOL 005 V2.4.1
url: http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.04.01_60/gs_NFV-SOL005v020401p.pdf url: http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.04.01_60/gs_NFV-SOL005v020401p.pdf
basePath: "/vnfpkgm/v1" basePath: "/vnfpkgm/v1"
schemes: schemes:
- https - https
consumes: consumes:
- "application/json" - "application/json"
produces: produces:
- "application/json" - "application/json"
paths: paths:
############################################################################### ###############################################################################
# VNF Packages # # VNF Packages #
...@@ -101,11 +98,12 @@ paths: ...@@ -101,11 +98,12 @@ paths:
Reference: IETF RFC 7235 Reference: IETF RFC 7235
in: header in: header
required: false required: false
type: string type: string
responses: responses:
200: 200:
description: > description: >
200 OK. 200 OK
Information of the selected VNF packages. Information of the selected VNF packages.
headers: headers:
Content-Type: Content-Type:
...@@ -113,12 +111,14 @@ paths: ...@@ -113,12 +111,14 @@ paths:
type: string type: string
maximum: 1 maximum: 1
minimum: 1 minimum: 1
WWW-Authenticate: WWW-Authenticate:
type: string type: "string"
description: > description: >
Challenge if the corresponding HTTP request has not provided Challenge if the corresponding HTTP request has not provided
authorization, or error details if the corresponding HTTP authorization, or error details if the corresponding HTTP request
request has provided an invalid authorization token. has provided an invalid authorization token.
maximum: 1
minimum: 0
schema: schema:
type: array type: array
items: items:
...@@ -186,35 +186,52 @@ paths: ...@@ -186,35 +186,52 @@ paths:
responses: responses:
201: 201:
description: > description: >
"Status 201 - Created" 201 Created
An individual VNF package resource has been created successfully.
"An individual VNF package resource has been created successfully.
The response body shall contain a representation of The response body shall contain a representation of
the new individual VNF package resource, as defined the new individual VNF package resource, as defined
in clause 9.5.2.4. in clause 9.5.2.4.
The HTTP response shall include a "Location" HTTP The HTTP response shall include a "Location" HTTP
header that contains the resource URI of the individual header that contains the resource URI of the individual
VNF package resource." VNF package resource.
schema: schema:
$ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/VnfPkgInfo" properties:
VnfPkgInfo:
$ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/VnfPkgInfo"
headers: headers:
Location: Content-Type:
type: "string" type: "string"
description: > description: >
"The HTTP response shall include a "Location" HTTP header The MIME type of the body of the response.This header
that contains the resource URI of the new NS descriptor resource." field shall be present if the response has a non-empty message
body.
maximum: 1
minimum: 1
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
############################################################################### ###############################################################################
# Individual VNF Package # # Individual VNF Package #
############################################################################### ###############################################################################
'/vnf_packages/{vnfPkgId}': '/vnf_packages/{vnfPkgId}':
#ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.3 #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.3
parameters:
- name: "vnfPkgId"
description: >
Identifier of the VNF package. The identifier is allocated by the NFVO.
in: "path"
type: "string"
required: true
get: get:
summary: Read information about an individual VNF package. summary: Read information about an individual VNF package.
description: > description: >
"This resource represents an individual VNF package. The GET method reads the information of a VNF package.
The client can use this resource to read information of the VNF
package, update information of the VNF package, or delete a VNF package."
parameters: parameters:
- name: Accept - name: Accept
description: > description: >
...@@ -232,20 +249,16 @@ paths: ...@@ -232,20 +249,16 @@ paths:
type: string type: string
responses: responses:
200: 200:
description: 200 OK. description: >
200 OK
Information of the VNF package.
schema: schema:
type: "object" type: "object"
description: >
Information of the VNF package.
properties: properties:
VnfPkgInfo: VnfPkgInfo:
$ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/VnfPkgInfo" $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/VnfPkgInfo"
headers: headers:
Location:
type: "string"
description: >
The HTTP response shall include a Location HTTP header
that contains the resource URI of the new NS descriptor resource.
Content-Type: Content-Type:
type: "string" type: "string"
description: > description: >
...@@ -257,6 +270,8 @@ paths: ...@@ -257,6 +270,8 @@ paths:
Challenge if the corresponding HTTP request has not provided Challenge if the corresponding HTTP request has not provided
authorization, or error details if the corresponding HTTP request authorization, or error details if the corresponding HTTP request
has provided an invalid authorization token. has provided an invalid authorization token.
maximum: 1
minimum: 0
400: 400:
$ref: "responses/SOL005_resp.yaml#/responses/400" $ref: "responses/SOL005_resp.yaml#/responses/400"
401: 401:
...@@ -278,7 +293,7 @@ paths: ...@@ -278,7 +293,7 @@ paths:
delete: delete:
summary: Delete an individual VNF package. summary: Delete an individual VNF package.
description: > description: >
"The DELETE method deletes an individual NS descriptor resource. The DELETE method deletes an individual VNF Package resource.
parameters: parameters:
- name: Authorization - name: Authorization
description: > description: >
...@@ -290,7 +305,7 @@ paths: ...@@ -290,7 +305,7 @@ paths:
responses: responses:
204: 204:
description: > description: >
204 No Content. 204 No Content
The VNF package was deleted successfully. The VNF package was deleted successfully.
The response body shall be empty. The response body shall be empty.
...@@ -348,12 +363,11 @@ paths: ...@@ -348,12 +363,11 @@ paths:
Reference: IETF RFC 7231 Reference: IETF RFC 7231
in: header in: header
required: true required: true
type: string type: string
responses: responses:
200: 200:
description: > description: >
200 OK. 200 OK
The operation was completed successfully. The operation was completed successfully.
The response body shall contain attribute The response body shall contain attribute
...@@ -366,11 +380,11 @@ paths: ...@@ -366,11 +380,11 @@ paths:
maximum: 1 maximum: 1
minimum: 1 minimum: 1
WWW-Authenticate: WWW-Authenticate:
type: "string"
description: > description: >
Challenge if the corresponding HTTP request has not provided Challenge if the corresponding HTTP request has not provided
authorization, or error details if the corresponding HTTP authorization, or error details if the corresponding HTTP request
request has provided an invalid authorization token. has provided an invalid authorization token.
type: string
maximum: 1 maximum: 1
minimum: 0 minimum: 0
schema: schema:
...@@ -398,14 +412,6 @@ paths: ...@@ -398,14 +412,6 @@ paths:
503: 503:
$ref: "responses/SOL005_resp.yaml#/responses/503" $ref: "responses/SOL005_resp.yaml#/responses/503"
parameters:
- name: "vnfPkgId"
description: >
Identifier of the VNF package. The identifier is allocated by the NFVO.
in: "path"
required: true
type: "string"
############################################################################### ###############################################################################
# VNFD in an individual VNF package # # VNFD in an individual VNF package #
############################################################################### ###############################################################################
...@@ -458,7 +464,7 @@ paths: ...@@ -458,7 +464,7 @@ paths:
responses: responses:
200: 200:
description: > description: >
200 OK. 200 OK
On success, the content of the VNFD is returned. On success, the content of the VNFD is returned.
The payload body shall contain a copy of the file The payload body shall contain a copy of the file
...@@ -475,11 +481,11 @@ paths: ...@@ -475,11 +481,11 @@ paths:
maximum: 1 maximum: 1
minimum: 1 minimum: 1
WWW-Authenticate: WWW-Authenticate:
type: "string"
description: > description: >
Challenge if the corresponding HTTP request has not provided Challenge if the corresponding HTTP request has not provided
authorization, or error details if the corresponding HTTP authorization, or error details if the corresponding HTTP request
request has provided an invalid authorization token. has provided an invalid authorization token.
type: string
maximum: 1 maximum: 1
minimum: 0 minimum: 0
400: 400:
...@@ -513,7 +519,14 @@ paths: ...@@ -513,7 +519,14 @@ paths:
# VNF Package Content # # VNF Package Content #
############################################################################### ###############################################################################
'/vnf_packages/{vnfPkgId}/package_content': '/vnf_packages/{vnfPkgId}/package_content':
#ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.5 #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.5
parameters:
- name: "vnfPkgId"
description: >
Identifier of the on-boarded VNF package. The identifier is allocated by the NFVO.
in: "path"
required: true
type: "string"
get: get:
summary: Fetch an on-boarded VNF package. summary: Fetch an on-boarded VNF package.
description: > description: >
...@@ -528,7 +541,6 @@ paths: ...@@ -528,7 +541,6 @@ paths:
required: true required: true
type: string type: string
enum: enum:
- text/plain
- application/zip - application/zip
- name: Authorization - name: Authorization
description: > description: >
...@@ -551,7 +563,7 @@ paths: ...@@ -551,7 +563,7 @@ paths:
responses: responses:
200: 200:
description: > description: >
200 OK. 200 OK
On success, a copy of the VNF package file is returned. On success, a copy of the VNF package file is returned.
The response body shall include a copy of the VNF package file. The response body shall include a copy of the VNF package file.
...@@ -566,11 +578,11 @@ paths: ...@@ -566,11 +578,11 @@ paths:
maximum: 1 maximum: 1
minimum: 1 minimum: 1
WWW-Authenticate: WWW-Authenticate:
type: "string"
description: > description: >
Challenge if the corresponding HTTP request has not provided Challenge if the corresponding HTTP request has not provided
authorization, or error details if the corresponding HTTP authorization, or error details if the corresponding HTTP request
request has provided an invalid authorization token. has provided an invalid authorization token.
type: string
maximum: 1 maximum: 1
minimum: 0 minimum: 0
206: 206:
...@@ -579,9 +591,7 @@ paths: ...@@ -579,9 +591,7 @@ paths:
description: > description: >
$ref: "responses/VNFPackageManagement_resp.yaml#/responses/409-state-conflict-ONBOARDING" $ref: "responses/VNFPackageManagement_resp.yaml#/responses/409-state-conflict-ONBOARDING"
416: 416:
description: > $ref: "responses/SOL005_resp.yaml#/responses/416"
"416 Range Not Satisfiable"
$ref: "responses/SOL005_resp.yaml#/responses/416-range-not-satisfiable"
400: 400:
$ref: "responses/SOL005_resp.yaml#/responses/400" $ref: "responses/SOL005_resp.yaml#/responses/400"
401: 401:
...@@ -608,7 +618,22 @@ paths: ...@@ -608,7 +618,22 @@ paths:
request and response data structures, and response codes. request and response data structures, and response codes.
consumes: consumes:
- multipart/form-data - multipart/form-data
parameters: parameters:
- name: Accept
description: >
Content-Types that are acceptable for the response.
in: header
required: true
type: string
enum:
- application/zip
- name: Authorization
description: >
The authorization token for the request.
Reference: IETF RFC 7235
in: header
required: false
type: string
- in: formData - in: formData
name: file name: file
required: false required: false
...@@ -621,7 +646,7 @@ paths: ...@@ -621,7 +646,7 @@ paths:
responses: responses:
202: 202:
description: > description: >
202 Accepted. 202 Accepted
The VNF package was accepted for uploading, but the The VNF package was accepted for uploading, but the
processing has not been completed. It is expected to processing has not been completed. It is expected to
...@@ -645,14 +670,7 @@ paths: ...@@ -645,14 +670,7 @@ paths:
500: 500:
$ref: "responses/SOL005_resp.yaml#/responses/500" $ref: "responses/SOL005_resp.yaml#/responses/500"
503: 503:
$ref: "responses/SOL005_resp.yaml#/responses/503" $ref: "responses/SOL005_resp.yaml#/responses/503"
parameters:
- name: "vnfPkgId"
description: >
Identifier of the on-boarded VNF package. The identifier is allocated by the NFVO.
in: "path"
required: true
type: "string"
############################################################################### ###############################################################################
# Upload VNF package from URI task # # Upload VNF package from URI task #
...@@ -661,10 +679,11 @@ paths: ...@@ -661,10 +679,11 @@ paths:
#ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.6 #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.6
post: post:
summary: Upload a VNF package by providing the address information of the VNF package. summary: Upload a VNF package by providing the address information of the VNF package.
description: > description: >
This task resource represents the "Upload VNF package from URI" operation. The client can use this resource to The POST method provides the information for the NFVO to get the content of a VNF package.
request the uploading of a VNF package by providing address information to the NFVO for retrieving the content of the This method shall follow the provisions specified in the
VNF package. Tables 9.4.6.3.1-1 and 9.4.6.3.1-2 for URI query parameters,
request and response data structures, and response codes.
parameters: parameters:
- name: Accept - name: Accept
description: > description: >
...@@ -712,7 +731,7 @@ paths: ...@@ -712,7 +731,7 @@ paths:
responses: responses:
202: 202:
description: > description: >
202 Accepted. 202 Accepted
The information about the VNF package was received The information about the VNF package was received
successfully, but the on-boarding has not been successfully, but the on-boarding has not been
...@@ -741,119 +760,138 @@ paths: ...@@ -741,119 +760,138 @@ paths:
# Individual VNF package artifact # # Individual VNF package artifact #
############################################################################### ###############################################################################
'/vnf_packages/{vnfPkgId}/artifacts/{artifactPath}': '/vnf_packages/{vnfPkgId}/artifacts/{artifactPath}':
#ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.6 #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.7
parameters: parameters:
- name: vnfPkgId - name: vnfPkgId
description: > description: >
Identifier of the on-boarded VNF package. Identifier of the on-boarded VNF package.
This identifier can be retrieved from the "vnfPkgId" attribute in the VnfPackageOnboardingNotification or The identifier is allocated by the NFVO.
VnfPackageChangeNotification. This identifier can be retrieved from the "vnfPkgId" attribute in the VnfPackageOnboardingNotification or
in: path VnfPackageChangeNotification.
type: string in: path
required: true type: string
- name: artifactPath required: true
description: > - name: artifactPath
Path of the artifact within the VNF package. description: >
This identifier can be retrieved from the "artifactPath" attribute of the applicable "additionalArtifacts" entry in Path of the artifact within the VNF package.
the body of the response to a GET request querying the "Individual VNF package" or the "VNF packages" This identifier can be retrieved from the "artifactPath" attribute of the applicable "additionalArtifacts" entry in
resource. the body of the response to a GET request querying the "Individual VNF package" or the "VNF packages"
in: path resource.
type: string in: path
required: true type: string
get: required: true
summary: Fetch individual VNF package artifact. get:
description: > summary: Fetch individual VNF package artifact.
The GET method fetches the content of an artifact within a VNF package. description: >
This method shall follow the provisions specified in the The GET method fetches the content of an artifact within a VNF package.
Tables 9.4.7.3.2-1 and 9.4.7.3.2-2 for URI query parameters, This method shall follow the provisions specified in the
request and response data structures, and response codes. Tables 9.4.7.3.2-1 and 9.4.7.3.2-2 for URI query parameters,
parameters: request and response data structures, and response codes.
- name: Accept parameters:
description: > - name: Accept
Content-Types that are acceptable for the response. description: >
in: header Content-Types that are acceptable for the response.
required: true in: header
type: string required: true
- name: Authorization type: string
description: > - name: Authorization
The authorization token for the request. description: >
Reference: IETF RFC 7235 The authorization token for the request.
in: header Reference: IETF RFC 7235
required: false in: header
type: string required: false
- name: Range type: string
description: > - name: Range
The request may contain a "Range" HTTP header to obtain single description: >
range of bytes from the VNF package file. This can be used to The request may contain a "Range" HTTP header to obtain single
continue an aborted transmission. range of bytes from the VNF package file. This can be used to
If the NFVO does not support range requests, it should return the continue an aborted transmission.
whole file with a 200 OK response instead. If the NFVO does not support range requests, it should return the
in: header whole file with a 200 OK response instead.
type: string