From 1c278fb7a282177c5ec45f6b42038d5462bf1d5e Mon Sep 17 00:00:00 2001 From: moscatelli Date: Tue, 16 Apr 2019 11:58:48 +0200 Subject: [PATCH] SOL002/SOL003: OpenAPI version updated to 1.1.0 + Notification interfaces added --- .../VNFConfiguration/VNFConfiguration.yaml | 2 +- .../VNFFaultManagement.yaml | 7 +- .../VNFFaultManagementNotification.yaml | 431 ++++++++++++++++++ src/SOL002/VNFIndicator/VNFIndicator.yaml | 8 +- .../VNFIndicatorNotification.yaml | 8 +- .../VNFLifecycleManagement.yaml | 4 +- .../VNFLifecycleManagementNotification.yaml | 268 +++++++++++ ...NFLifecycleManagementNotification_def.yaml | 177 +++++++ .../VNFPerformanceManagement.yaml | 6 +- .../VNFPerformanceManagementNotification.yaml | 295 ++++++++++++ .../VNFFaultManagement.yaml | 2 +- .../VNFFaultManagementNotification.yaml | 2 +- src/SOL003/VNFIndicator/VNFIndicator.yaml | 2 +- .../VNFIndicatorNotification.yaml | 2 +- .../VNFLifecycleManagement.yaml | 2 +- .../VNFLifecycleManagementNotification.yaml | 2 +- .../VNFLifecycleOperationGranting.yaml | 2 +- .../VNFPackageManagement.yaml | 2 +- .../VNFPackageManagementNotification.yaml | 2 +- .../VNFPerformanceManagement.yaml | 2 +- .../VNFPerformanceManagementNotification.yaml | 2 +- ...edResourcesQuotaAvailableNotification.yaml | 2 +- ...uotaAvailableNotificationNotification.yaml | 2 +- src/definitions/SOL002SOL003_def.yaml | 166 ++++++- 24 files changed, 1363 insertions(+), 35 deletions(-) create mode 100644 src/SOL002/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml create mode 100644 src/SOL002/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml create mode 100644 src/SOL002/VNFLifecycleManagementNotification/definitions/VNFLifecycleManagementNotification_def.yaml create mode 100644 src/SOL002/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml diff --git a/src/SOL002/VNFConfiguration/VNFConfiguration.yaml b/src/SOL002/VNFConfiguration/VNFConfiguration.yaml index 0a238ccd..223ffdf6 100644 --- a/src/SOL002/VNFConfiguration/VNFConfiguration.yaml +++ b/src/SOL002/VNFConfiguration/VNFConfiguration.yaml @@ -1,7 +1,7 @@ swagger: "2.0" info: - version: "1.1.1" + version: "1.1.0" title: SOL002 - VNF Configuration interface description: > VNF Configuration interface of ETSI NFV SOL002 diff --git a/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml b/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml index cbad6eab..d16269a6 100644 --- a/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml +++ b/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml @@ -1,8 +1,8 @@ swagger: "2.0" info: - version: "1.1.1" - title: DRAFT - SOL002 - VNF Fault Management interface + version: "1.1.0" + title: SOL002 - VNF Fault Management interface description: > DRAFT VNF Fault Management interface of ETSI NFV SOL002 @@ -589,5 +589,4 @@ paths: 500: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" 503: - $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" - + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" \ No newline at end of file diff --git a/src/SOL002/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml b/src/SOL002/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml new file mode 100644 index 00000000..a340f310 --- /dev/null +++ b/src/SOL002/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml @@ -0,0 +1,431 @@ +swagger: "2.0" + +info: + version: "1.1.0" + title: SOL002 - VNF Fault Management Notification interface + description: > + SOL002 - VNF Fault Management Notification interface + + + 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. + + + In clause 4.3.2 of ETSI GS NFV-SOL 002 v2.4.1, an attribute-based + filtering mechanism is defined. This mechanism is currently not + included in the corresponding OpenAPI design for this GS version. Changes + to the attribute-based filtering mechanism are being considered in v2.5.1 + of this GS for inclusion in the corresponding future ETSI NFV OpenAPI + design. + + Please report bugs to https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis&list_id=61&product=NFV&resolution= + license: + name: "ETSI Forge copyright notice" + url: https://forge.etsi.org/etsi-forge-copyright-notice.txt + +externalDocs: + description: ETSI GS NFV-SOL 002 V2.4.1 + url: http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/02.04.01_60/gs_NFV-SOL002v020401p.pdf + +basePath: "/callback/v1" + +schemes: + - https + +consumes: + - "application/json" +produces: + - "application/json" + +paths: + ############################################################################### + # Notification endpoint AlarmNotification # + ############################################################################### + '/URI-is-provided-by-the-client-when-creating-the-subscription-AlarmNotification': + post: + description: > + Notify + + + The POST method notifies a VNF alarm or that the alarm list has been + rebuilt. + parameters: + - name: AlarmNotification + description: > + Information of a VNF alarm. + in: body + required: true + schema: + $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/AlarmNotification" + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The Content-Type header shall be set to + "application/merge-patch+json" according to + IETF RFC 7396. + in: header + required: true + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string + responses: + 204: + description: > + No Content + + The notification was delivered successfully. + The response body shall be empty. + headers: + 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 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + 400: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400" + 401: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" + 403: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" + 405: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" + 406: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" + 500: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" + 503: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" + get: + description: > + The GET method allows the server to test the notification endpoint + that is provided by the client, e.g. during subscription. + parameters: + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string + responses: + 204: + description: > + No Content + + The notification endpoint was tested successfully. + The response body shall be empty. + headers: + 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 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + 400: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400" + 401: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" + 403: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" + 405: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" + 406: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" + 500: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" + 503: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" + ############################################################################### + # Notification endpoint AlarmClearedNotification # + ############################################################################### + '/URI-is-provided-by-the-client-when-creating-the-subscription-AlarmClearedNotification': + post: + description: > + Notify + + + The POST method notifies a VNF alarm or that the alarm list has been + rebuilt. + parameters: + - name: AlarmClearedNotification + description: > + Information of the clearance of a VNF alarm + in: body + required: true + schema: + $ref: "../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/AlarmClearedNotification" + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The Content-Type header shall be set to + "application/merge-patch+json" according to + IETF RFC 7396. + in: header + required: true + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string + responses: + 204: + description: > + No Content + + The notification was delivered successfully. + The response body shall be empty. + headers: + 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 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + 400: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400" + 401: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" + 403: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" + 405: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" + 406: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" + 500: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" + 503: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" + get: + description: > + The GET method allows the server to test the notification endpoint + that is provided by the client, e.g. during subscription. + parameters: + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string + responses: + 204: + description: > + No Content + + The notification endpoint was tested successfully. + The response body shall be empty. + headers: + 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 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + 400: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400" + 401: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" + 403: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" + 405: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" + 406: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" + 500: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" + 503: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" + ############################################################################### + # Notification endpoint AlarmListRebuiltNotification # + ############################################################################### + '/URI-is-provided-by-the-client-when-creating-the-subscription-AlarmListRebuiltNotification': + post: + description: > + Notify + + + The POST method notifies a VNF alarm or that the alarm list has been + rebuilt. + parameters: + - name: AlarmListRebuiltNotification + description: > + Information that the alarm list has been rebuilt by the VNFM + in: body + required: true + schema: + $ref: "../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/AlarmListRebuiltNotification" + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The Content-Type header shall be set to + "application/merge-patch+json" according to + IETF RFC 7396. + in: header + required: true + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string + responses: + 204: + description: > + No Content + + The notification was delivered successfully. + The response body shall be empty. + headers: + 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 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + 400: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400" + 401: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" + 403: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" + 405: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" + 406: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" + 500: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" + 503: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" + get: + description: > + The GET method allows the server to test the notification endpoint + that is provided by the client, e.g. during subscription. + parameters: + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string + responses: + 204: + description: > + No Content + + The notification endpoint was tested successfully. + The response body shall be empty. + headers: + 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 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + 400: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400" + 401: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" + 403: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" + 405: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" + 406: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" + 500: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" + 503: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" diff --git a/src/SOL002/VNFIndicator/VNFIndicator.yaml b/src/SOL002/VNFIndicator/VNFIndicator.yaml index d108ec1d..7ec26ab1 100644 --- a/src/SOL002/VNFIndicator/VNFIndicator.yaml +++ b/src/SOL002/VNFIndicator/VNFIndicator.yaml @@ -2,8 +2,8 @@ swagger: "2.0" info: - version: "1.1.1" - title: DRAFT - SOL002 - VNF Indicator interface + version: "1.1.0" + title: SOL002 - VNF Indicator interface description: > DRAFT VNF Indicator interface of ETSI NFV SOL002. @@ -480,6 +480,4 @@ paths: 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' } - - + 503: { $ref: '../../responses/SOL002SOL003_resp.yaml#/responses/503' } \ No newline at end of file diff --git a/src/SOL002/VNFIndicatorNotification/VNFIndicatorNotification.yaml b/src/SOL002/VNFIndicatorNotification/VNFIndicatorNotification.yaml index eac02587..a337ed08 100644 --- a/src/SOL002/VNFIndicatorNotification/VNFIndicatorNotification.yaml +++ b/src/SOL002/VNFIndicatorNotification/VNFIndicatorNotification.yaml @@ -1,7 +1,7 @@ swagger: "2.0" info: - version: "1.1.1" + version: "1.1.0" title: "SOL002 - VNF Indicator Notification Endpoint interface" description: > VNF Indicator Notification Endpoint interface of ETSI NFV SOL002 @@ -92,8 +92,4 @@ paths: 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' } - - - - + 503: { $ref: '../../responses/SOL002SOL003_resp.yaml#/responses/503' } \ No newline at end of file diff --git a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml index 339aa711..150e1aaa 100644 --- a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -1,7 +1,7 @@ swagger: "2.0" info: - version: "1.1.1" + version: "1.1.0" title: "SOL002 - VNF Configuration interface" description: > VNF Configuration interface of ETSI NFV SOL002 @@ -1293,4 +1293,4 @@ paths: 500: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" 503: - $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" \ No newline at end of file diff --git a/src/SOL002/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml b/src/SOL002/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml new file mode 100644 index 00000000..b6ba6db2 --- /dev/null +++ b/src/SOL002/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml @@ -0,0 +1,268 @@ +swagger: "2.0" + +info: + version: "1.1.0" + title: SOL002 - VNF Lifecycle Management Notification interface + description: > + SOL002 - VNF Lifecycle Management Notification interface + + + 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. + + + In clause 4.3.2 of ETSI GS NFV-SOL 002 v2.4.1, an attribute-based + filtering mechanism is defined. This mechanism is currently not + included in the corresponding OpenAPI design for this GS version. Changes + to the attribute-based filtering mechanism are being considered in v2.5.1 + of this GS for inclusion in the corresponding future ETSI NFV OpenAPI + design. + + Please report bugs to https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis&list_id=61&product=NFV&resolution= + license: + name: "ETSI Forge copyright notice" + url: https://forge.etsi.org/etsi-forge-copyright-notice.txt + +externalDocs: + description: ETSI GS NFV-SOL 002 V2.4.1 + url: http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/02.04.01_60/gs_NFV-SOL002v020401p.pdf + +basePath: "/callback/v1" + +schemes: + - https + +consumes: + - "application/json" +produces: + - "application/json" + +paths: + ############################################################################### + # Notification endpoint VnfLcmOperationOccurrenceNotification # + ############################################################################### + '/URI-is-provided-by-the-client-when-creating-the-subscription-VnfLcmOperationOccurrenceNotification': + post: + description: > + Notify + + + The POST method delivers a notification from the server to the client. + parameters: + - name: VnfLcmOperationOccurrenceNotification + description: A notification about on-boarding of a VNF package. + in: body + required: true + schema: + $ref: "definitions/VNFLifecycleManagementNotification_def.yaml#/definitions/VnfLcmOperationOccurrenceNotification" + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string + responses: + 204: + description: > + No Content + + The notification was delivered successfully. + headers: + 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 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + 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-task-not-suported-VNF-LCM" + 405: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" + 406: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" + 500: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" + 503: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" + ############################################################################### + # Notification endpoint VnfIdentifierCreationNotification # + ############################################################################### + '/URI-is-provided-by-the-client-when-creating-the-subscription-VnfIdentifierCreationNotification': + post: + description: > + Notify + + + The POST method delivers a notification from the server to the client. + parameters: + - name: VnfIdentifierCreationNotification + description: > + A notification about the creation of a VNF identifier and the + related VNF instance resource. + in: body + required: true + schema: + $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfIdentifierCreationNotification" + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string + responses: + 204: + description: > + No Content + + The notification was delivered successfully. + headers: + 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 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + 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-task-not-suported-VNF-LCM" + 405: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" + 406: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" + 500: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" + 503: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" + ############################################################################### + # Notification endpoint VnfIdentifierDeletionNotification # + ############################################################################### + '/URI-is-provided-by-the-client-when-creating-the-subscription-VnfIdentifierDeletionNotification': + post: + description: > + Notify + + + The POST method delivers a notification from the server to the client. + parameters: + - name: VnfIdentifierDeletionNotification + description: > + A notification about the deletion of a VNF identifier and the + related VNF instance resource. + in: body + required: true + schema: + $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfIdentifierDeletionNotification" + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string + responses: + 204: + description: > + No Content + + The notification was delivered successfully. + headers: + 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 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + 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-task-not-suported-VNF-LCM" + 405: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" + 406: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" + 500: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" + 503: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" + diff --git a/src/SOL002/VNFLifecycleManagementNotification/definitions/VNFLifecycleManagementNotification_def.yaml b/src/SOL002/VNFLifecycleManagementNotification/definitions/VNFLifecycleManagementNotification_def.yaml new file mode 100644 index 00000000..4f81f3d4 --- /dev/null +++ b/src/SOL002/VNFLifecycleManagementNotification/definitions/VNFLifecycleManagementNotification_def.yaml @@ -0,0 +1,177 @@ +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt + +definitions: + VnfLcmOperationOccurrenceNotification: + description: > + This type represents a VNF lifecycle management operation occurrence + notification, which informs the receiver of changes in the VNF + lifecycle caused by a VNF LCM operation occurrence. The support of the + notification is mandatory. + This notification shall be triggered by the VNFM when there is a change + in the VNF lifecycle caused by a VNF LCM operation occurrence, + including: + * Instantiation of the VNF + * Scaling of the VNF instance (including auto-scaling) + * Healing of the VNF instance (including auto-healing) + * Change of the state of the VNF instance (i.e. Operate VNF) + * Change of the deployment flavour of the VNF instance + * Change of the external connectivity of the VNF instance + * Termination of the VNF instance + * Modification of VNF instance information and/or VNF configurable + properties through the "PATCH" method on the "Individual VNF instance" + resource. + If this is the initial notification about the start of a VNF LCM + operation occurrence, it is assumed that the notification is sent by the + VNFM before any action (including sending the grant request) is taken as + part of the LCM operation. Due to possible race conditions, the "start" + notification, the grant request and the LCM operation acknowledgment can + arrive in any order at the NFVO, and the NFVO shall be able to handle + such a situation. + If this is a notification about a final or intermediate result state of + a VNF LCM operation occurrence, the notification shall be sent after + all related actions of the LCM operation that led to this state have + been executed. The new state shall be set in the VnfLcmOpOcc resource + before the notification about the state change is sent. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - notificationStatus + - operationState + - vnfInstanceId + - operation + - isAutomaticInvocation + - vnfLcmOpOccId + - _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: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "VnfLcmOperationOccurrenceNotification" for this notification type. + type: string + enum: + - VnfLcmOperationOccurrenceNotification + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + notificationStatus: + description: > + Indicates whether this notification reports about the start of a + lifecycle operation or the result of a lifecycle operation. + Permitted values: + * START: Informs about the start of the VNF LCM operation + occurrence. + * RESULT: Informs about the final or intermediate result of the VNF + LCM operation occurrence. + type: string + enum: + - START + - RESULT + operationState: + description: > + The state of the VNF LCM operation occurrence. + $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LcmOperationStateType" + vnfInstanceId: + description: > + The identifier of the VNF instance affected. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + operation: + description: > + The lifecycle management operation. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/LcmOperationType" + isAutomaticInvocation: + description: > + Set to true if this VNF LCM operation occurrence has been triggered + by an automated procedure inside the VNFM + (i.e. ScaleVnf / ScaleVnfToLevel triggered by auto-scale, or HealVnf + triggered by auto-heal). + Set to false otherwise. + type: boolean + vnfLcmOpOccId: + description: > + The identifier of the VNF lifecycle management operation occurrence + associated to the notification. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + affectedVnfcs: + description: > + Information about VNFC instances that were affected during the + lifecycle operation. + Shall be present if the "notificationStatus" is set to "RESULT" and + the operation has performed any resource modification. Shall be + absent otherwise. This attribute contains information about the + cumulative changes to virtualised resources that were performed so + far by the VNF LCM operation occurrence and by any of the error + handling procedures for that operation occurrence. + type: array + items: + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/AffectedVnfc" + affectedVirtualLinks: + description: > + Information about VL instances that were affected during the + lifecycle operation. + Shall be present if the "notificationStatus" is set to "RESULT" and + the operation has performed any resource modification. Shall be + absent otherwise. This attribute contains information about the + cumulative changes to virtualised resources that were performed so + far by the VNF LCM operation occurrence and by any of the error + handling procedures for that operation occurrence. + type: array + items: + $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/AffectedVirtualLink" + affectedVirtualStorages: + description: > + Information about virtualised storage instances that were affected + during the lifecycle operation. + Shall be present if the "notificationStatus" is set to "RESULT" and + the operation has performed any resource modification. Shall be + absent otherwise. This attribute contains information about the + cumulative changes to virtualised resources that were performed so + far by the VNF LCM operation occurrence and by any of the error + handling procedures for that operation occurrence. + type: array + items: + $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/AffectedVirtualStorage" + changedInfo: + description: > + Information about the changed VNF instance information, including + changed VNF configurable properties. + Shall be present if the "notificationStatus" is set to "RESULT" and + the operation has performed any changes to VNF instance information, + including VNF configurable properties. + Shall be absent otherwise. + $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfInfoModifications" + changedExtConnectivity: + description: > + Information about changed external connectivity, if this + notification represents the result of a lifecycle operation + occurrence. Shall be present if the "notificationStatus" is set to + "RESULT" and the "operation" is set to "CHANGE_EXT_CONN". + Shall be absent otherwise. + type: array + items: + $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/ExtVirtualLinkInfo" + error: + description: > + Details of the latest error, if one has occurred during executing + the LCM operation. Shall be present if the "operationState" + attribute is "FAILED_TEMP" or "FAILED", and shall be absent + otherwise. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + _links: + description: > + Links to resources related to this notification. + $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnLinks" diff --git a/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml b/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml index ae471f9f..6781459c 100644 --- a/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml +++ b/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml @@ -1,8 +1,8 @@ swagger: "2.0" info: - version: "1.1.1" - title: "DRAFT - SOL002 - VNF Performance Management interface" + version: "1.1.0" + title: "SOL002 - VNF Performance Management interface" description: > DRAFT - SOL002 - VNF Performance Management interface @@ -831,4 +831,4 @@ paths: 500: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" 503: - $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" \ No newline at end of file diff --git a/src/SOL002/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml b/src/SOL002/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml new file mode 100644 index 00000000..d0893f90 --- /dev/null +++ b/src/SOL002/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml @@ -0,0 +1,295 @@ +swagger: "2.0" + +info: + version: "1.1.0" + title: SOL002 - VNF Performance Management Notification interface + description: > + SOL002 - VNF Performance Management Notification interface + + + 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. + + + In clause 4.3.2 of ETSI GS NFV-SOL 002 v2.4.1, an attribute-based + filtering mechanism is defined. This mechanism is currently not + included in the corresponding OpenAPI design for this GS version. Changes + to the attribute-based filtering mechanism are being considered in v2.5.1 + of this GS for inclusion in the corresponding future ETSI NFV OpenAPI + design. + + Please report bugs to https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis&list_id=61&product=NFV&resolution= + license: + name: "ETSI Forge copyright notice" + url: https://forge.etsi.org/etsi-forge-copyright-notice.txt + +externalDocs: + description: ETSI GS NFV-SOL 002 V2.4.1 + url: http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/02.04.01_60/gs_NFV-SOL002v020401p.pdf + +basePath: "/callback/v1" + +schemes: + - https + +consumes: + - "application/json" +produces: + - "application/json" + +paths: + ############################################################################### + # Notification endpoint PerformanceInformationAvailableNotification # + ############################################################################### + '/URI-is-provided-by-the-client-when-creating-the-subscription-PerformanceInformationAvailableNotification': + post: + description: > + Notify + + + The POST method delivers a notification regarding a performance + management event from the server to the client. + parameters: + - name: PerformanceInformationAvailableNotification + description: > + Notification about performance information availability. + in: body + required: true + schema: + $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PerformanceInformationAvailableNotification" + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string + responses: + 204: + description: > + No Content + + The notification was delivered successfully. + headers: + 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 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + 400: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400" + 401: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" + 403: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" + 405: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" + 406: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" + 500: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" + 503: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" + get: + description: > + The GET method allows the server to test the notification endpoint + that is provided by the client, e.g. during subscription. + parameters: + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string + responses: + 204: + description: > + No Content + + The notification endpoint was tested successfully. + headers: + 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 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + 400: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400" + 401: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" + 403: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" + 405: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" + 406: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" + 500: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" + 503: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" + ############################################################################### + # Notification endpoint ThresholdCrossedNotification # + ############################################################################### + '/URI-is-provided-by-the-client-when-creating-the-subscription-ThresholdCrossedNotification': + post: + description: > + Notify + + + The POST method delivers a notification regarding a performance + management event from the server to the client. + parameters: + - name: ThresholdCrossedNotification + description: > + Notification about performance information availability. + in: body + required: true + schema: + $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/ThresholdCrossedNotification" + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string + responses: + 204: + description: > + No Content + + The notification was delivered successfully. + headers: + 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 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + 400: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400" + 401: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" + 403: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" + 405: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" + 406: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" + 500: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" + 503: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" + get: + description: > + The GET method allows the server to test the notification endpoint + that is provided by the client, e.g. during subscription. + parameters: + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string + responses: + 204: + description: > + No Content + + The notification endpoint was tested successfully. + headers: + 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 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + 400: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400" + 401: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" + 403: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" + 405: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" + 406: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" + 500: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" + 503: + $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" \ No newline at end of file diff --git a/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml b/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml index b1d75ff1..e699f48e 100644 --- a/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml +++ b/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml @@ -1,7 +1,7 @@ swagger: "2.0" info: - version: "1.1.1" + version: "1.1.0" title: SOL003 - VNF Fault Management interface description: > SOL003 - VNF Fault Management interface diff --git a/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml b/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml index 7998261a..121347ec 100644 --- a/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml +++ b/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml @@ -1,7 +1,7 @@ swagger: "2.0" info: - version: "1.1.1" + version: "1.1.0" title: SOL003 - VNF Fault Management Notification interface description: > SOL003 - VNF Fault Management Notification interface diff --git a/src/SOL003/VNFIndicator/VNFIndicator.yaml b/src/SOL003/VNFIndicator/VNFIndicator.yaml index ae204ac5..016eb705 100644 --- a/src/SOL003/VNFIndicator/VNFIndicator.yaml +++ b/src/SOL003/VNFIndicator/VNFIndicator.yaml @@ -1,7 +1,7 @@ swagger: "2.0" info: - version: "1.1.1" + version: "1.1.0" title: SOL003 - VNF Indicator interface description: > SOL003 - VNF Indicator interface diff --git a/src/SOL003/VNFIndicatorNotification/VNFIndicatorNotification.yaml b/src/SOL003/VNFIndicatorNotification/VNFIndicatorNotification.yaml index 67455142..fca89598 100644 --- a/src/SOL003/VNFIndicatorNotification/VNFIndicatorNotification.yaml +++ b/src/SOL003/VNFIndicatorNotification/VNFIndicatorNotification.yaml @@ -1,7 +1,7 @@ swagger: "2.0" info: - version: "1.1.1" + version: "1.1.0" title: SOL003 - VNF Indicator Notification interface description: > SOL003 - VNF Indicator Notification interface diff --git a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml index 6e0e395d..2028736a 100644 --- a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -1,7 +1,7 @@ swagger: "2.0" info: - version: "1.1.1" + version: "1.1.0" title: SOL003 - VNF Lifecycle Management interface description: > SOL003 - VNF Lifecycle Management interface definition diff --git a/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml b/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml index eda2225d..a70656fa 100644 --- a/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml +++ b/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml @@ -1,7 +1,7 @@ swagger: "2.0" info: - version: "1.1.1" + version: "1.1.0" title: SOL003 - VNF Lifecycle Management Notification interface description: > SOL003 - VNF Lifecycle Management Notification interface diff --git a/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml b/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml index 62b6a73b..64730e66 100644 --- a/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml +++ b/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml @@ -1,7 +1,7 @@ swagger: "2.0" info: - version: "1.1.1" + version: "1.1.0" title: SOL003 - VNF Lifecycle Operation Granting interface description: > SOL003 - VNF Lifecycle Operation Granting interface diff --git a/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml b/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml index 27d7f3be..3ede7efb 100644 --- a/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml +++ b/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml @@ -1,7 +1,7 @@ swagger: "2.0" info: - version: "1.1.1" + version: "1.1.0" title: SOL003 - VNF Package Management interface description: > SOL003 - VNF Package Management interface diff --git a/src/SOL003/VNFPackageManagementNotification/VNFPackageManagementNotification.yaml b/src/SOL003/VNFPackageManagementNotification/VNFPackageManagementNotification.yaml index 517ef879..6683654b 100644 --- a/src/SOL003/VNFPackageManagementNotification/VNFPackageManagementNotification.yaml +++ b/src/SOL003/VNFPackageManagementNotification/VNFPackageManagementNotification.yaml @@ -1,7 +1,7 @@ swagger: "2.0" info: - version: "1.1.1" + version: "1.1.0" title: SOL003 - VNF Package Management Notification interface description: > SOL003 - VNF Package Management Notification interface diff --git a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml index cecaedae..0b42376a 100644 --- a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml +++ b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml @@ -1,7 +1,7 @@ swagger: "2.0" info: - version: "1.1.1" + version: "1.1.0" title: SOL003 - VNF Performance Management interface description: > SOL003 - VNF Performance Management interface diff --git a/src/SOL003/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml b/src/SOL003/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml index 163097ea..6e542e48 100644 --- a/src/SOL003/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml +++ b/src/SOL003/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml @@ -1,7 +1,7 @@ swagger: "2.0" info: - version: "1.1.1" + version: "1.1.0" title: SOL003 - VNF Performance Management Notification interface description: > SOL003 - VNF Performance Management Notification interface diff --git a/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/VirtualisedResourcesQuotaAvailableNotification.yaml b/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/VirtualisedResourcesQuotaAvailableNotification.yaml index 61dec28d..7ecc490f 100644 --- a/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/VirtualisedResourcesQuotaAvailableNotification.yaml +++ b/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/VirtualisedResourcesQuotaAvailableNotification.yaml @@ -1,7 +1,7 @@ swagger: "2.0" info: - version: "1.1.1" + version: "1.1.0" title: SOL003 - Virtualised Resources Quota Available Notification interface description: > SOL003 - Virtualised Resources Quota Available Notification interface diff --git a/src/SOL003/VirtualisedResourcesQuotaAvailableNotificationNotification/VirtualisedResourcesQuotaAvailableNotificationNotification.yaml b/src/SOL003/VirtualisedResourcesQuotaAvailableNotificationNotification/VirtualisedResourcesQuotaAvailableNotificationNotification.yaml index f80576eb..48d0b12d 100644 --- a/src/SOL003/VirtualisedResourcesQuotaAvailableNotificationNotification/VirtualisedResourcesQuotaAvailableNotificationNotification.yaml +++ b/src/SOL003/VirtualisedResourcesQuotaAvailableNotificationNotification/VirtualisedResourcesQuotaAvailableNotificationNotification.yaml @@ -1,7 +1,7 @@ swagger: "2.0" info: - version: "1.1.1" + version: "1.1.0" title: SOL003 - Virtualised Resources Quota Available Notification Notification interface description: > SOL003 - Virtualised Resources Quota Available Notification Notification interface diff --git a/src/definitions/SOL002SOL003_def.yaml b/src/definitions/SOL002SOL003_def.yaml index 743226cb..b3b804f2 100644 --- a/src/definitions/SOL002SOL003_def.yaml +++ b/src/definitions/SOL002SOL003_def.yaml @@ -805,4 +805,168 @@ definitions: alternative should be chosen. type: array items: - type: string + type: string + + Alarm: + description: > + The alarm data type encapsulates information about an alarm. + type: object + required: + - id + - managedObjectId + - rootCauseFaultyResource + - alarmRaisedTime + - ackState + - perceivedSeverity + - eventTime + - eventType + - probableCause + - isRootCause + - _links + properties: + id: + description: > + Identifier of this Alarm information element. + $ref: "#/definitions/Identifier" + managedObjectId: + description: > + Identifier of the affected VNF instance. + $ref: "#/definitions/Identifier" + rootCauseFaultyResource: + description: > + The virtualised resources that are causing the VNF fault. + $ref: "SOL002SOL003VNFFaultManagement_def.yaml#/definitions/FaultyResourceInfo" + alarmRaisedTime: + description: > + Time stamp indicating when the alarm is raised by the managed + object. + $ref: "#/definitions/DateTime" + alarmChangedTime: + description: > + Time stamp indicating when the alarm was last changed. It shall be + present if the alarm has been updated. + $ref: "#/definitions/DateTime" + alarmClearedTime: + description: > + Time stamp indicating when the alarm was cleared. It shall be + present if the alarm has been cleared. + $ref: "#/definitions/DateTime" + ackState: + description: > + Acknowledgement state of the alarm. + Permitted values: + * UNACKNOWLEDGED + * ACKNOWLEDGED. + type: string + enum: + - UNACKNOWLEDGED + - ACKNOWLEDGED + perceivedSeverity: + description: > + Perceived severity of the managed object failure. + $ref: "SOL002SOL003VNFFaultManagement_def.yaml#/definitions/PerceivedSeverityType" + eventTime: + description: > + Time stamp indicating when the fault was observed. + $ref: "#/definitions/DateTime" + eventType: + description: > + Type of event. + $ref: "SOL002SOL003VNFFaultManagement_def.yaml#/definitions/EventType" + faultType: + description: > + Additional information to clarify the type of the fault. + type: string + probableCause: + description: > + Information about the probable cause of the fault. + type: string + isRootCause: + description: > + Attribute indicating if this fault is the root for other correlated + alarms. If TRUE, then the alarms listed in the attribute + CorrelatedAlarmId are caused by this fault. + type: boolean + correlatedAlarmIds: + description: > + List of identifiers of other alarms correlated to this fault. + type: array + items: + $ref: "#/definitions/Identifier" + faultDetails: + description: > + Provides additional information about the fault. + type: array + items: + type: string + _links: + description: > + Links for this resource. + type: object + required: + - self + properties: + self: + description: > + URI of this resource. + $ref: "#/definitions/Link" + objectInstance: + description: > + Link to the resource representing the VNF instance to which the + notified alarm is correlated. Shall be present if the VNF + instance information is accessible as a resource. + $ref: "#/definitions/Link" + + AlarmNotification: + description: > + This type represents an alarm notification about VNF faults. + This notification shall be triggered by the VNFM when: + * An alarm has been created. + * An alarm has been updated, e.g. if the severity of the alarm has + changed. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - alarm + - _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: "#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "AlarmNotification" for this notification type. + type: string + enum: + - AlarmNotification + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "#/definitions/DateTime" + alarm: + description: > + Information about an alarm including AlarmId, affected VNF + identifier, and FaultDetails. + $ref: "#/definitions/Alarm" + _links: + description: > + Links to resources related to this notification. + type: object + required: + - subscription + properties: + subscription: + description: > + Link to the related subscription. + $ref: "#/definitions/Link" \ No newline at end of file -- GitLab