Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • nfv/SOL002-SOL003
  • reinaortega/SOL002-SOL003
2 results
Show changes
Showing
with 10043 additions and 307 deletions
......@@ -3,88 +3,100 @@
definitions:
VnfIndicator:
description: >
description: >
This type represents a VNF indicator value.
NOTE: ETSI GS NFV-SOL 001 specifies the structure and format of the VNFD based on TOSCA specifications.
type: object
required:
required:
- id
- value
- vnfInstanceId
- _links
properties:
properties:
id:
description: >
Identifier of this VNF indicator.
$ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd"
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd"
name:
description: >
Human readable name of the indicator. Shall be present if defined in
the VNFD.
type: string
value:
value:
description: >
Provides the value of the indicator. The value format is defined in
the VNFD.
ETSI GS NFV-SOL 001 specifies the structure and format of the
VNFD based on TOSCA specifications.
Provides the value of the indicator. The value format is defined in the VNFD. See note.
type: object
vnfInstanceId:
description: >
Identifier of the VNF instance which provides the indicator value.
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
Identifier of the "Individual VNF instance" which provides the indicator value.
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier"
_links:
description: >
Links for this resource.
type: object
required:
required:
- self
- vnfInstance
properties:
properties:
self:
description: >
URI of this resource.
$ref: "SOL002SOL003_def.yaml#/definitions/Link"
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link"
vnfInstance:
description: >
Link to the related VNF instance resource.
$ref: "SOL002SOL003_def.yaml#/definitions/Link"
Link to the related "Individual VNF instance" resource.
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link"
VnfIndicatorNotificationsFilter:
description: >
This type represents a subscription filter related to notifications
about VNF indicator value changes.
At a particular nesting level in the filter structure, the following
applies: All attributes shall match in order for the filter to match
(logical "and" between different filter attributes). If an attribute is
an array, the attribute shall match if at least one of the values in the
array matches (logical "or" between the values of one filter attribute).
This type represents a subscription filter for notifications related to VNF indicators.
At a particular nesting level in the filter structure, the following applies:
All attributes shall match in order for the filter to match (logical "and" between different
filter attributes). If an attribute is an array, the attribute shall match if at least one of
the values in the array matches (logical "or" between the values of one filter attribute).
NOTE: The permitted values of the "notificationTypes" attribute are spelled exactly as the names
of the notification types to facilitate automated code generation systems.
type: object
properties:
properties:
vnfInstanceSubscriptionFilter:
description: >
Filter criteria to select VNF instances about which to notify.
$ref: "SOL002SOL003_def.yaml#/definitions/VnfInstanceSubscriptionFilter"
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/VnfInstanceSubscriptionFilter"
notificationTypes:
description: >
Match particular notification types.
Permitted values:
- VnfIndicatorValueChangeNotification
- SupportedIndicatorsChangeNotification
See note.
type: string
enum:
- VnfIndicatorValueChangeNotification
- SupportedIndicatorsChangeNotification
indicatorIds:
description: >
Match particular VNF indicator identifiers.
type: array
items:
$ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd"
items:
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd"
VnfIndicatorSubscription:
description: >
This type represents a subscription related to notifications about VNF
indicator value changes.
type: object
required:
required:
- id
- callbackUri
- _links
properties:
properties:
id:
description: >
Identifier of this subscription resource.
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
Identifier of this "Individual subscription" resource.
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier"
filter:
description: >
Filter settings for this subscription, to define the subset of all
......@@ -107,16 +119,16 @@ definitions:
self:
description: >
URI of this resource.
$ref: "SOL002SOL003_def.yaml#/definitions/Link"
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link"
VnfIndicatorSubscriptionRequest:
description: >
This type represents a subscription request related to VNF indicator
value change notifications.
type: object
required:
required:
- callbackUri
properties:
properties:
filter:
description: >
Filter settings for this subscription, to define the subset of all
......@@ -127,86 +139,12 @@ definitions:
callbackUri:
description: >
The URI of the endpoint to send the notification to.
type: string
format: url
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Uri"
authentication:
description: >
Authentication parameters to configure the use of Authorization
when sending notifications corresponding to this subscription.
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: "SOL002SOL003_def.yaml#/definitions/SubscriptionAuthentication"
VnfIndicatorValueChangeNotification:
description: >
This type represents a VNF indicator value change notification.
The notification shall be triggered by the VNFM when the value of an
indicator has changed.
type: object
required:
- id
- notificationType
- subscriptionId
- timeStamp
- vnfIndicatorId
- value
- vnfInstanceId
- _links
properties:
id:
description: >
Identifier of this notification. If a notification is sent multiple
times due to multiple subscriptions, the "id" attribute of all these
notifications shall have the same value.
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
notificationType:
description: >
Discriminator for the different notification types. Shall be set to
"VnfIndicatorValueChangeNotification" for this notification type.
type: string
enum:
- VnfIndicatorValueChangeNotification
subscriptionId:
description: >
Identifier of the subscription that this notification relates to.
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
timeStamp:
description: >
Date-time of the generation of the notification.
$ref: "SOL002SOL003_def.yaml#/definitions/DateTime"
vnfIndicatorId:
description: >
Identifier of the VNF indicator whose value has changed.
$ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd"
name:
description: >
Human readable name of the VNF indicator. Shall be present if
defined in the VNFD.
type: string
value:
description: >
Provides the value of the VNF indicator. The value format is defined
in the VNFD.
ETSI GS NFV-SOL 001 specifies the structure and format of the VNFD
based on TOSCA specifications.
type: object
vnfInstanceId:
description: >
Identifier of the VNF instance which provides the indicator value.
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
_links:
description: >
Links for this resource.
type: object
required:
- vnfInstance
- subscription
properties:
vnfInstance:
description: >
Link to the related VNF instance resource.
$ref: "SOL002SOL003_def.yaml#/definitions/Link"
subscription:
description: >
Link to the related subscription.
$ref: "SOL002SOL003_def.yaml#/definitions/Link"
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/SubscriptionAuthentication"
definitions:
VnfIndicatorNotificationsFilter:
description: >
This type represents a subscription filter related to notifications about VNF indicator value changes.
At a particular nesting level in the filter structure, the following applies:
All attributes shall match in order for the filter to match (logical "and" between different filter attributes).
If an attribute is an array, the attribute shall match if at least one of the values in the array matches
(logical "or" between the values of one filter attribute).
type: object
properties:
vnfInstanceSubscriptionFilter:
description: >
Filter criteria to select VNF instances about which to notify. This attribute shall not be included
when the VNFM sends a subscription request to a particular VNF instance.
$ref: 'VnfInstanceSubscriptionFilter_def.yaml#/definitions/VnfInstanceSubscriptionFilter'
indicatorIds:
description: >
Match particular VNF indicator identifiers.
type: array
items:
$ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd'
definitions:
VnfIndicatorSubscriptionRequest:
description: >
This type represents a subscription request related to VNF indicator value change notifications.
type: object
required:
- callbackUri
properties:
filter:
description: >
Filter settings for this subscription, to define the subset of all notifications this
subscription relates to. A particular notification is sent to the subscriber if the filter
matches, or if there is no filter.
$ref: 'VnfIndicatorNotificationsFilter_def.yaml#/definitions/VnfIndicatorNotificationsFilter'
callbackUri:
description: >
The URI of the endpoint to send the notification to.
type: string
format: 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.
$ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/SubscriptionAuthentication"
\ No newline at end of file
definitions:
VnfIndicatorSubscription:
description: >
This type represents a subscription related to notifications about VNF indicator value changes.
type: object
required:
- callbackUri
- id
- _links
properties:
id:
description: >
Identifier of this subscription resource.
$ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier'
filter:
description: >
Filter settings for this subscription, to define the subset of all notifications this subscription
relates to. A particular notification is sent to the subscriber if the filter matches, or if there
is no filter.
$ref: 'VnfIndicatorNotificationsFilter_def.yaml#/definitions/VnfIndicatorNotificationsFilter'
callbackUri:
description: >
The URI of the endpoint to send the notification to.
type: string
format: URI
_links:
description: >
Links to resources related to this resource.
type: object
required:
- self
properties:
self:
description: >
URI of this resource.
$ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/Link'
definitions:
VnfIndicator:
type: object
required:
- id
- value
- vnfInstanceId
- _links
properties:
id:
$ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd'
name:
type: string
value:
type: object
vnfInstanceId:
$ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier'
_links:
description: >
Links to resources related to this resource.
type: object
required:
- self
properties:
self:
description: URI of this resource.
$ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/Link'
vnfInstance:
description: Link to the VNF instance that the operation applies to.
$ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/Link'
definitions:
VnfInstanceSubscriptionFilter:
description: >
This type represents subscription filter criteria to match VNF instances.
* NOTE 1:
The attributes "vnfdIds" and "vnfProductsFromProviders" are alternatives to reference to
VNF instances that are based on certain VNFDs in a filter. They should not be used both
in the same filter instance, but one alternative should be chosen.
* NOTE 2:
The attributes "vnfInstanceIds" and "vnfInstanceNames" are alternatives to reference to
particular VNF instances in a filter. They should not be used both in the same filter instance,
but one alternative should be chosen.
type: object
properties:
vnfdIds:
description: >
If present, match VNF instances that were created based on a VNFD identified by one of the
vnfdId values listed in this attribute. See NOTE 1.
type: array
items:
$ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier'
vnfProductsFromProviders:
description: >
If present, match VNF instances that belong to VNF products from certain providers. See NOTE 1.
type: array
items:
type: object
required:
- vnfProvider
properties:
vnfProvider:
description: >
Name of the VNF provider to match.
type: string
vnfProducts:
description: >
If present, match VNF instances that belong to VNF products with certain product names,
from one particular provider.
type: array
items:
type: object
required:
- vnfProductName
properties:
vnfProductName:
description: >
Name of the VNF product to match.
type: string
versions:
description: >
If present, match VNF instances that belong to VNF products with certain versions
and a certain product name, from one particular provider.
type: array
items:
type: object
required:
- vnfSoftwareVersions
properties:
vnfSoftwareVersions:
description: >
Software version to match.
$ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/Version'
vnfdVersions:
description: >
If present, match VNF instances that belong to VNF products with certain VNFD versions,
a certain software version and a certain product name, from one particular provider.
type: array
items:
$ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/Version'
vnfInstanceIds:
description: >
If present, match VNF instances with an instance identifier listed in this attribute. See NOTE 2.
type: array
items:
$ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier'
vnfInstanceNames:
description: >
If present, match VNF instances with a VNF Instance Name listed in this attribute. See NOTE 2
type: array
items:
type: string
responses:
409:
description: >
Another request is in progress that prohibits the fulfilment of
the current request, or the current resource state is inconsistent
with the request.
headers:
Content-Type:
description: The MIME type of the body of the response.
type: string
maximum: 1
minimum: 1
schema:
$ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails"
swagger: "2.0"
info:
version: "2.3.1"
title: "DRAFT VNF Indicator Notification Endpoint interface"
description: >
DRAFT VNF Indicator Notification Endpoint interface of ETSI NFV SOL002
IMPORTANT: Please note that this file might be not aligned to the current
version of the ETSI Group Specification it refers to and has not been
approved by the ETSI NFV ISG. In case of discrepancies the published ETSI
Group Specification takes precedence.
Please report bugs to https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis&list_id=61&product=NFV&resolution=---
termsOfService: "http://etsi.org"
contact:
name: "NFV-SOL WG"
license:
name: "ETSI Forge copyright notice"
url: https://forge.etsi.org/etsi-forge-copyright-notice.txt
openapi: 3.0.2
info:
title: SOL002 - VNF Indicator Notification interface
description: |
SOL002 - VNF Indicator Notification interface
basePath: /callback/v1
IMPORTANT: Please note that this file might be not aligned to the current
version of the ETSI Group Specification it refers to. In case of
discrepancies the published ETSI Group Specification takes precedence.
schemes:
- http
- https
Please report bugs to https://forge.etsi.org/rep/nfv/SOL002-SOL003/issues
consumes:
- application/json
contact:
name: NFV-SOL WG
license:
name: ETSI Forge copyright notice
url: https://forge.etsi.org/etsi-forge-copyright-notice.txt
version: 1.4.0-impl:etsi.org:ETSI_NFV_OpenAPI:1
produces:
- application/json
externalDocs:
description: ETSI GS NFV-SOL 002 V3.7.1
url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.07.01_60/gs_NFV-SOL002v030701p.pdf
servers:
- url: http://127.0.0.1/callback/v1
- url: https://127.0.0.1/callback/v1
paths:
'/URI_is_provided_by_the_client_when_creating_the_subscription-VnfIndicatorValueChangeNotification':
parameters:
- $ref: ../../components/SOL002_params.yaml#/components/parameters/Version
- $ref: ../../components/SOL002_params.yaml#/components/parameters/Authorization
get:
description: |
The GET method allows the API producer to test the notification endpoint that is provided by the
API consumer, e.g. during subscription. See clause 8.4.7.3.2.
responses:
"204":
$ref: '#/components/responses/VNFInNotification.Get.204'
"400":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/400
"401":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/401
"403":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/403
"405":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/405
"406":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/406
"500":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/500
"503":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/503
post:
description: |
The POST method delivers a notification from the API producer to an API consumer. The API consumer shall have
previously created an "Individual subscription" resource with a matching filter. See clause 8.4.7.3.1.
parameters:
- $ref: ../../components/SOL002_params.yaml#/components/parameters/ContentType
requestBody:
$ref: '#/components/requestBodies/VnfIndicatorValueChangeNotification'
responses:
"204":
$ref: '#/components/responses/VNFInNotification.Post.204'
"400":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/400
"401":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/401
"403":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/403
"405":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/405
"406":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/406
"500":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/500
"503":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/503
'/URI_is_provided_by_the_client_when_creating_the_subscription-SupportedIndicatorsChangeNotification':
parameters:
- $ref: ../../components/SOL002_params.yaml#/components/parameters/Version
- $ref: ../../components/SOL002_params.yaml#/components/parameters/Authorization
get:
description: |
The GET method allows the API producer to test the notification endpoint that is provided by the
API consumer, e.g. during subscription. See clause 8.4.7.3.2.
responses:
"204":
$ref: '#/components/responses/VNFInNotification.Get.204'
"400":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/400
"401":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/401
"403":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/403
"405":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/405
"406":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/406
"500":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/500
"503":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/503
/notificationendpoint:
post:
summary: Notification endpoint
description: >
The API producer can use this resource to send notifications related to VNF indicator
value changes to a subscribed API consumer, which has provided the URI of this resource
during the subscription process.
The POST method delivers a notification from the server to the client.
parameters:
- name: vnfIndicatorValueChangeNotification
in: body
description: >
A notification about VNF indicator value changes.
required: true
schema:
$ref: 'definitions/VnfIndicatorValueChangeNotification_def.yaml#/definitions/VnfIndicatorValueChangeNotification'
responses:
204:
description: >
The notification was delivered successfully. The response body shall be empty.
400: { $ref: '../../responses/SOL002SOL003_resp.yaml#/responses/400' }
401: { $ref: '../../responses/SOL002SOL003_resp.yaml#/responses/401' }
403: { $ref: '../../responses/SOL002SOL003_resp.yaml#/responses/403' }
404: { $ref: '../../responses/SOL002SOL003_resp.yaml#/responses/404' }
405: { $ref: '../../responses/SOL002SOL003_resp.yaml#/responses/405' }
406: { $ref: '../../responses/SOL002SOL003_resp.yaml#/responses/406' }
409: { $ref: 'responses/VNFIndicatorNotification_resp.yaml#/responses/409' }
416: { $ref: '../../responses/SOL002SOL003_resp.yaml#/responses/416' }
422: { $ref: '../../responses/SOL002SOL003_resp.yaml#/responses/422' }
500: { $ref: '../../responses/SOL002SOL003_resp.yaml#/responses/500' }
503: { $ref: '../../responses/SOL002SOL003_resp.yaml#/responses/503' }
get:
summary: Test notification endpoint.
description: >
The GET method allows the server to test the notification endpoint that is provided
by the client, e.g. during subscription.
responses:
204:
description: >
The notification endpoint was tested successfully. The response body shall be empty.
400: { $ref: '../../responses/SOL002SOL003_resp.yaml#/responses/400' }
401: { $ref: '../../responses/SOL002SOL003_resp.yaml#/responses/401' }
403: { $ref: '../../responses/SOL002SOL003_resp.yaml#/responses/403' }
404: { $ref: '../../responses/SOL002SOL003_resp.yaml#/responses/404' }
405: { $ref: '../../responses/SOL002SOL003_resp.yaml#/responses/405' }
406: { $ref: '../../responses/SOL002SOL003_resp.yaml#/responses/406' }
409: { $ref: 'responses/VNFIndicatorNotification_resp.yaml#/responses/409' }
416: { $ref: '../../responses/SOL002SOL003_resp.yaml#/responses/416' }
422: { $ref: '../../responses/SOL002SOL003_resp.yaml#/responses/422' }
500: { $ref: '../../responses/SOL002SOL003_resp.yaml#/responses/500' }
503: { $ref: '../../responses/SOL002SOL003_resp.yaml#/responses/503' }
post:
description: |
The POST method delivers a notification from the API producer to an API consumer. The API consumer shall have
previously created an "Individual subscription" resource with a matching filter. See clause 8.4.7.3.1.
parameters:
- $ref: ../../components/SOL002_params.yaml#/components/parameters/ContentType
requestBody:
$ref: '#/components/requestBodies/SupportedIndicatorsChangeNotification'
responses:
"204":
$ref: '#/components/responses/VNFInNotification.Post.204'
"400":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/400
"401":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/401
"403":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/403
"405":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/405
"406":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/406
"500":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/500
"503":
$ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/503
components:
requestBodies:
VnfIndicatorValueChangeNotification:
description: |
A notification about VNF indicator value changes.
content:
application/json:
schema:
$ref: ./definitions/SOL002VNFIndicatorNotification_def.yaml#/definitions/VnfIndicatorValueChangeNotification
required: true
SupportedIndicatorsChangeNotification:
description: |
A notification about changes of the set of supported indicators.
content:
application/json:
schema:
$ref: ./definitions/SOL002VNFIndicatorNotification_def.yaml#/definitions/SupportedIndicatorsChangeNotification
required: true
responses:
VNFInNotification.Get.204:
description: |
204 NO CONTENT
Shall be returned to indicate the notification endpoint has been tested successfully. The response body
shall be empty.
headers:
Version:
description: |
Version of the API used in the response.
style: simple
explode: false
schema:
type: string
WWW-Authenticate:
description: |
Challenge if the corresponding HTTP request has not provided authorization, or error details if the
corresponding HTTP request has provided an invalid authorization token.
style: simple
explode: false
schema:
type: string
content: {}
VNFInNotification.Post.204:
description: |
204 NO CONTENT
Shall be returned when the notification has been delivered successfully. The response body shall be empty.
headers:
Version:
description: |
Version of the API used in the response.
style: simple
explode: false
schema:
type: string
WWW-Authenticate:
description: |
Challenge if the corresponding HTTP request has not provided authorization, or error details if the
corresponding HTTP request has provided an invalid authorization token.
style: simple
explode: false
schema:
type: string
content: {}
\ No newline at end of file
definitions:
# Copyright (c) ETSI 2017.
# https://forge.etsi.org/etsi-forge-copyright-notice.txt
definitions:
VnfIndicatorValueChangeNotification:
description: >
This type represents a VNF indicator value change notification.
* NOTE: ETSI GS NFV-SOL 001 specifies the structure and
format of the VNFD based on TOSCA specifications.
type: object
required:
- id
......@@ -19,7 +23,7 @@ definitions:
Identifier of this notification. If a notification is sent multiple
times due to multiple subscriptions, the "id" attribute of all these
notifications shall have the same value.
$ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier'
$ref: '../../General_Definitions/SOL002_def.yaml#/definitions/Identifier'
notificationType:
description: >
Discriminator for the different notification types.
......@@ -28,27 +32,28 @@ definitions:
subscriptionId:
description: >
Identifier of the subscription that this notification relates to.
$ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier'
$ref: '../../General_Definitions/SOL002_def.yaml#/definitions/Identifier'
timeStamp:
description: >
Date-time of the generation of the notification.
$ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime'
$ref: '../../General_Definitions/SOL002_def.yaml#/definitions/DateTime'
vnfIndicatorId:
description: >
Identifier of the VNF indicator whose value has changed.
$ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd'
$ref: '../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd'
name:
description: >
Human readable name of the VNF indicator. Shall be present if defined in the VNFD.
type: string
value:
description: >
Provides the value of the VNF indicator. The value format is defined in the VNFD.
Provides the value of the VNF indicator. The value format is defined in the VNFD.
See note.
type: object
vnfInstanceId:
description: >
Identifier of the VNF instance which provides the indicator value.
$ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier'
$ref: '../../General_Definitions/SOL002_def.yaml#/definitions/Identifier'
_links:
description: >
Links to resources related to this resource.
......@@ -60,9 +65,81 @@ definitions:
# LEH this must be reported as strong candidate for removal.
vnfInstance:
description: >
Link to the related VNF instance resource.
$ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/Link'
Link to the related "Individual VNF instance" resource.
$ref: '../../General_Definitions/SOL002_def.yaml#/definitions/Link'
subscription:
description: >
Link to the related subscription.
$ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/Link'
$ref: '../../General_Definitions/SOL002_def.yaml#/definitions/Link'
SupportedIndicatorsChangeNotification:
description: |
This type represents a notification to inform the receiver that the set of indicators
supported by a VNF instance has changed.
* NOTE: ETSI GS NFV-SOL 001 specifies the structure and
format of the VNFD based on TOSCA specifications.
type: object
required:
- id
- notificationType
- subscriptionId
- timeStamp
- vnfInstanceId
properties:
id:
descriptions: |
Identifier of this notification.
If a notification is sent multiple times due to multiple subscriptions, the "id" attribute of all these
notifications shall have the same value.
$ref: '../../General_Definitions/SOL002_def.yaml#/definitions/Identifier'
notificationType:
description: |
Discriminator for the different notification types. Shall be set to "SupportedIndicatorsChangeNotification"
for this notification type.
type: string
subscriptionId:
description: |
Identifier of the subscription that this notification relates to.
$ref: '../../General_Definitions/SOL002_def.yaml#/definitions/Identifier'
timeStamp:
description: |
Date-time of the generation of the notification.
$ref: '../../General_Definitions/SOL002_def.yaml#/definitions/DateTime'
vnfInstanceId:
description: |
Identifier of the VNF instance which provides the indicator value.
$ref: '../../General_Definitions/SOL002_def.yaml#/definitions/Identifier'
supportedIndicators:
description: |
Set of VNF indicators supported by the VNF instance.
type: array
items:
type: object
required:
- vnfIndicatorId
properties:
vnfIndicatorId:
description: |
Identifier of the VNF indicator whose value has changed.
$ref: '../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf'
name:
description: |
Human readable name of the VNF indicator. Shall be present if defined in the VNFD.
See note.
type: string
_links:
description: |
Links for this resource.
type: object
required:
- subscription
properties:
vnfInstance:
description: |
Link to the related "Individual VNF instance" resource. Shall be present if the VNF instance information
is accessible as a resource.
$ref: '../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink'
subscription:
description: |
Link to the related subscription.
$ref: '../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink'
\ No newline at end of file
responses:
409:
description: >
Another request is in progress that prohibits the fulfilment of
the current request, or the current resource state is inconsistent
with the request.
headers:
Content-Type:
description: The MIME type of the body of the response.
type: string
maximum: 1
minimum: 1
schema:
$ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails"
This diff is collapsed.
# Copyright (c) ETSI 2017.
# https://forge.etsi.org/etsi-forge-copyright-notice.txt
definitions:
LcmCoord:
description: >
This type represents an LCM coordination result.
type: object
required:
- id
- coordinationResult
- vnfInstanceId
- vnfLcmOpOccId
- lcmOperationType
- coordinationActionName
- _links
properties:
id:
description: >
Identifier of this coordination result.
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier"
coordinationResult:
description: >
The result of executing the coordination action which also implies
the action to be performed by the VNFM as the result of this coordination.
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/LcmCoordResultType"
vnfInstanceId:
description: >
Identifier of the VNF instance which this coordination request is related to.
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier"
vnfLcmOpOccId:
description: >
The identifier of the VNF lifecycle management operation occurrence related to the coordination.
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier"
lcmOperationType:
description: >
Indicates the type of the LCM operation with which coordination is requested.
Shall be the same as the value of the "operation" attribute in the LcmOpOcc
structure that is referenced by the "vnfLcmOpOccId".
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/LcmOperationForCoordType"
coordinationActionName:
description: >
Indicates the actual LCM coordination action.
The coordination actions that a VNF supports are declared in the VNFD.
type: string
outputParams:
description: >
Additional parameters returned by the coordination action,
e.g. on the reason for the indicated coordinationResult.
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs"
warnings:
description: >
Warning messages that were generated while the operation was executing.
type: string
error:
description: >
Error information related to the coordination.
This attribute shall be present if "coordinationResult" is "ABORT" and may be
present if "coordinationResult" is "CANCELLED".
If provided, the error information should be represented in the "error" attribute
of the related VnfLcmOpOcc data structure.
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails"
_links:
description: >
Links to resources related to this resource.
type: object
required:
- self
- vnfLcmOpOcc
- vnfInstance
properties:
self:
description: >
URI of this resource
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link"
vnfLcmOpOcc:
description: >
Related lifecycle management operation occurrence.
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link"
vnfInstance:
description: >
Related VNF instance.
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link"
LcmCoordRequest:
type: object
required:
- vnfInstanceId
- vnfLcmOpOccId
- lcmOperationType
- coordinationActionName
- _links
properties:
vnfInstanceId:
description: >
Identifier of the VNF instance which this coordination request is related to.
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier"
vnfLcmOpOccId:
description: >
The identifier of the VNF lifecycle management operation occurrence related to the coordination.
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier"
lcmOperationType:
description: >
Indicates the type of the LCM operation with which coordination is requested.
Shall be the same as the value of the "operation" attribute in the LcmOpOcc
structure that is referenced by the "vnfLcmOpOccId".
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/LcmOperationForCoordType"
coordinationActionName:
description: >
Indicates the LCM coordination action.
The coordination actions that a VNF supports are declared in the VNFD.
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd"
inputParams:
description: >
Additional parameters passed as input to the coordination action.
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs"
_links:
description: >
Links to resources related to this request.
type: object
required:
- vnfLcmOpOcc
- vnfInstance
properties:
vnfLcmOpOcc:
description: >
Related lifecycle management operation occurrence.
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link"
vnfInstance:
description: >
Related VNF instance.
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link"
inputParams:
type: object
required:
- vnfcInstanceIds
properties:
vnfcInstanceIds:
description: >
Identifier of the VNF instance which this coordination request is related to.
$ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier"