Commit 10c7b548 authored by moscatelli's avatar moscatelli
Browse files

SOL003: VNF Package management datatypes consolidation

parent b1b0c3e3
Pipeline #1257 passed with stage
in 0 seconds
......@@ -1098,6 +1098,8 @@ paths:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
409:
description: >
409 CONFLICT
Shall be returned upon the following error: The operation cannot
be executed currently, due to a conflict with the state of the resource.
Typically, this is due to the fact that "onboardingState" of the
......@@ -1268,6 +1270,8 @@ paths:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
409:
description: >
409 CONFLICT
Shall be returned upon the following error: The operation cannot
be executed currently, due to a conflict with the state of the resource.
Typically, this is due to the fact that "onboardingState" of the
......
responses:
406:
description: >
Not Acceptable
If the "Accept" header does not contain at least one name of a content
type for which the NFVO can provide a representation of the VNFD, the
NFVO shall respond with this response code.
The "ProblemDetails" structure may be included with the "detail"
attribute providing more information about the error.
headers:
Content-Type:
description: The MIME type of the body of the response.
type: string
maximum: 1
minimum: 1
WWW-Authenticate:
description: >
Challenge if the corresponding HTTP request has not provided
authorization, or error details if the corresponding HTTP
request has provided an invalid authorization token.
type: string
maximum: 1
minimum: 0
schema:
$ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails"
409:
description: >
Conflict
Error: The operation cannot be executed currently, due to a conflict
with the state of the resource.
Typically, this is due to the fact that "onboardingState" of the VNF
package has a value different from "ONBOARDED".
The response body shall contain a ProblemDetails structure, in which the
"detail" attribute shall convey more information about the error.
headers:
Content-Type:
description: The MIME type of the body of the response.
type: string
maximum: 1
minimum: 1
WWW-Authenticate:
description: >
Challenge if the corresponding HTTP request has not provided
authorization, or error details if the corresponding HTTP
request has provided an invalid authorization token.
type: string
maximum: 1
minimum: 0
schema:
$ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails"
416:
description: >
Requested Range Not Satisfiable
The byte range passed in the "Range" header did not match any available
byte range in the VNF package file (e.g. "access after end of file").
The response body may contain a ProblemDetails structure.
headers:
Content-Type:
description: The MIME type of the body of the response.
type: string
maximum: 1
minimum: 1
WWW-Authenticate:
description: >
Challenge if the corresponding HTTP request has not provided
authorization, or error details if the corresponding HTTP
request has provided an invalid authorization token.
type: string
maximum: 1
minimum: 0
schema:
$ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails"
\ No newline at end of file
......@@ -2,41 +2,14 @@
# https://forge.etsi.org/etsi-forge-copyright-notice.txt
definitions:
PackageChangeType:
description: >
- OP_STATE_CHANGE: The "operationalState" attribute has been changed.
- PKG_DELETE: The VNF package has been deleted.
type: string
enum:
- OP_STATE_CHANGE
- PKG_DELETE
PackageOperationalStateType:
description: >
- ENABLED: The VNF package is enabled, i.e. it can be used for
instantiation of new VNF instances.
- DISABLED: The VNF package is disabled, i.e. it cannot be used for
further VNF instantiation requests (unless and until the VNF package
is re-enabled).
type: string
enum:
- ENABLED
- DISABLED
VnfPackageChangeNotification:
VnfPackageOnboardingNotification:
description: >
This type represents a VNF package management notification, which
informs the receiver of a change of the status in an on-boarded VNF
package. Only changes in the "operationalState" attribute of an
on-boarded VNF package and the deletion NF package will be reported.
Changes in the "usageState" and "onboardingState" attributes are not
reported.
The notification shall be triggered by the NFVO when there is a change
in the status of an onboarded VNF package, as follows:
* The "operationalState" attribute of a VNF package has changed, and the
"onboardingState" attribute of the package has the value "ONBOARDED"
(i.e. the package has been onboarded previously).
* The on-boarded VNF package has been deleted.
This type represents a VNF package management notification,
which informs the receiver that the onboarding process of a VNF package
is complete and the package is ready for use.
The notification shall be triggered by the NFVO when the
"onboardingState" attribute of a new VNF package has changed to
"ONBOARDED".
type: object
required:
- id
......@@ -45,7 +18,6 @@ definitions:
- timeStamp
- vnfPkgId
- vnfdId
- changeType
- _links
properties:
id:
......@@ -56,11 +28,12 @@ definitions:
$ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
notificationType:
description: >
Discriminator for the different notification types.
Shall be set to "VnfPackageChangeNotification" for this notification type.
Discriminator for the different notification types.
Shall be set to "VnfPackageOnboardingNotification" for this
notification type.
type: string
enum:
- VnfPackageChangeNotification
- VnfPackageOnboardingNotification
subscriptionId:
description: >
Identifier of the subscription that this notification relates to.
......@@ -77,32 +50,29 @@ definitions:
$ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
vnfdId:
description: >
Identifier of the VNFD contained in the VNF package, which also
identifies the VNF package. This identifier is allocated by the VNF
provider and copied from the VNFD.
This identifier, which is managed by the VNF provider, identifies
the VNF package and the VNFD in a globally unique way.
It's copied from the VNFD of the on-boarded VNF package.
$ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
changeType:
description: >
The type of change of the VNF package.
$ref: "#/definitions/PackageChangeType"
operationalState:
description: >
New operational state of the VNF package.
Only present when changeType is OP_STATE_CHANGE.
$ref: "#/definitions/PackageOperationalStateType"
_links:
description: >
Links to resources related to this notification.
$ref: "#/definitions/PkgmLinks"
VnfPackageOnboardingNotification:
VnfPackageChangeNotification:
description: >
This type represents a VNF package management notification,
which informs the receiver that the onboarding process of a VNF package
is complete and the package is ready for use.
The notification shall be triggered by the NFVO when the
"onboardingState" attribute of a new VNF package has changed to
"ONBOARDED".
This type represents a VNF package management notification, which
informs the receiver of a change of the status in an on-boarded VNF
package. Only changes in the "operationalState" attribute of an
on-boarded VNF package and the deletion NF package will be reported.
Changes in the "usageState" and "onboardingState" attributes are not
reported.
The notification shall be triggered by the NFVO when there is a change
in the status of an onboarded VNF package, as follows:
* The "operationalState" attribute of a VNF package has changed, and the
"onboardingState" attribute of the package has the value "ONBOARDED"
(i.e. the package has been onboarded previously).
* The on-boarded VNF package has been deleted.
type: object
required:
- id
......@@ -111,6 +81,7 @@ definitions:
- timeStamp
- vnfPkgId
- vnfdId
- changeType
- _links
properties:
id:
......@@ -122,11 +93,10 @@ definitions:
notificationType:
description: >
Discriminator for the different notification types.
Shall be set to "VnfPackageOnboardingNotification" for this
notification type.
Shall be set to "VnfPackageChangeNotification" for this notification type.
type: string
enum:
- VnfPackageOnboardingNotification
- VnfPackageChangeNotification
subscriptionId:
description: >
Identifier of the subscription that this notification relates to.
......@@ -143,31 +113,59 @@ definitions:
$ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
vnfdId:
description: >
This identifier, which is managed by the VNF provider, identifies
the VNF package and the VNFD in a globally unique way.
It's copied from the VNFD of the on-boarded VNF package.
Identifier of the VNFD contained in the VNF package, which also
identifies the VNF package. This identifier is allocated by the VNF
provider and copied from the VNFD.
$ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
changeType:
description: >
The type of change of the VNF package.
$ref: "#/definitions/PackageChangeType"
operationalState:
description: >
New operational state of the VNF package.
Only present when changeType is OP_STATE_CHANGE.
$ref: "../../VNFPackageManagement/definitions/VNFPackageManagement_def.yaml#/definitions/PackageOperationalStateType"
_links:
description: >
Links to resources related to this notification.
$ref: "#/definitions/PkgmLinks"
PackageChangeType:
description: >
- OP_STATE_CHANGE: The "operationalState" attribute has been changed.
- PKG_DELETE: The VNF package has been deleted.
type: string
enum:
- OP_STATE_CHANGE
- PKG_DELETE
PkgmLinks:
description: >
This type represents the links to resources that a VNF package management
notification can contain.
This type represents the links to resources that a VNF package
management notification can contain.
type: object
required:
- vnfPackage
- subscription
properties:
vnfPackage:
description: >
Link to the resource representing the VNF package to which the
notified change applies, i.e. the individual on-boarded VNF package
resource that represents the VNF package, identified by the "vnfPkgId"
identifier which is managed by the NFVO. This attribute shall be provided
by the NFVO but is deprecated and can be removed in future versions
of the present document.
$ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink"
vnfPackageByVnfdId:
description: >
Link to the resource representing the VNF package to which the notified
change applies, i.e. the individual VNF package resource
that represents the VNF package.
change applies, i.e. the individual VNF package resource that represents
the VNF package, identified by the "vnfdId" identifier which is assigned
by the VNF vendor.
$ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink"
subscription:
description: >
Link to the related subscription.
$ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink"
$ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink"
\ No newline at end of file
......@@ -63,7 +63,7 @@ definitions:
properties:
id:
description: >
Identifier of this subscription resource
Identifier of this "Individual subscription" resource
$ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
filter:
description: >
......@@ -107,10 +107,9 @@ definitions:
$ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Uri"
authentication:
description: >
Authentication parameters to configure the use of Authorization when
sending notifications corresponding to this subscription.
This attribute shall only be present if the subscriber requires
authorization of notifications.
Authentication parameters to configure the use of Authorization when sending notifications
corresponding to this subscription, as defined in clause 8.3.4 of ETSI GS NFV-SOL 013.
This attribute shall only be present if the subscriber requires authorization of notifications.
$ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/SubscriptionAuthentication"
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