Commit 26c44a2a authored by Samir Medjiah's avatar Samir Medjiah

SOL00: modifications according to v304

parent a8b35943
Pipeline #4561 failed with stage
in 0 seconds
......@@ -412,16 +412,22 @@ paths:
• If the "Accept" header contains both "text/plain" and "application/zip", it is up
to the NFVO to choose the format to return for a single-file NSD; for a multi-file NSD,
a ZIP file shall be returned.
The default format of the ZIP file shall be the one specified in ETSI GS NFV-SOL 007
The default format of the ZIP file shall comply with the CSAR format as specified in ETSI GS NFV-SOL 007
where only the YAML files representing the NSD, and information necessary to navigate
the ZIP file and to identify the file that is the entry point for parsing the NSD and
(if requested) further security information are included. This means that the content
(if requested) further security information are included and other artifacts referenced from the YAML files are excluded. This means that the content
of the ZIP archive shall contain the following files from the NSD archive:
• TOSCA.meta (if available in the NSD archive);
the main service template (either as referenced from TOSCA.meta or available as a
The main TOSCA definitions YAML file (either as referenced by the Entry-Definitions keyword from TOSCA.meta or available as a
file with the extension ".yml" or ".yaml" from the root of the archive);
• every component of the NSD referenced (recursively) from the main service template;
• the related security information, if the "include_signatures" URI parameter is provided, as follows:
• Other TOSCA YAML files, if any, as referenced by the Other-Definitions keyword from TOSCA.meta;
• Every component of the NSD referenced (recursively) from the theYAML files as mentioned above;
NOTE 1: For a NSD based on TOSCA, it includes all the imported type definition files as indicated
in the top level the main service template and in any of the lower level service template if it
has any as described in ETSI GS NFV-SOL 001.
NOTE 2: For a NSD based on YANG, it includes the file as indicated by the "yang_definitions"
keyname in the metadata section of the main yaml file as described in ETSI GS NFV-SOL 007.
• The related security information, if the "include_signatures" URI parameter is provided, as follows:
- the manifest file;
- the singleton certificate file in the root of the NSD archive (if available in the NSD archive);
- the signing certificates of the individual files included in the ZIP archive
......
......@@ -22,7 +22,7 @@ definitions:
description: >
Modifications of the userDefinedData attribute in NsdInfo
data type. See note. If present, these modifications shall be applied
according to the rules of JSON Merge PATCH (see IETF RFC 7396 [25]).
according to the rules of JSON Merge Patch (see IETF RFC 7396).
NOTE- At least one of the attributes - nsdOperationalState and userDefinedData - shall be present.
type: array
items:
......@@ -273,7 +273,7 @@ definitions:
userDefinedData:
description: >
User defined data for the individual PNF descriptor resource.
This attribute can be modified with the PATCH method.
This attribute can be modified with the Patch method.
$ref: "../../definitions/SOL005_def.yaml#/definitions/KeyValuePairs"
_links:
required:
......
......@@ -70,6 +70,8 @@ paths:
$ref: "../responses/SOL005_resp.yaml#/components/responses/405"
406:
$ref: "../responses/SOL005_resp.yaml#/components/responses/406"
422:
$ref: "../responses/SOL005_resp.yaml#/components/responses/422"
500:
$ref: "../responses/SOL005_resp.yaml#/components/responses/500"
503:
......@@ -170,6 +172,8 @@ paths:
$ref: "../responses/SOL005_resp.yaml#/components/responses/406"
412:
$ref: "../responses/SOL005_resp.yaml#/components/responses/412"
422:
$ref: "../responses/SOL005_resp.yaml#/components/responses/422"
500:
$ref: "../responses/SOL005_resp.yaml#/components/responses/500"
503:
......@@ -284,6 +288,8 @@ paths:
$ref: "../responses/SOL005_resp.yaml#/components/responses/405"
406:
$ref: "../responses/SOL005_resp.yaml#/components/responses/406"
422:
$ref: "../responses/SOL005_resp.yaml#/components/responses/422"
500:
$ref: "../responses/SOL005_resp.yaml#/components/responses/500"
503:
......@@ -384,6 +390,8 @@ paths:
$ref: "../responses/SOL005_resp.yaml#/components/responses/406"
412:
$ref: "../responses/SOL005_resp.yaml#/components/responses/412"
422:
$ref: "../responses/SOL005_resp.yaml#/components/responses/422"
500:
$ref: "../responses/SOL005_resp.yaml#/components/responses/500"
503:
......
......@@ -435,7 +435,7 @@ definitions:
description: >
New value of the "authentication" attribute, or "null" to remove the attribute.
If present in a request body, these modifications shall be applied according to
the rules of JSON Merge PATCH (see IETF RFC 7396).
the rules of JSON Merge Patch (see IETF RFC 7396).
This attribute shall not be present in response bodies.
At least one of the attributes defined in this type shall be present in request bodies.
$ref: "../../definitions/SOL005_def.yaml#/definitions/SubscriptionAuthentication"
......@@ -460,7 +460,7 @@ definitions:
description: >
New value of the "authentication" attribute, or "null" to remove the attribute.
If present in a request body, these modifications shall be applied according to
the rules of JSON Merge PATCH (see IETF RFC 7396).
the rules of JSON Merge Patch (see IETF RFC 7396).
This attribute shall not be present in response bodies.
At least one of the attributes defined in this type shall be present in request bodies.
$ref: "../../definitions/SOL005_def.yaml#/definitions/SubscriptionAuthentication"
......@@ -520,7 +520,7 @@ definitions:
description: >
Group of performance metrics.
A metric group is a pre-defined list of metrics,
known to the producer that it can decompose to
known to the API producer that it can decompose to
individual metrics. Valid values are specified as
"Measurement Group" values in clause 7.3 of ETSI
GS NFV-IFA 027. At least one of the two attributes
......@@ -530,29 +530,35 @@ definitions:
$ref: "../../definitions/SOL005_def.yaml#/definitions/String"
collectionPeriod:
description: >
Specifies the periodicity at which the producer
Specifies the periodicity at which the API producer
will collect performance information. The unit
shall be seconds.
At the end of each reportingPeriod, the producer will inform the consumer about availability of the performance
data collected for each completed collection period during this reportingPeriod. The reportingPeriod should be
equal to or a multiple of the collectionPeriod. In the latter case, the performance data for the collection periods
At the end of each reportingPeriod, the API producer will inform
the API consumer about availability of the performance data collected
for each completed collection period during this reportingPeriod.
The reportingPeriod should be equal to or a multiple of the collectionPeriod.
In the latter case, the performance data for the collection periods
within one reporting period are reported together.
In particular when choosing short collection and reporting periods, the number of PM jobs that can be
supported depends on the capability of the producing entity.
In particular when choosing short collection and reporting periods,
the number of PM jobs that can be supported depends on the capability
of the producing entity.
type: integer
minimum: 0
default: 0
reportingPeriod:
description: >
Specifies the periodicity at which the producer
will report to the consumer.
Specifies the periodicity at which the API producer
will report to the API consumer.
about performance information. The unit shall be seconds.
At the end of each reportingPeriod, the producer will inform the consumer about availability of the performance
data collected for each completed collection period during this reportingPeriod. The reportingPeriod should be
equal to or a multiple of the collectionPeriod. In the latter case, the performance data for the collection periods
At the end of each reportingPeriod, the API producer will inform the
API consumer about availability of the performance data collected for
each completed collection period during this reportingPeriod.
The reportingPeriod should be equal to or a multiple of the collectionPeriod.
In the latter case, the performance data for the collection periods
within one reporting period are reported together.
In particular when choosing short collection and reporting periods, the number of PM jobs that can be
supported depends on the capability of the producing entity.
In particular when choosing short collection and reporting periods,
the number of PM jobs that can be supported depends on the capability
of the producing entity.
type: integer
minimum: 0
default: 0
......
......@@ -14,6 +14,7 @@ definitions:
- id
- notificationType
- timeStamp
- pmJobId
- objectType
- objectInstanceId
- _links
......@@ -36,6 +37,10 @@ definitions:
description: >
Date and time of the generation of the notification.
$ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime"
pmJobId:
description: >
Identifier of the PM job for which performance information is available.
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
objectType:
description: >
Type of the measured object.
......
......@@ -239,6 +239,9 @@ paths:
get:
description: |
The GET method fetches the content of a VNF snapshot package.
The content of the package is provided as onboarded to the NFVO,
or as built by the NFVO.
parameters:
- $ref: ../../components/SOL005_params.yaml#/components/parameters/Accept
- $ref: ../../components/SOL005_params.yaml#/components/parameters/Range
......@@ -281,7 +284,8 @@ paths:
The payload body contains a ZIP file that represents the VNF snapshot package.
The "Content-Type" HTTP header shall be set according to the type of the file, i.e.
to "application/zip" for a VNF snapshot package as defined in ETSI GS NFV-SOL 010.
to "application/zip" for a VNF snapshot package. The VNF snapshot package format
is defined in ETSI GS NFV-SOL 010.
parameters:
- $ref: ../../components/SOL005_params.yaml#/components/parameters/ContentType
responses:
......@@ -392,8 +396,10 @@ paths:
In addition, the NFVO shall update the "state" attribute of the "VnfSnapshotPkgInfo"
during the build process as specified in clause 11.6.
The NFVO shall build the VNF snapshot package according to the format and provisions
of ETSI GS NFV-SOL 010.
The NFVO shall build the VNF snapshot Package.
NOTE: The format and provisions for building a VNF snapshot package are specified in
ETSI GS NFV-SOL 010.
parameters:
- $ref: ../../components/SOL005_params.yaml#/components/parameters/ContentType
requestBody:
......@@ -632,11 +638,15 @@ paths:
description: |
The GET method fetches the content of an artifact within the VNF snapshot package.
If the VNF snapshot package is on-boarded as a result of a building process (refer to
If the VNF snapshot package is a result of a building process (refer to
"Build VNF snapshot package content task" resource in clause 11.4.6), and the referred
"Individual VNF snapshot package artifact" is external to the main VNF snapshot package
file, the NFVO shall return a "303 See Other" response code referencing the external
artifact resource.
"Individual VNF snapshot package artifact" is external to the main VNF snapshot package
file, the NFVO shall return a "302 Found" response code referencing the external artifact
resource. To fetch the "Individual VNF snapshot package artifact" from URI indicated by
the "Location" header, the OSS/BSS will have to be authorized to access the resource referred
by the new URI. Furthermore, as indicated by the "302 Found" response code, the OSS/BSS will
have to use the original URI of the present "Individual VNF snapshot package artifact" resource
in future requests.
parameters:
- $ref: ../../components/SOL005_params.yaml#/components/parameters/Accept
- $ref: ../../components/SOL005_params.yaml#/components/parameters/Range
......@@ -645,8 +655,8 @@ paths:
$ref: '#/components/responses/IndividualArtifact.Get.200'
206:
$ref: '#/components/responses/IndividualArtifact.Get.206'
303:
$ref: '#/components/responses/IndividualArtifact.Get.303'
302:
$ref: '#/components/responses/IndividualArtifact.Get.302'
400:
$ref: ../../responses/SOL005_resp.yaml#/components/responses/400
401:
......@@ -700,7 +710,7 @@ components:
EXAMPLE: foo/bar/m%40ster.sh
For an external artefact represented as a URI in the VNF snapshot package manifest, this variable shall
For an external artifact represented as a URI in the VNF snapshot package manifest, this variable shall
contain a sequence of one or more path segments as synthesized by the NFVO (see clause 11.5.3.3) representing
this artifact.
......@@ -977,7 +987,8 @@ components:
The response body shall include a copy of the VNF snapshot package file.
The "Content-Type" HTTP header shall be set according to the type of the file, i.e. to
"application/zip" for a VNF snapshot package as defined in ETSI GS NFV-SOL 010.
"application/zip" for a VNF snapshot package. The VNF snapshot package format is defined
in ETSI GS NFV-SOL 010.
headers:
Version:
description: The used API version.
......@@ -1261,8 +1272,8 @@ components:
Shall be returned when the whole content of the artifact file has been read successfully.
The response body shall include a copy of the artifact file from the VNF snapshot package, as defined by
ETSI GS NFV-SOL 010 .
The response body shall include a copy of the artifact file from the VNF snapshot package.
The VNF snapshot package format is defined in ETSI GS NFV-SOL 010.
The "Content-Type" HTTP header shall be set according to the content type of the artifact file. If the
content type cannot be determined, the header shall be set to the value "application/octet-stream".
......@@ -1300,8 +1311,10 @@ components:
If the NFVO supports range requests, this response shall be returned when a single consecutive byte
range from the content of the artifact file has been read successfully according to the request.
The response body shall contain the requested part of the artifact file from the VNF snapshot package,
as defined by ETSI GS NFV-SOL 010. The "Content-Type" HTTP header shall be set according to the content
The response body shall contain the requested part of the artifact file from the VNF snapshot package.
The VNF snapshot package format is defined in ETSI GS NFV-SOL 010.
The "Content-Type" HTTP header shall be set according to the content
type of the artifact file. If the content type cannot be determined, the header shall be set to the
value "application/octet-stream".
......@@ -1339,9 +1352,9 @@ components:
type: string
format: binary
IndividualArtifact.Get.303:
IndividualArtifact.Get.302:
description: |
303 PARTIAL CONTENT
302 FOUND
Shall be returned if the referred "Individual VNF snapshot package artifact" is external to the main
VNF snapshot package file created from a build process.
......
......@@ -57,6 +57,8 @@ definitions:
description: >
Checksum of the stored VNF snapshot package.
Hash algorithms applicable to VNF snapshot package are defined in ETSI GS NFV-SOL 010.
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.
......@@ -78,11 +80,11 @@ definitions:
uploaded or built. Otherwise, this attribute shall be present unless it has been requested
to be excluded per attribute selector.
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
vnfcSnapshotIds:
vnfcSnapshotInfoIds:
description: >
Identifier of the specific VNFC snapshot(s) part of the VNF snapshot and contained in
the VNF snapshot package. This identifier is allocated by the VNFM during the VNF snapshot
creation.
Identifier of information held by the VNFM about specific VNFC snapshot(s) part of the VNF
snapshot and contained in the VNF snapshot package. This identifier is allocated by the VNFM
during the VNF snapshot creation.
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
......@@ -186,7 +188,7 @@ definitions:
details:
description: >
Failure details containing error information (such as failed uploading or processing
operation, affected artefact, reason for cancellation, etc.). See clause 6.3 of ETSI
operation, affected artifact, reason for cancellation, etc.). See clause 6.3 of ETSI
GS NFV-SOL 013 for the details of "ProblemDetails" structure.
$ref: "../../definitions/SOL005_def.yaml#/definitions/ProblemDetails"
userDefinedData:
......@@ -327,40 +329,40 @@ definitions:
properties:
vnfSnapshotInfoId:
description: >
Identifier held by the NFVO about the "Individual VNF snapshot" resource with the information
Identifier held by the NFVO about the "Individual VNF snapshot" resource with the information
managed by the VNFM about a specific VNF snapshot to be packaged into the VNF snapshot package.
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
vnfcSnapshots:
vnfcSnapshotsInfoIds:
description: >
List of VNFC snapshots to be packaged into the VNF snapshot package. Shall be present when
it is requested to build a "partial” VNF snapshot package by packaging specific VNFC snapshots
of the VNF snapshot. If not present, a "full" VNF snapshot package is requested to be built
including all the constituents of the VNF snapshot.
List of identifiers of information held by the NFVO about VNFC snapshots to be packaged
into the VNF snapshot package. Shall be present when it is requested to build a "partial”
VNF snapshot package by packaging specific VNFC snapshots of the VNF snapshot. If not present,
a "full" VNF snapshot package is requested to be built including all the constituents of
the VNF snapshot.
type: array
items:
type: object
required:
- vnfcSnapshotInfoId
properties:
vnfcSnapshotInfoId:
description : >
Identifier of information held by the NFVO about a specific VNFC snapshot to be
packaged into the VNF snapshot package.
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
importVnfcSnapshotResource:
description : >
Indicates whether the NFVO shall import the snapshotted resources associated to the
VNFC snapshot from the NFVI (TRUE) or keep in the NFVI the snapshotted resources as
external artifacts during the building of the VNF snapshot package file (FALSE).
If this attribute is present, it overrides for the specific VNFC snapshot the VNF
level policy indicated by the "importSnapshotResource" attribute. Default value
is TRUE.
$ref: "../../definitions/SOL005_def.yaml#/definitions/Boolean"
$ref: "../../definitions/SOL005_def.yaml#/definitions/IdentifierLocal"
overrideImportForVnfcSnapshotIds:
description: |
If present, it indicates the list of VNFC snapshots to which the VNF snapshot-level
import snapshot resource policy indicated by the "importSnapshotResource" attribute
does not apply and the opposite value shall be considered.
The "overrideImportForVnfcSnapshotIds" provides the list of VNFC snapshots for which the
VNF snapshot-level snapshot resource import policy is overridden. See also examples in the
present clause.
type: array
items:
$ref: "../../definitions/SOL005_def.yaml#/definitions/IdentifierLocal"
importSnapshotResource:
description: >
VNF-level policy indicating whether the NFVO shall import the snapshotted resources from
the NFVI (TRUE) or keep in the NFVI the snapshotted resources as external artifacts during
the building of the VNF snapshot package file (FALSE). Default value is TRUE.
VNF snapshot-level policy indicating whether the NFVO shall import the snapshotted resources
from the NFVI (TRUE) or keep in the NFVI the snapshotted resources as external artifacts
during the building of the VNF snapshot package file (FALSE). Default value is TRUE.
The "overrideImportForVnfcSnapshotIds" provides the list of VNFC snapshots for which the
VNF snapshot-level snapshot resource import policy is overridden. See also examples in the
present clause.
$ref: "../../definitions/SOL005_def.yaml#/definitions/Boolean"
ExtractVnfSnapshotPkgRequest:
......@@ -421,7 +423,7 @@ definitions:
properties:
artifact:
description: >
Access configuration information for an external artefact.
Access configuration information for an external artifact.
type: array
items:
type: object
......@@ -491,7 +493,7 @@ definitions:
description: >
This type represents an artifact contained in or external to a VNF snapshot package which
represents a snapshot image.
It shall comply with provisions defined in table 11.5.3.2-1.
It shall comply with the provisions defined in table 11.5.3.2-1.
type: object
required:
- id
......@@ -513,7 +515,9 @@ definitions:
description: Name of the VNFC snapshot image.
type: string
checksum:
description: Checksum of the snapshot image file.
description: >
Checksum of the snapshot image file. Hash algorithms applicable to VNF snapshot package
artifacts are defined in ETSI GS NFV-SOL 010.
$ref: "../../definitions/SOL005_def.yaml#/definitions/Checksum"
isEncrypted:
description: Reflects whether the artifact is encrypted (true) or not (false).
......@@ -661,7 +665,8 @@ definitions:
$ref: "../../definitions/SOL005_def.yaml#/definitions/Uri"
checksum:
description: >
Checksum of the artifact file.
Checksum of the artifact file. Hash algorithms applicable to VNF snapshot package
artifacts are defined in ETSI GS NFV-SOL 010.
$ref: "../../definitions/SOL005_def.yaml#/definitions/Checksum"
isEncrypted:
description: >
......@@ -691,8 +696,8 @@ definitions:
vnfdPath:
description: >
Path which allows to access a copy of the VNFD. The VNFD is implemented as a collection
of one or more files, and the path refers to the ZIP archive file embedding these files
as specified in the ETSI GS NFV-SOL 010.
of one or more files, and the path refers to the ZIP archive file embedding these files.
The VNF snapshot package format is defined in the ETSI GS NFV-SOL 010.
The value of this attribute shall start with the name of the first segment of the path
in the package, i.e. it shall not be prefixed by path separator characters such
......@@ -702,7 +707,8 @@ definitions:
type: string
checksum:
description: >
Checksum of the VNFD archive file.
Checksum of the VNFD archive file. Hash algorithms applicable to VNF snapshot package
artifacts are defined in ETSI GS NFV-SOL 010.
$ref: "../../definitions/SOL005_def.yaml#/definitions/Checksum"
isEncrypted:
description: >
......@@ -732,7 +738,8 @@ definitions:
type: string
checksum:
description: >
Checksum of the VNF snapshot record file.
Checksum of the VNF snapshot record file. Hash algorithms applicable to VNF snapshot package
artifacts are defined in ETSI GS NFV-SOL 010.
$ref: "../../definitions/SOL005_def.yaml#/definitions/Checksum"
isEncrypted:
description: >
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment