From d776406c40efb0a7fff197759e59a4be120e2019 Mon Sep 17 00:00:00 2001 From: Francesca Moscatelli Date: Mon, 17 Aug 2020 17:05:07 +0200 Subject: [PATCH] Fixes in datatypes --- .../VNFLifecycleManagement.yaml | 6 +- .../SOL002VNFLifecycleManagement_def.yaml | 233 +++++++++++++++++- 2 files changed, 235 insertions(+), 4 deletions(-) diff --git a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml index 8921864c..1152191e 100644 --- a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -1925,7 +1925,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfLcmOpOcc" + $ref: ./definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/VnfLcmOpOcc IndividualVnfLcmOpOcc.Get: description: | @@ -1956,7 +1956,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfLcmOpOcc" + $ref: ./definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/VnfLcmOpOcc VnfLcmOpOccRetry.Post: description: | @@ -2031,7 +2031,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfLcmOpOcc" + $ref: ./definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/VnfLcmOpOcc VnfLcmOpOccCancel.Post: description: | diff --git a/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml b/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml index e44efc4a..203786b0 100644 --- a/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml +++ b/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml @@ -1371,4 +1371,235 @@ definitions: Metadata about this resource. The content of this attribute shall be a copy of the content of the "metadata" attribute of the VirtualStorageResourceInfo structure. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" \ No newline at end of file + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + + VnfLcmOpOcc: + description: > + This type represents a VNF lifecycle management operation occurrence. Shall be set to the value of the "id" + attribute in the "Grant" representing the associated "Individual Grant", if such grant exists. + type: object + oneOf: + - required: + - changedInfo + - required: + - modificationsTriggeredByVnfPkgChange + required: + - id + - operationState + - stateEnteredTime + - startTime + - vnfInstanceId + - operation + - isAutomaticInvocation + - isCancelPending + properties: + id: + description: > + Identifier of this VNF lifecycle management operation occurrence. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + operationState: + description: > + The state of the LCM operation. + $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LcmOperationStateType" + stateEnteredTime: + description: > + Date-time when the current state has been entered. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + startTime: + description: > + Date-time of the start of the operation. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + vnfInstanceId: + description: > + Identifier of the VNF instance to which the operation applies + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + grantId: + description: > + Identifier of the grant related to this VNF LCM operation + occurrence. Shall be set to the value of the "id" attribute + in the "Grant" representing the associated "Individual Grant", + if such grant exists. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + operation: + description: > + Type of the actual LCM operation represented by this VNF LCM + operation occurrence. + $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. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Boolean" + operationParams: + description: > + Input parameters of the LCM operation. This attribute shall be + formatted according to the request data type of the related LCM + operation. The following mapping between operationType and the + data type of this attribute shall apply: + * INSTANTIATE: InstantiateVnfRequest + * SCALE: ScaleVnfRequest + * SCALE_TO_LEVEL: ScaleVnfToLevelRequest + * CHANGE_FLAVOUR: ChangeVnfFlavourRequest + * OPERATE: OperateVnfRequest + * HEAL: HealVnfRequest + * CHANGE_EXT_CONN: ChangeExtVnfConnectivityRequest + * TERMINATE: TerminateVnfRequest + * MODIFY_INFO: VnfInfoModifications + * CREATE_SNAPSHOT: CreateVnfSnapshotRequest + * REVERT_TO_SNAPSHOT: RevertToVnfSnapshotRequest + * CHANGE_VNFPKG: ChangeCurrentVnfPkgRequest + type: object + isCancelPending: + description: > + If the VNF LCM operation occurrence is in "STARTING", "PROCESSING" + or "ROLLING_BACK" state and the operation is being cancelled, this + attribute shall be set to true. Otherwise, it shall be set to false. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Boolean" + cancelMode: + description: > + The mode of an ongoing cancellation. Shall be present when + isCancelPending=true, and shall be absent otherwise. + $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/CancelModeType" + error: + description: > + If "operationState" is "FAILED_TEMP" or "FAILED" or "operationState" + is "PROCESSING" or "ROLLING_BACK" and previous value of + "operationState" was "FAILED_TEMP", this attribute shall be present + and contain error information, unless it has been requested to be + excluded via an attribute selector. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + resourceChanges: + description: > + This attribute contains information about the cumulative changes to + virtualised resources that were performed so far by the LCM + operation since its start, if applicable. + type: object + properties: + affectedVnfcs: + description: > + Information about VNFC instances that were affected during the + lifecycle operation. + This allows the API consumer to obtain the information contained in + the latest "result" notification if it has not received it due to an + error or a wrongly configured subscription filter. + type: array + items: + $ref: "#/definitions/AffectedVnfc" + affectedVirtualLinks: + description: > + Information about VL instances that were affected during the + lifecycle operation. + This allows the API consumer to obtain the information contained in + the latest "result" notification if it has not received it due to an + error or a wrongly configured subscription filter. + For a particular affected VL, there shall be as many "AffectedVirtualLink" + entries as needed for signalling the different types of changes, i.e., + one per virtual link and change type. For instance, in the case of + signaling affected VL instances involving the addition of a particular VL + instance with links ports, one "AffectedVirtualLink" entry signals the + addition of the VL by using the "changeType" attribute of "AffectedVirtualLink" + structure equal to "ADDED", and another "AffectedVirtualLink" entry signals + the addition of VNF link ports of the VL by using the "changeType" equal to + "LINK_PORT_ADDED". + type: array + items: + $ref: "#/definitions/AffectedVirtualLink" + affectedExtLinkPorts: + description: > + Information about external VNF link ports that were affected during the lifecycle operation. This allows + the API consumer to obtain the information contained in the latest "result" notification if it has not + received it due to an error or a wrongly configured subscription filter. + type: array + items: + $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/AffectedExtLinkPort" + affectedVirtualStorages: + description: > + Information about virtualised storage instances that were affected + during the lifecycle operation. + This allows the API consumer to obtain the information contained + in the latest "result" notification if it has not received it due to + an error or a wrongly configured subscription filter. + type: array + items: + $ref: "#/definitions/AffectedVirtualStorage" + changedInfo: + description: > + Information about the changed VNF instance information, including + VNF configurable properties, if applicable. + This allows the NFVO to obtain the information contained in the + latest "result" notification if it has not received it due to an + error or a wrongly configured subscription filter. + $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfInfoModifications" + changedExtConnectivity: + description: > + Information about changed external connectivity, if applicable. + This allows the NFVO to obtain the information contained in the + latest "result" notification if it has not received it due to an + error or a wrongly configured subscription filter. + type: array + items: + $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/ExtVirtualLinkInfo" + modificationsTriggeredByVnfPkgChange: + description: > + Information about performed changes of "VnfInstance" attributes triggered by changing the current VNF package, + if applicable. Shall be absent if the "operation" attribute is different from "CHANGE_VNFPKG". + This allows the API consumer to obtain the information contained in the latest "result" notification if it has + not received it due to an error or a wrongly configured subscription filter. + Not more than one of changedInfo and modificationsTriggeredByVnfPkgChange shall be present. + $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/ModificationsTriggeredByVnfPkgChange" + vnfSnapshotInfoId: + description: > + Identifier of the "individual VNF snapshot" resource. Shall be present if applicable to the type of LCM operation, + i.e., if the value of the "operation" attribute is either "CREATE_SNAPSHOT" or "REVERT_TO_SNAPSHOT". + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + _links: + description: > + Links to resources related to this resource. + type: object + required: + - self + - vnfInstance + 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" + grant: + description: > + Link to the grant for this operation, if one exists. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + cancel: + description: > + Link to the task resource that represents the "cancel" operation + for this VNF LCM operation occurrence, if cancelling is + currently allowed. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + retry: + description: > + Link to the task resource that represents the "retry" operation + for this VNF LCM operation occurrence, if retrying is currently + allowed. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + rollback: + description: > + Link to the task resource that represents the "rollback" + operation for this VNF LCM operation occurrence, if rolling back + is currently allowed. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + fail: + description: > + Link to the task resource that represents the "fail" operation + for this VNF LCM operation occurrence, if declaring as failed is + currently allowed. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + vnfSnapshot: + description: > + Link to the VNF snapshot resource, if the VNF LCM operation occurrence is related to a VNF snapshot. + Shall be present if operation="CREATE_SNAPSHOT" or operation="REVERT_TO_SNAPSHOT". + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" \ No newline at end of file -- GitLab