Skip to content
Snippets Groups Projects
Commit 2de3070a authored by Hammad Zafar's avatar Hammad Zafar Committed by Giacomo Bernini
Browse files

New resources added in the VNFSnapshotPackageManagement-API

parent 47decb23
No related branches found
No related tags found
2 merge requests!199Merge "3.3.1 dev" into "release 3" master,!161SOL003 VNF Snapshot Package - Implementation of deltas between v3.3.1 and v2.7.1
Showing
with 1827 additions and 0 deletions
*** Settings ***
Resource VnfSnapshotPackageManagementKeywords.robot
*** Test Cases ***
POST API Version - Method not implemented
[Documentation] Test ID: 7.3.8.1.1
... Test title: POST API version - Method not implemented
... Test objective: The objective is to test that POST method is not implemented
... Pre-conditions: none
... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
POST API Version
Check HTTP Response Status Code Is 405
GET API Version
[Documentation] Test ID: 7.3.8.1.2
... Test title: GET API Version
... Test objective: The objective is to test that GET method successfully return ApiVersionInformation
... Pre-conditions: none
... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
GET API Version
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is ApiVersionInformation
PUT API Version - Method not implemented
[Documentation] Test ID: 7.3.8.1.3
... Test title: PUT API Version - Method not implemented
... Test objective: The objective is to test that PUT method is not implemented
... Pre-conditions: none
... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
PUT API Version
Check HTTP Response Status Code Is 405
PATCH API Version - Method not implemented
[Documentation] Test ID: 7.3.8.1.4
... Test title: PATCH API Version - Method not implemented
... Test objective: The objective is to test that PATCH method is not implemented
... Pre-conditions: none
... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
PATCH API Version
Check HTTP Response Status Code Is 405
DELETE API Version - Method not implemented
[Documentation] Test ID: 7.3.8.1.5
... Test title: DELETE API Version - Method not implemented
... Test objective: The objective is to test that DELETE method is not implemented
... Pre-conditions: none
... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
DELETE API Version
Check HTTP Response Status Code Is 405
POST API Version with apiMajorVerion - Method not implemented
[Documentation] Test ID: 7.3.8.1.6
... Test title: POST API version with apiMajorVerion - Method not implemented
... Test objective: The objective is to test that POST method is not implemented
... Pre-conditions: none
... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
POST API Version
Check HTTP Response Status Code Is 405
GET API Version with apiMajorVerion
[Documentation] Test ID: 7.3.8.1.7
... Test title: GET API Version with apiMajorVerion
... Test objective: The objective is to test that GET method successfully return ApiVersionInformation
... Pre-conditions: none
... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
GET API Version
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is ApiVersionInformation
PUT API Version with apiMajorVerion - Method not implemented
[Documentation] Test ID: 7.3.8.1.8
... Test title: PUT API Version with apiMajorVerion - Method not implemented
... Test objective: The objective is to test that PUT method is not implemented
... Pre-conditions: none
... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
PUT API Version
Check HTTP Response Status Code Is 405
PATCH API Version with apiMajorVerion - Method not implemented
[Documentation] Test ID: 7.3.8.1.9
... Test title: PATCH API Version with apiMajorVerion - Method not implemented
... Test objective: The objective is to test that PATCH method is not implemented
... Pre-conditions: none
... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
PATCH API Version
Check HTTP Response Status Code Is 405
DELETE API Version with apiMajorVerion - Method not implemented
[Documentation] Test ID: 7.3.8.1.10
... Test title: DELETE API Version with apiMajorVerion - Method not implemented
... Test objective: The objective is to test that DELETE method is not implemented
... Pre-conditions: none
... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
DELETE API Version
Check HTTP Response Status Code Is 405
\ No newline at end of file
*** Settings ***
Resource VnfSnapshotPackageManagementKeywords.robot
*** Test Cases ***
POST Individual VNF Snapshot Package - Method not implemented
[Documentation] Test ID: 7.3.8.3.1
... Test title: POST Individual VNF Snapshot Package - Method not implemented
... Test objective: The objective is to test that POST method is not implemented
... Pre-conditions: none
... Reference: Clause 12.4.3.3.1 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
POST individual VNF Snapshot Package
Check HTTP Response Status Code Is 405
GET Information about an individual VNF Snapshot Package - SUCCESSFUL
[Documentation] Test ID: 7.3.8.3.2
... Test title: GET Information about an individual VNF Snapshot Package - SUCCESSFUL
... Test objective: The objective is to create a new VNF Snapshot Package resource
... Pre-conditions: none
... Reference: Clause 12.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
GET individual VNF Snapshot Package
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is VnfSnapshotPkgInfo
GET Information about an individual VNF Snapshot Package - NOT FOUND
[Documentation] Test ID: 7.3.8.3.3
... Test title: GET Information about an individual VNF Snapshot Package - NOT FOUND
... Test objective: The objective is to test that the retrieval of individual VNF Snapshot Package fails when using an invalid resource identifier.
... Pre-conditions: At least one individual VNF Snapshot Package is available in the NFV-MANO.
... Reference: Clause 12.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_NFV-MANO
... Applicability: none
... Post-Conditions: none
GET Individual VNF Snapshot Package with Invalid URI
Check HTTP Response Status Code Is 404
Check HTTP Response Body Json Schema Is ProblemDetails
PUT Individual VNF Snapshot Package - Method not implemented
[Documentation] Test ID: 7.3.8.3.4
... Test title: PUT Individual VNF Snapshot Package - Method not implemented
... Test objective: The objective is to test that PUT method is not implemented
... Pre-conditions: none
... Reference: Clause 12.4.3.3.3 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: VNF Snapshot Package not modified
PUT individual VNF Snapshot Package
Check HTTP Response Status Code Is 405
PATCH Individual VNF Snapshot Package - Method Not implemented
[Documentation] Test ID: 7.3.8.3.5
... Test title: PATCH Individual VNF Snapshot Package
... Test objective: The objective is to test that PATCH method is not implemented
... Pre-conditions: none
... Reference: Clause 12.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: VNF Snapshot Package modified
PATCH individual VNF Snapshot Package
Check HTTP Response Status Code Is 405
DELETE Individual VNF Snapshot Package - Method Not implemented
[Documentation] Test ID: 7.3.8.3.6
... Test title: DELETE Individual VNF Snapshot Package - Method Not implemented
... Test objective: The objective is to test that DELETE method is not implemented
... Pre-conditions: none
... Reference: Clause 12.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: VNF Snapshot Package deleted
DELETE individual VNF Snapshot Package
Check HTTP Response Status Code Is 405
\ No newline at end of file
*** Settings ***
Resource VnfSnapshotPackageManagementKeywords.robot
*** Test Cases ***
POST Individual VNF Snapshot Package Artifact - Method not implemented
[Documentation] Test ID: 7.3.8.5.1
... Test title: POST Individual VNF Snapshot Package Artifact - Method not implemented
... Test objective: The objective is to test that POST method is not implemented
... Pre-conditions: none
... Reference: Clause 12.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
POST Individual VNF Snapshot Package Artifact
Check HTTP Response Status Code Is 405
GET Individual VNF Snapshot Package Artifact - Complete File
[Documentation] Test ID: 7.3.8.5.2
... Test title: GET Information about an individual VNF Snapshot Package - Complete File
... Test objective: The objective is to fetch the whole content of a VNF snapshot package using GET method.
... Pre-conditions: none
... Reference: Clause 12.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
GET Individual VNF Snapshot Package Artifact - Complete
Check HTTP Response Status Code Is 200
Check HTTP Content-Type Header Is Set For Package Artifact
GET Individual VNF Snapshot Package Artifact - Partial Content
[Documentation] Test ID: 7.3.8.5.3
... Test title: GET Individual VNF Snapshot Package Artifact - Partial Content
... Test objective: The objective is to fetch partial content of a VNF snapshot package by sending a range request using GET method.
... Pre-conditions: none
... Reference: Clause 12.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: NFVO supports range requests
... Post-Conditions: none
GET Individual VNF Snapshot Package Artifact - Range Request
Check HTTP Response Status Code Is 206
Check HTTP Content-Type Header Is Set For Package Artifact
Check HTTP Content-Range Header Is Set
GET Individual VNF Snapshot Package Artifact - Range Request Not Supported
[Documentation] Test ID: 7.3.8.5.4
... Test title: GET Information about an individual VNF Snapshot Package - Range Request Not Supported
... Test objective: The objective is to test that the whole content of a VNF snapshot package is delivered even with a range request when NFVO does not support range requests.
... Pre-conditions: none
... Reference: Clause 12.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: NFVO does not support range requests
... Post-Conditions: none
GET Individual VNF Snapshot Package Artifact - Range Request
Check HTTP Response Status Code Is 200
Check HTTP Content-Type Header Is Set For Package Artifact
GET Individual VNF Snapshot Package Artifact - Range Not Satisfiable
[Documentation] Test ID: 7.3.8.5.5
... Test title: GET Information about an individual VNF Snapshot Package - Range Not Satisfiable
... Test objective: The objective is to test that an error is returned when the byte range passed in the "Range" header does not match any available byte range in the VNF snapshot package file.
... Pre-conditions: none
... Reference: Clause 12.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: NFVO supports range requests
... Post-Conditions: none
GET Individual VNF Snapshot Package Artifact - Invalid Range
Check HTTP Response Status Code Is 416
GET Individual VNF Snapshot Package Artifact - Conflict
[Documentation] Test ID: 7.3.8.5.6
... Test title: GET Information about an individual VNF Snapshot Package - Conflict
... Test objective: The objective is to test that an error is returned when the "state" of the VNF snapshot package has a value different from "AVAILABLE".
... Pre-conditions: none
... Reference: Clause 12.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: The "state" of the VNF snapshot package has a value different from "AVAILABLE".
... Post-Conditions: none
GET Individual VNF Snapshot Package Artifact - Not Available
Check HTTP Response Status Code Is 409
PUT Individual VNF Snapshot Package Artifact - Method not implemented
[Documentation] Test ID: 7.3.8.5.7
... Test title: PUT Individual VNF Snapshot Package Artifact - Method not implemented
... Test objective: The objective is to test that PUT method is not implemented
... Pre-conditions: none
... Reference: Clause 12.4.5.3.3 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: VNF Snapshot Package not modified
PUT Individual VNF Snapshot Package Artifact
Check HTTP Response Status Code Is 405
PATCH Individual VNF Snapshot Package Artifact - Method Not implemented
[Documentation] Test ID: 7.3.8.5.8
... Test title: PATCH Individual VNF Snapshot Package Artifact
... Test objective: The objective is to test that PATCH method is not implemented
... Pre-conditions: none
... Reference: Clause 12.4.5.3.4 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
PATCH Individual VNF Snapshot Package Artifact
Check HTTP Response Status Code Is 405
DELETE Individual VNF Snapshot Package Artifact - Method Not implemented
[Documentation] Test ID: 7.3.8.5.9
... Test title: DELETE Individual VNF Snapshot Package Artifact - Method Not implemented
... Test objective: The objective is to test that DELETE method is not implemented
... Pre-conditions: none
... Reference: Clause 12.4.5.3.5 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
DELETE Individual VNF Snapshot Package Artifact
Check HTTP Response Status Code Is 405
\ No newline at end of file
*** Settings ***
Resource VnfSnapshotPackageManagementKeywords.robot
*** Test Cases ***
POST VNF Snapshot Package Content - Method not implemented
[Documentation] Test ID: 7.3.8.4.1
... Test title: POST VNF Snapshot Package Content - Method not implemented
... Test objective: The objective is to test that POST method is not implemented
... Pre-conditions: none
... Reference: Clause 12.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
POST VNF Snapshot Package Content
Check HTTP Response Status Code Is 405
GET VNF Snapshot Package Content - Complete File
[Documentation] Test ID: 7.3.8.4.2
... Test title: GET Information about an individual VNF Snapshot Package - Complete File
... Test objective: The objective is to fetch the whole content of a VNF snapshot package using GET method.
... Pre-conditions: none
... Reference: Clause 12.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
GET VNF Snapshot Package Content - Complete
Check HTTP Response Status Code Is 200
Check HTTP Content-Type Header Is Set For Package Content
GET VNF Snapshot Package Content - Partial Content
[Documentation] Test ID: 7.3.8.4.3
... Test title: GET VNF Snapshot Package Content - Partial Content
... Test objective: The objective is to fetch partial content of a VNF snapshot package by sending a range request using GET method.
... Pre-conditions: none
... Reference: Clause 12.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: NFVO supports range requests
... Post-Conditions: none
GET VNF Snapshot Package Content - Range Request
Check HTTP Response Status Code Is 206
Check HTTP Content-Type Header Is Set For Package Content
Check HTTP Content-Range Header Is Set
GET VNF Snapshot Package Content - Range Request Not Supported
[Documentation] Test ID: 7.3.8.4.4
... Test title: GET Information about an individual VNF Snapshot Package - Range Request Not Supported
... Test objective: The objective is to test that the whole content of a VNF snapshot package is delivered even with a range request when NFVO does not support range requests.
... Pre-conditions: none
... Reference: Clause 12.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: NFVO does not support range requests
... Post-Conditions: none
GET VNF Snapshot Package Content - Range Request
Check HTTP Response Status Code Is 200
Check HTTP Content-Type Header Is Set For Package Content
GET VNF Snapshot Package Content - Range Not Satisfiable
[Documentation] Test ID: 7.3.8.4.5
... Test title: GET Information about an individual VNF Snapshot Package - Range Not Satisfiable
... Test objective: The objective is to test that an error is returned when the byte range passed in the "Range" header does not match any available byte range in the VNF snapshot package file.
... Pre-conditions: none
... Reference: Clause 12.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: NFVO supports range requests
... Post-Conditions: none
GET VNF Snapshot Package Content - Invalid Range
Check HTTP Response Status Code Is 416
GET VNF Snapshot Package Content - Conflict
[Documentation] Test ID: 7.3.8.4.6
... Test title: GET Information about an individual VNF Snapshot Package - Conflict
... Test objective: The objective is to test that an error is returned when the "state" of the VNF snapshot package has a value different from "AVAILABLE".
... Pre-conditions: none
... Reference: Clause 12.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: The "state" of the VNF snapshot package has a value different from "AVAILABLE".
... Post-Conditions: none
GET VNF Snapshot Package Content - Not Available
Check HTTP Response Status Code Is 409
PUT VNF Snapshot Package Content - Method not implemented
[Documentation] Test ID: 7.3.8.4.7
... Test title: PUT VNF Snapshot Package Content - Method not implemented
... Test objective: The objective is to test that PUT method is not implemented
... Pre-conditions: none
... Reference: Clause 12.4.4.3.3 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: VNF Snapshot Package not modified
PUT VNF Snapshot Package Content
Check HTTP Response Status Code Is 405
PATCH VNF Snapshot Package Content - Method Not implemented
[Documentation] Test ID: 7.3.8.4.8
... Test title: PATCH VNF Snapshot Package Content
... Test objective: The objective is to test that PATCH method is not implemented
... Pre-conditions: none
... Reference: Clause 12.4.4.3.4 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
PATCH VNF Snapshot Package Content
Check HTTP Response Status Code Is 405
DELETE VNF Snapshot Package Content - Method Not implemented
[Documentation] Test ID: 7.3.8.4.9
... Test title: DELETE VNF Snapshot Package Content - Method Not implemented
... Test objective: The objective is to test that DELETE method is not implemented
... Pre-conditions: none
... Reference: Clause 12.4.4.3.5 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
DELETE VNF Snapshot Package Content
Check HTTP Response Status Code Is 405
\ No newline at end of file
*** Settings ***
Resource VnfSnapshotPackageManagementKeywords.robot
*** Test Cases ***
POST VNF Snapshot Packages - Method not implemented
[Documentation] Test ID: 7.3.8.2.1
... Test title: POST VNF Snapshot Packages - Method not implemented
... Test objective: The objective is to test that POST method is not implemented
... Pre-conditions: none
... Reference: Clause 12.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
POST VNF Snapshot Packages
Check HTTP Response Status Code Is 405
GET information about multiple VNF Snapshot Packages
[Documentation] Test ID: 7.3.8.2.2
... Test title: GET information about multiple VNF Snapshot Packages
... Test objective: The objective is to get information about multiples VNF Snapshot Packages
... Pre-conditions: none
... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
GET multiple VNF Snapshot Packages
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is VnfSnapshotPkgInfos
GET information about multiple VNF Snapshot Packages Bad Request Invalid attribute-based filtering parameters
[Documentation] Test ID: 7.3.8.2.3
... Test title: GET information about multiple VNF Snapshot Packages Bad Request Invalid attribute-based filtering parameters
... Test objective: The objective is to get information about multiples VNF Snapshot Packages with Invalid attribute-based filtering parameters
... Pre-conditions: none
... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
GET multiple VNF Snapshot Packages with bad attribute
Check HTTP Response Status Code Is 400
Check HTTP Response Body Json Schema Is ProblemDetails
GET information about multiple VNF Snapshot Packages Bad Request Invalid attribute selector
[Documentation] Test ID: 7.3.8.2.4
... Test title: GET information about multiple VNF Snapshot Packages Bad Request Invalid attribute selector
... Test objective: The objective is to get information about multiples VNF Snapshot Packages with Invalid attribute-based filtering parameters
... Pre-conditions: none
... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
GET multiple VNF Snapshot Packages with bad filter
Check HTTP Response Status Code Is 400
Check HTTP Response Body Json Schema Is ProblemDetails
GET information about multiple VNF Snapshot Packages with "all_fields" attribute selector
[Documentation] Test ID: 7.3.8.2.5
... Test title: GET information about multiple VNF Snapshot Packages with "all_fields" attribute selector
... Test objective: The objective is to query information about multiple VNF Snapshot Packages
... Pre-conditions: none
... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
GET multiple VNF Snapshot Packages with all_fields attribute selector
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is VnfSnapshotPkgInfos
GET information about multiple VNF Snapshot Packages with "exclude_default" attribute selector
[Documentation] Test ID: 7.3.8.2.6
... Test title: GET information about multiple VNF Snapshot Packages with "exclude_default" attribute selector
... Test objective: The objective is to query information about multiple VNF Snapshot Packages
... Pre-conditions: none
... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
GET multiple VNF Snapshot Packages with exclude_default attribute selector
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is VnfSnapshotPkgInfos
GET information about multiple VNF Snapshot Packages with "fields" attribute selector
[Documentation] Test ID: 7.3.8.2.7
... Test title: GET information about multiple VNF Snapshot Packages with "fields" attribute selector
... Test objective: The objective is to query information about multiple VNF Snapshot Packages
... Pre-conditions: none
... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
GET multiple VNF Snapshot Packages with fields attribute selector
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is VnfSnapshotPkgInfos
GET information about multiple VNF Snapshot Packages with "exclude_default" and "fields" attribute selector
[Documentation] Test ID: 7.3.8.2.8
... Test title: GET information about multiple VNF Snapshot Packages with "exclude_default" and "fields" attribute selector
... Test objective: The objective is to query information about multiple VNF Snapshot Packages
... Pre-conditions: none
... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
GET multiple VNF Snapshot Packages with exclude_default and fields attribute selector
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is VnfSnapshotPkgInfos
GET information about multiple VNF Snapshot Packages with "exclude_fields" attribute selector
[Documentation] Test ID: 7.3.8.2.9
... Test title: GET information about multiple VNF Snapshot Packages with "exclude_fields" attribute selector
... Test objective: The objective is to query information about multiple VNF Snapshot Packages
... Pre-conditions: none
... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
GET multiple VNF Snapshot Packages with exclude_fields attribute selector
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is VnfSnapshotPkgInfos
GET VNF Snapshot Packages - Bad Request Response too Big
[Documentation] Test ID: 7.3.8.2.10
... Test title: GET VNF Snapshot Packages - Bad Request Response too Big
... Test objective: The objective is test that the retrieval of existing VNF Snapshot Packages list fails because response is too big, and perform the JSON schema validation of the failed operation HTTP response.
... Pre-conditions: none
... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: NFVO does not support paged response.
... Post-Conditions: none
GET VNF Snapshot Packages without Paging support
Check HTTP Response Status Code Is 400
Check HTTP Response Body Json Schema Is ProblemDetails
GET VNF Snapshot Packages as Paged Response
[Documentation] Test ID: 7.3.8.2.11
... Test title: GET VNF Snapshot Packages as Paged Response
... Test objective: The objective is to test that GET method retrieves the list of existing VNF Snapshot Packages as paged response.
... Pre-conditions: none
... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: NFVO supports paged response.
... Post-Conditions: none
GET VNF Snapshot Packages with Paging support
Check HTTP Response Status Code Is 200
Check HTTP Response Header Contains Link
PUT VNF Snapshot Packages - Method not implemented
[Documentation] Test ID: 7.3.8.2.12
... Test title: PUT VNF Snapshot Packages - Method not implemented
... Test objective: The objective is to test that PUT method is not implemented
... Pre-conditions: none
... Reference: Clause 12.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
PUT VNF Snapshot Packages
Check HTTP Response Status Code Is 405
PATCH VNF Snapshot Packages - Method not implemented
[Documentation] Test ID: 7.3.8.2.13
... Test title: PATCH VNF Snapshot Packages - Method not implemented
... Test objective: The objective is to test that PATCH method is not implemented
... Pre-conditions: none
... Reference: Clause 12.4.2.3.4 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
PATCH VNF Snapshot Packages
Check HTTP Response Status Code Is 405
DELETE VNF Snapshot Packages - Method not implemented
[Documentation] Test ID: 7.3.8.2.14
... Test title: DELETE VNF Snapshot Packages - Method not implemented
... Test objective: The objective is to test that DELETE method is not implemented
... Pre-conditions: none
... Reference: Clause 12.4.2.3.5 - ETSI GS NFV-SOL 003 [1] v3.3.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: VNF snapshot package is not deleted
DELETE VNF Snapshot Packages
Check HTTP Response Status Code Is 405
*** Variables ***
${NFVO_HOST} localhost # Hostname of the NFVO
${NFVO_PORT} 8081 # Listening port of the NFVO
${NFVO_SCHEMA} https
${AUTHORIZATION_HEADER} Authorization
${AUTHORIZATION_TOKEN} Bearer 0b79bab50daca910b000d4f1a2b675d604257e42
${ACCEPT_JSON} application/json
${AUTH_USAGE} 1
${CONTENT_TYPE_JSON} application/json
${NEG_AUTHORIZATION} Bearer negativetoken
${NFVO_FIELDS} 1
${vnfPackageId} 788106a2-d692-44f3-a86d-384f0ce35e42
${vndId} 788106a2-d692-44f3-a86d-384f0ce35e42
${onboardingStateVnfPkgId} f9f130e4-05eb-4082-a676-4c97d13a883d
${onboardingStateVnfdId} f9f130e4-05eb-4082-a676-4c97d13a883d
${apiRoot} /
${apiMajorVersion} v1
${apiName} vnfsnapshotpkgm
${NFVO_CHECKS_NOTIF_ENDPOINT} 1 ## If true, during subscription, the FUT performs a get to the notification endpoint
${NFVO_ALLOWS_DUPLICATE_SUBS} 1
${PAGING_SUPPORTED} 1
${response} httpresponse
${MOCK_SERVER_JAR} ../../../bin/mockserver-netty-5.5.0-jar-with-dependencies.jar
${callback_uri} http://localhost
${callback_port} 9091
${callback_endpoint} /endpoint
${callback_endpoint_fwd} /endpoint/check
${callback_endpoint_error} /endpoint_404
${sleep_interval} 20s
${total_polling_time} 2 min
${polling_interval} 10 sec
${notification_request} []
${notification_response} []
${NFVO_non-MANO_OK} 1 # If 1 means that non-MANO artifacts are supported by the NFVO
${non_mano_artifact_sets}
${subscriptionId} f3ae6df7-07e1-47c9-8924-9ebe10343586
${erroneousSubscriptionId} 442e3ee5-0499-4849-9b31-eb91ce1638f1 # Not existing ID on the subscriptions
${newSubscriptionId} newSubsciptionId
${origResponse} httpresponse
${erroneousVnfPackageId} erroneousVnfPackageId # Given ID for vnfPkg not present in database
${erroneousVnfdId} erroneousVnfdId
${filter_ok} callbackUri=http://172.22.1.7:9091/vnfpkgm/subscriptions
${filter_ko} nfvId=f9f130e4-05eb-4082-a676-4c97d13a883d # Not existant filter attribute-based
${SEPERATOR} =
${ACCEPT_PLAIN} text/plain
${CONTENT_TYPE_PLAIN} text/plain
${vnfPkgPlainVNFD} c26ad7fb-072b-48c4-a663-7d71646d9e98 # The VNF Pakcage contains a VNFD which is a Single Plain File
${ACCEPT_ZIP} application/zip
${ACCEPT_OCTET} application/octet-stream
${CONTENT_TYPE_ZIP} application/zip
${vnfPkgZipVNFD} f5b220d4-6177-4ebb-a554-a43311e16075 # The VNF Package contains a VNFD composed by multiple files
${erroneousVnfPkgId} erroneousVnfPackageId # Given ID for vnfPkg not present in database
${vndIdZipVnfd} f5b220d4-6177-4ebb-a554-a43311e16075
${artifactPath} artifactPath
${CONTENT_TYPE_OCTET} application/octet-stream
${NFVO_RANGE_OK} 1 # If 1 means that Range is supported by the NFVO
${range} bytes=0-1023
${full_size} 2000 # Size of the requested artifact to be downloaded via partial downloads
${erroneousRange} bytes=10000000-1000000000 # Requesting a out of range number of bytes
${vnfPackageOctetStreamId} octetStreamPkgId
${vnfdOctetStreamId} octetStreamVnfdId
${vndEncryptedArtifactID} encryptedId
${length} 1024
${POS_FILTER} vnfdId=41fdd38a-3d4c-465c-83e0-f80e014425f8 ,vnfProvider=NXW # Positive case, suing compiant fields name for filtering get request
${NEG_FILTER} nfvId=41fdd38a-3d4c-465c-83e0-f80e014425f8 # Negative case, using wrong name of field
${fields} softwareImages,additionalArtifacts
${VAR_SEPERATOR} &
${callbackResp} localhost
${vnfSnapshotPkgId}
${invalidVnfSnapshotInfoId}
${vnfSnapshotPkgId_notInAvailableState}
\ No newline at end of file
{
"description": "This type represents the information of a VNF snapshot package.\n",
"type": "object",
"required": [
"id",
"name",
"isFullSnapshot",
"state",
"isCancelPending",
"_links"
],
"properties": {
"id": {
"description": "An identifier with the intention of being globally unique.\n",
"type": "string"
},
"vnfSnapshotPkgUniqueId": {
"description": "An identifier with the intention of being globally unique.\n",
"type": "string"
},
"name": {
"description": "A string defined in IETF RFC 8259.\n",
"type": "string"
},
"checksum": {
"description": "Cheksum description\n",
"type": "string"
},
"createdAt": {
"description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n",
"type": "string",
"format": "date-time"
},
"vnfSnapshotId": {
"description": "An identifier with the intention of being globally unique.\n",
"type": "string"
},
"vnfcSnapshotInfoIds": {
"description": "Identifiers of information held by the VNFM about specific VNFC snapshots part of the VNF snapshot and contained in the VNF snapshot package. This identifier is allocated by the VNFM during the VNF snapshot creation.\nNOTE: The attribute shall not be present before the VNF snapshot package content has been uploaded or built. Otherwise, this attribute shall be present unless it has been requested to be excluded per attribute selector.\n",
"type": "object",
"items": {
"description": "An identifier that is unique within a limited local scope other than above listed identifiers, such as within a complex data structure or within a request-response pair. Representation: string of variable length.\n",
"type": "string"
}
},
"isFullSnapshot": {
"description": "The Boolean is a data type having two values (true and false).\n",
"type": "boolean"
},
"vnfdInfo": {
"description": "This type represents the VNFD which is contained in a VNF snapshot package.\n",
"type": "object",
"required": [
"avnfdId",
"vnfdPath",
"checksum",
"isEncrypted"
],
"properties": {
"avnfdId": {
"description": "An identifier with the intention of being globally unique.\n",
"type": "string"
},
"vnfdPath": {
"description": "A string defined in IETF RFC 8259.\n",
"type": "string"
},
"checksum": {
"description": "Cheksum description\n",
"type": "string"
},
"isEncrypted": {
"description": "The Boolean is a data type having two values (true and false).\n",
"type": "boolean"
}
}
},
"vnfsr": {
"description": "This type represents the VNF snapshot record which is contained in a VNF snapshot package.\n",
"type": "object",
"required": [
"recordPath",
"checksum",
"isEncrypted"
],
"properties": {
"recordPath": {
"description": "A string defined in IETF RFC 8259.\n",
"type": "string"
},
"checksum": {
"description": "Cheksum description\n",
"type": "string"
},
"isEncrypted": {
"description": "The Boolean is a data type having two values (true and false).\n",
"type": "boolean"
}
}
},
"vnfcSnapshotImages": {
"description": "Information about VNF snapshot artifacts that are VNFC snapshot images. Every local and external snapshot image shall be included. No other artifacts shall be included.\nNOTE: The attribute shall not be present before the VNF snapshot package content has been uploaded or built. Otherwise, this attribute shall be present unless it has been requested to be excluded per attribute selector.\n",
"type": "object",
"items": {
"description": "This type represents an artifact contained in a VNF snapshot package which represents a snapshot image.\n",
"type": "object",
"required": [
"id",
"name",
"checksum",
"isEncrypted",
"vnfcInstanceId",
"containerFormat",
"diskFormat",
"createdAt",
"minDisk",
"minRam",
"size"
],
"properties": {
"id": {
"description": "An identifier that is unique within a limited local scope other than above listed identifiers, such as within a complex data structure or within a request-response pair. Representation: string of variable length.\n",
"type": "string"
},
"name": {
"description": "A string defined in IETF RFC 8259.\n",
"type": "string"
},
"checksum": {
"description": "Cheksum description\n",
"type": "string"
},
"isEncrypted": {
"description": "The Boolean is a data type having two values (true and false).\n",
"type": "boolean"
},
"vnfcInstanceId": {
"description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n",
"type": "string"
},
"containerFormat": {
"description": "Container format indicates whether the snapshot image is in a file format that also contains metadata about the actual snapshot.\nPermitted values: - AKI: a kernel image format - AMI: a machine image format - ARI: a ramdisk image format - BARE: the image does not have a container or metadata envelope - DOCKER: docker container format - OVA: OVF package in a tarfile - OVF: OVF container format\nNOTE: The list of permitted values was taken from \"Container formats\" in [i.5] (OpenStack® documentation: \"Disk and container formats for images\").\n",
"type": "string",
"enum": [
"AKI",
"AMI",
"ARI",
"BARE",
"DOCKER",
"OVA",
"OVF"
]
},
"diskFormat": {
"description": "Disk format of a snapshot image is the format of the underlying disk image.\nPermitted values: - AKI: a kernel image format - AMI: a machine image format - ARI: a ramdisk image format - ISO: an archive format for the data contents of an optical disc, such as CD-ROM - QCOW2: a common disk image format, which can expand dynamically and supports copy on write - RAW: an unstructured disk image format - VDI: a common disk image format - VHD: a common disk image format - VHDX: enhanced version of VHD format - VMDK: a common disk image format\nNOTE: The list of permitted values was adapted from \"Disk formats\" in [i.5] (OpenStack® documentation: \"Disk and container formats for images\").\n",
"type": "string",
"enum": [
"AKI",
"AMI",
"ARI",
"ISO",
"QCOW2",
"RAW",
"VDI",
"VHD",
"VHDX",
"VMDK"
]
},
"createdAt": {
"description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n",
"type": "string",
"format": "date-time"
},
"minDisk": {
"description": "Unsigned integer number\n",
"type": "integer",
"minimum": 0
},
"minRam": {
"description": "Unsigned integer number\n",
"type": "integer",
"minimum": 0
},
"size": {
"description": "Unsigned integer number\n",
"type": "integer",
"minimum": 0
},
"userMetadata": {
"description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n",
"type": "object"
},
"imagePath": {
"description": "A string defined in IETF RFC 8259.\n",
"type": "string"
},
"imageUri": {
"description": "String formatted according to IETF RFC 3986.\n",
"type": "string"
}
}
}
},
"additionalArtifacts": {
"description": "Information about VNF snapshot artifacts that are not VNFC snapshot images.\nNOTE: The attribute shall not be present before the VNF snapshot package content has been uploaded or built. Otherwise, this attribute shall be present unless it has been requested to be excluded per attribute selector.\n",
"type": "object",
"items": {
"description": "This type represents an artifact other than a software image which is contained in a VNF snapshot package.\n",
"type": "object",
"required": [
"checksum",
"isEncrypted"
],
"properties": {
"artifactPath": {
"description": "A string defined in IETF RFC 8259.\n",
"type": "string"
},
"artifactUri": {
"description": "String formatted according to IETF RFC 3986.\n",
"type": "string"
},
"checksum": {
"description": "Cheksum description\n",
"type": "string"
},
"isEncrypted": {
"description": "The Boolean is a data type having two values (true and false).\n",
"type": "boolean"
},
"metadata": {
"description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n",
"type": "object"
}
}
}
},
"state": {
"description": "State of the VNF snapshot package. Permitted values: - CREATED: the VNF snapshot package information has been created. - BUILDING: the VNF snapshot package is being built. - UPLOADING: the VNF snapshot package is being uploaded. - EXTRACTING: the VNF snapshot package’s content is being extracted. - AVAILABLE: the VNF snapshot package is available (i.e., build or upload is completed). - ERROR: failure during the VNF snapshot package building, uploading or processing. - ERROR_EXTRACTING: failure during the VNF snapshot package extraction task.\n",
"type": "string",
"enum": [
"CREATED",
"BUILDING",
"UPLOADING",
"EXTRACTING",
"AVAILABLE",
"ERROR",
"ERROR_EXTRACTING"
]
},
"isCancelPending": {
"description": "The Boolean is a data type having two values (true and false).\n",
"type": "boolean"
},
"failureDetails": {
"description": "Failure details associated to current error state of the VNF snapshot package state. If \"state\" is \"ERROR\" or \"ERROR_EXTRACTING\", this attribute shall be present unless it has been requested to be excluded via an attribute selector.\n",
"type": "object",
"required": [
"errorType",
"details"
],
"properties": {
"errorType": {
"description": "Type of error, when the failure happened (building, upload, processing, extracting).\nPermitted values: - BUILD_ERROR - UPLOAD_ERROR - PROCESS_ERROR - CANCELLED - EXTRACTION_ERROR\n",
"type": "string",
"enum": [
"BUILD_ERROR",
"UPLOAD_ERROR",
"PROCESS_ERROR",
"CANCELLED",
"EXTRACTION_ERROR"
]
},
"details": {
"description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n",
"type": "object",
"required": [
"status",
"detail"
],
"properties": {
"type": {
"description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n",
"type": "string",
"format": "URI"
},
"title": {
"description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n",
"type": "string"
},
"status": {
"description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n",
"type": "integer"
},
"detail": {
"description": "A human-readable explanation specific to this occurrence of the problem.\n",
"type": "string"
},
"instance": {
"description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n",
"type": "string",
"format": "URI"
}
}
}
}
},
"userDefinedData": {
"description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n",
"type": "object"
},
"_links": {
"description": "Links to resources related to this resource.\n",
"type": "object",
"required": [
"self",
"packageContent"
],
"properties": {
"self": {
"description": "This type represents a link to a resource using an absolute URI.\n",
"type": "object",
"required": [
"href"
],
"properties": {
"href": {
"description": "String formatted according to IETF RFC 3986.\n",
"type": "string"
}
}
},
"packageContent": {
"description": "This type represents a link to a resource using an absolute URI.\n",
"type": "object",
"required": [
"href"
],
"properties": {
"href": {
"description": "String formatted according to IETF RFC 3986.\n",
"type": "string"
}
}
}
}
}
}
}
\ No newline at end of file
{
"type": "array",
"items":
{
"description": "This type represents the information of a VNF snapshot package.\n",
"type": "object",
"required": [
"id",
"name",
"isFullSnapshot",
"state",
"isCancelPending",
"_links"
],
"properties": {
"id": {
"description": "An identifier with the intention of being globally unique.\n",
"type": "string"
},
"vnfSnapshotPkgUniqueId": {
"description": "An identifier with the intention of being globally unique.\n",
"type": "string"
},
"name": {
"description": "A string defined in IETF RFC 8259.\n",
"type": "string"
},
"checksum": {
"description": "Cheksum description\n",
"type": "string"
},
"createdAt": {
"description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n",
"type": "string",
"format": "date-time"
},
"vnfSnapshotId": {
"description": "An identifier with the intention of being globally unique.\n",
"type": "string"
},
"vnfcSnapshotInfoIds": {
"description": "Identifiers of information held by the VNFM about specific VNFC snapshots part of the VNF snapshot and contained in the VNF snapshot package. This identifier is allocated by the VNFM during the VNF snapshot creation.\nNOTE: The attribute shall not be present before the VNF snapshot package content has been uploaded or built. Otherwise, this attribute shall be present unless it has been requested to be excluded per attribute selector.\n",
"type": "object",
"items": {
"description": "An identifier that is unique within a limited local scope other than above listed identifiers, such as within a complex data structure or within a request-response pair. Representation: string of variable length.\n",
"type": "string"
}
},
"isFullSnapshot": {
"description": "The Boolean is a data type having two values (true and false).\n",
"type": "boolean"
},
"vnfdInfo": {
"description": "This type represents the VNFD which is contained in a VNF snapshot package.\n",
"type": "object",
"required": [
"avnfdId",
"vnfdPath",
"checksum",
"isEncrypted"
],
"properties": {
"avnfdId": {
"description": "An identifier with the intention of being globally unique.\n",
"type": "string"
},
"vnfdPath": {
"description": "A string defined in IETF RFC 8259.\n",
"type": "string"
},
"checksum": {
"description": "Cheksum description\n",
"type": "string"
},
"isEncrypted": {
"description": "The Boolean is a data type having two values (true and false).\n",
"type": "boolean"
}
}
},
"vnfsr": {
"description": "This type represents the VNF snapshot record which is contained in a VNF snapshot package.\n",
"type": "object",
"required": [
"recordPath",
"checksum",
"isEncrypted"
],
"properties": {
"recordPath": {
"description": "A string defined in IETF RFC 8259.\n",
"type": "string"
},
"checksum": {
"description": "Cheksum description\n",
"type": "string"
},
"isEncrypted": {
"description": "The Boolean is a data type having two values (true and false).\n",
"type": "boolean"
}
}
},
"vnfcSnapshotImages": {
"description": "Information about VNF snapshot artifacts that are VNFC snapshot images. Every local and external snapshot image shall be included. No other artifacts shall be included.\nNOTE: The attribute shall not be present before the VNF snapshot package content has been uploaded or built. Otherwise, this attribute shall be present unless it has been requested to be excluded per attribute selector.\n",
"type": "object",
"items": {
"description": "This type represents an artifact contained in a VNF snapshot package which represents a snapshot image.\n",
"type": "object",
"required": [
"id",
"name",
"checksum",
"isEncrypted",
"vnfcInstanceId",
"containerFormat",
"diskFormat",
"createdAt",
"minDisk",
"minRam",
"size"
],
"properties": {
"id": {
"description": "An identifier that is unique within a limited local scope other than above listed identifiers, such as within a complex data structure or within a request-response pair. Representation: string of variable length.\n",
"type": "string"
},
"name": {
"description": "A string defined in IETF RFC 8259.\n",
"type": "string"
},
"checksum": {
"description": "Cheksum description\n",
"type": "string"
},
"isEncrypted": {
"description": "The Boolean is a data type having two values (true and false).\n",
"type": "boolean"
},
"vnfcInstanceId": {
"description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n",
"type": "string"
},
"containerFormat": {
"description": "Container format indicates whether the snapshot image is in a file format that also contains metadata about the actual snapshot.\nPermitted values: - AKI: a kernel image format - AMI: a machine image format - ARI: a ramdisk image format - BARE: the image does not have a container or metadata envelope - DOCKER: docker container format - OVA: OVF package in a tarfile - OVF: OVF container format\nNOTE: The list of permitted values was taken from \"Container formats\" in [i.5] (OpenStack® documentation: \"Disk and container formats for images\").\n",
"type": "string",
"enum": [
"AKI",
"AMI",
"ARI",
"BARE",
"DOCKER",
"OVA",
"OVF"
]
},
"diskFormat": {
"description": "Disk format of a snapshot image is the format of the underlying disk image.\nPermitted values: - AKI: a kernel image format - AMI: a machine image format - ARI: a ramdisk image format - ISO: an archive format for the data contents of an optical disc, such as CD-ROM - QCOW2: a common disk image format, which can expand dynamically and supports copy on write - RAW: an unstructured disk image format - VDI: a common disk image format - VHD: a common disk image format - VHDX: enhanced version of VHD format - VMDK: a common disk image format\nNOTE: The list of permitted values was adapted from \"Disk formats\" in [i.5] (OpenStack® documentation: \"Disk and container formats for images\").\n",
"type": "string",
"enum": [
"AKI",
"AMI",
"ARI",
"ISO",
"QCOW2",
"RAW",
"VDI",
"VHD",
"VHDX",
"VMDK"
]
},
"createdAt": {
"description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n",
"type": "string",
"format": "date-time"
},
"minDisk": {
"description": "Unsigned integer number\n",
"type": "integer",
"minimum": 0
},
"minRam": {
"description": "Unsigned integer number\n",
"type": "integer",
"minimum": 0
},
"size": {
"description": "Unsigned integer number\n",
"type": "integer",
"minimum": 0
},
"userMetadata": {
"description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n",
"type": "object"
},
"imagePath": {
"description": "A string defined in IETF RFC 8259.\n",
"type": "string"
},
"imageUri": {
"description": "String formatted according to IETF RFC 3986.\n",
"type": "string"
}
}
}
},
"additionalArtifacts": {
"description": "Information about VNF snapshot artifacts that are not VNFC snapshot images.\nNOTE: The attribute shall not be present before the VNF snapshot package content has been uploaded or built. Otherwise, this attribute shall be present unless it has been requested to be excluded per attribute selector.\n",
"type": "object",
"items": {
"description": "This type represents an artifact other than a software image which is contained in a VNF snapshot package.\n",
"type": "object",
"required": [
"checksum",
"isEncrypted"
],
"properties": {
"artifactPath": {
"description": "A string defined in IETF RFC 8259.\n",
"type": "string"
},
"artifactUri": {
"description": "String formatted according to IETF RFC 3986.\n",
"type": "string"
},
"checksum": {
"description": "Cheksum description\n",
"type": "string"
},
"isEncrypted": {
"description": "The Boolean is a data type having two values (true and false).\n",
"type": "boolean"
},
"metadata": {
"description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n",
"type": "object"
}
}
}
},
"state": {
"description": "State of the VNF snapshot package. Permitted values: - CREATED: the VNF snapshot package information has been created. - BUILDING: the VNF snapshot package is being built. - UPLOADING: the VNF snapshot package is being uploaded. - EXTRACTING: the VNF snapshot package’s content is being extracted. - AVAILABLE: the VNF snapshot package is available (i.e., build or upload is completed). - ERROR: failure during the VNF snapshot package building, uploading or processing. - ERROR_EXTRACTING: failure during the VNF snapshot package extraction task.\n",
"type": "string",
"enum": [
"CREATED",
"BUILDING",
"UPLOADING",
"EXTRACTING",
"AVAILABLE",
"ERROR",
"ERROR_EXTRACTING"
]
},
"isCancelPending": {
"description": "The Boolean is a data type having two values (true and false).\n",
"type": "boolean"
},
"failureDetails": {
"description": "Failure details associated to current error state of the VNF snapshot package state. If \"state\" is \"ERROR\" or \"ERROR_EXTRACTING\", this attribute shall be present unless it has been requested to be excluded via an attribute selector.\n",
"type": "object",
"required": [
"errorType",
"details"
],
"properties": {
"errorType": {
"description": "Type of error, when the failure happened (building, upload, processing, extracting).\nPermitted values: - BUILD_ERROR - UPLOAD_ERROR - PROCESS_ERROR - CANCELLED - EXTRACTION_ERROR\n",
"type": "string",
"enum": [
"BUILD_ERROR",
"UPLOAD_ERROR",
"PROCESS_ERROR",
"CANCELLED",
"EXTRACTION_ERROR"
]
},
"details": {
"description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n",
"type": "object",
"required": [
"status",
"detail"
],
"properties": {
"type": {
"description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n",
"type": "string",
"format": "URI"
},
"title": {
"description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n",
"type": "string"
},
"status": {
"description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n",
"type": "integer"
},
"detail": {
"description": "A human-readable explanation specific to this occurrence of the problem.\n",
"type": "string"
},
"instance": {
"description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n",
"type": "string",
"format": "URI"
}
}
}
}
},
"userDefinedData": {
"description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n",
"type": "object"
},
"_links": {
"description": "Links to resources related to this resource.\n",
"type": "object",
"required": [
"self",
"packageContent"
],
"properties": {
"self": {
"description": "This type represents a link to a resource using an absolute URI.\n",
"type": "object",
"required": [
"href"
],
"properties": {
"href": {
"description": "String formatted according to IETF RFC 3986.\n",
"type": "string"
}
}
},
"packageContent": {
"description": "This type represents a link to a resource using an absolute URI.\n",
"type": "object",
"required": [
"href"
],
"properties": {
"href": {
"description": "String formatted according to IETF RFC 3986.\n",
"type": "string"
}
}
}
}
}
}
}
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment