diff --git a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml index ba9dc9b1d75a1678327c271393ee59bca57b4559..1152191e0a211980149c88b774f6f55869de318c 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 99ab726ea9eb58fd1980a0b1877b40eea7d74216..47a478be187c60c1d1173f987f89beec7aa38810 100644 --- a/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml +++ b/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml @@ -159,7 +159,7 @@ definitions: multi-site VL instance (refer to clause 5.5.3.5). type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/ExtManagedVirtualLinkInfo" + $ref: "#/definitions/ExtManagedVirtualLinkInfo" monitoringParameters: description: > Active monitoring parameters. @@ -180,20 +180,20 @@ definitions: by the VNFCs of the VNF instance. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfcResourceInfo" + $ref: "#/definitions/VnfcResourceInfo" vnfVirtualLinkResourceInfo: description: > Information about the virtualised network resources used by the VLs of the VNF instance. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfVirtualLinkResourceInfo" + $ref: "#/definitions/VnfVirtualLinkResourceInfo" vnfVirtualStorageResourceInfo: description: > Information on the virtualised storage resource(s) used as storage for the VNF instance. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VirtualStorageResourceInfo" + $ref: "#/definitions/VirtualStorageResourceInfo" vnfcInfo: description: > Information about the VNFC instances. @@ -353,7 +353,7 @@ definitions: externally-managed internal VLs are managed by the NFVO and created towards the VIM. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ExtManagedVirtualLinkData" + $ref: "#/definitions/ExtManagedVirtualLinkData" localizationLanguage: description: > Localization language of the VNF to be instantiated. The value shall @@ -410,7 +410,7 @@ definitions: externally-managed internal VLs are managed by the NFVO and created towards the VIM. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ExtManagedVirtualLinkData" + $ref: "#/definitions/ExtManagedVirtualLinkData" additionalParams: description: > Additional input parameters for the instantiation process, specific @@ -591,7 +591,7 @@ definitions: externally-managed internal VLs are managed by the NFVO and created towards the VIM. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ExtManagedVirtualLinkData" + $ref: "#/definitions/ExtManagedVirtualLinkData" additionalParams: description: > Additional parameters passed by the EM as input to the process, specific to the VNF of which the underlying @@ -898,4 +898,717 @@ definitions: type: string enum: - FORCEFUL - - GRACEFUL \ No newline at end of file + - GRACEFUL + + ExtManagedVirtualLinkData: + type: object + required: + - id + - virtualLinkDescId + - resourceId + properties: + id: + description: > + The identifier of the externally-managed internal VL instance. The + identifier is assigned by the NFV-MANO entity that manages this VL + instance. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + vnfVirtualLinkDescId: + description: > + The identifier of the VLD in the VNFD for this VL. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + vimConnectionId: + description: > + Identifier of the VIM connection to manage this resource. This + attribute shall only be supported and present if VNF-related + resource management in direct mode is applicable. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + resourceProviderId: + description: > + Identifies the entity responsible for the management of this + resource. This attribute shall only be supported and present if + VNF-related resource management in indirect mode is applicable. The + identification scheme is outside the scope of the present document. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + resourceId: + description: > + The identifier of the resource in the scope of the VIM or the + resource provider. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVim" + vnfLinkPort: + description: > + Externally provided link ports to be used to connect VNFC connection points to this externally-managed VL + on this network resource. If this attribute is not present, the VNFM shall create the link ports on the + externally-managed VL. + type: array + items: + $$ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/VnfLinkPortData" + + ExtManagedVirtualLinkInfo: + type: object + required: + - id + - vnfVirtualLinkDescId + - networkResource + properties: + id: + description: > + Identifier of the externally-managed internal VL and the related + externally-managed VL information instance. + The identifier is assigned by the NFV-MANO entity that manages this + VL instance. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + vnfVirtualLinkDescId: + description: > + Identifier of the VNF Virtual Link Descriptor (VLD) in the VNFD. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + vnfdId: + description: > + Identifier of the VNFD. + Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change + current VNF package" operation or due to its final failure). + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + networkResource: + description: > + Reference to the VirtualNetwork resource providing this VL. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + vnfLinkPorts: + description: > + Link ports of this VL. + type: array + items: + $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfLinkPortInfo" + + VnfcResourceInfo: + description: > + This type represents the information on virtualised compute and storage + resources used by a VNFC in a VNF instance. + type: object + required: + - id + - vduId + - computeResource + properties: + id: + description: > + Identifier of this VnfcResourceInfo instance. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + vduId: + description: > + Reference to the applicable VDU in the VNFD. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + vnfdId: + description: > + Identifier of the VNFD. + Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change + current VNF package" operation or due to its final failure). + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + computeResource: + description: > + Reference to the VirtualCompute resource. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + storageResourceIds: + description: > + References to the VirtualStorage resources. The value refers to a + VirtualStorageResourceInfo item in the VnfInstance. + type: array + items: + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + reservationId: + description: > + The reservation identifier applicable to the resource. It shall be + present when an applicable reservation exists. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + vnfcCpInfo: + description: > + All the CPs of the VNFC instance. + Shall be present when that particular CP of the VNFC instance is exposed as an external CP of the VNF instance + or is connected to an external CP of the VNF instance. + A VNFC CP is "connected to" an external CP if the VNFC CP is connected to an internal VL that exposes an external CP. + A VNFC CP is "exposed as" an external CP if it is connected directly to an external VL. + May be present otherwise. + type: array + items: + type: object + required: + - id + - cpdId + properties: + id: + description: > + Identifier of this VNFC CP instance and the associated array + entry. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + cpdId: + description: > + Identifier of the VDU CPD, cpdId, in the VNFD. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + vnfExtCpId: + description: > + Identifier of the related external CP. Shall be present when the VNFC CP is exposed as an external CP of + the VNF instance or connected to an external CP of the VNF instance (see note) and shall be absent otherwise. + + NOTE: A VNFC CP is "connected to" an external CP if the VNFC CP is connected to an internal VL that exposes + an external CP. A VNFC CP is "exposed as" an external CP if it is connected directly to an external VL. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + cpProtocolInfo: + description: > + Network protocol information for this CP. May be omitted if the VNFC CP is exposed as an external CP. + The information can be omitted because it is already available as part of the external CP information. + type: array + items: + $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/CpProtocolInfo" + vnfLinkPortId: + description: > + Identifier of the "VnfLinkPortInfo" structure in the "VnfVirtualLinkResourceInfo" structure. Shall be present if + the CP is associated to a link port on an internal VL of the VNF instance and shall be absent otherwise. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + metadata: + description: > + Metadata about this CP. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + metadata: + description: > + Metadata about this resource. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + + VnfVirtualLinkResourceInfo: + description: > + This type represents the information that allows addressing a virtualised + resource that is used by an internal VL instance in a VNF instance. + type: object + required: + - id + - vnfVirtualLinkDescId + - networkResource + properties: + id: + description: > + Identifier of this VnfVirtualLinkResourceInfo instance. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + vnfVirtualLinkDescId: + description: > + Identifier of the VNF Virtual Link Descriptor (VLD) in the VNFD. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + vnfdId: + description: > + Identifier of the VNFD. + Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change + current VNF package" operation or due to its final failure). + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + networkResource: + description: > + Reference to the VirtualNetwork resource. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + reservationId: + description: > + The reservation identifier applicable to the resource. It shall be + present when an applicable reservation exists. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + vnfLinkPorts: + description: > + Links ports of this VL. + Shall be present when the linkPort is used for external connectivity + by the VNF (refer to VnfLinkPortInfo). + May be present otherwise. + type: array + items: + $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfLinkPortInfo" + metadata: + description: > + Metadata about this resource. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + + VirtualStorageResourceInfo: + description: > + This type represents the information that allows addressing a virtualised + resource that is used by a VNF instance. + type: object + required: + - id + - virtualStorageDescId + - storageResource + properties: + id: + description: > + Identifier of this VirtualStorageResourceInfo instance. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + virtualStorageDescId: + description: > + Identifier of the VirtualStorageDesc in the VNFD. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + vnfdId: + description: > + Identifier of the VNFD. + Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change + current VNF package" operation or due to its final failure). + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + storageResource: + description: > + Reference to the VirtualStorage resource. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + reservationId: + description: > + The reservation identifier applicable to the resource. It shall be + present when an applicable reservation exists. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + metadata: + description: > + Metadata about this resource. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + + AffectedVnfc: + description: > + This type provides information about added, deleted, modified and + temporary VNFCs. + type: object + required: + - id + - vduId + - changeType + - computeResource + properties: + id: + description: > + Identifier of the Vnfc instance, identifying the applicable + "vnfcResourceInfo" entry in the "VnfInstance" data type. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + vduId: + description: > + Identifier of the related VDU in the VNFD. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + vnfdId: + description: > + Identifier of the VNFD. + Shall be present in case of a "change current VNF Package" to identify whether the affected VNFC instance is + associated to a VDU which is referred from the source or destination VNFD. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + changeType: + description: > + Signals the type of change. Permitted values: + * ADDED + * REMOVED + * MODIFIED + * TEMPORARY + For a temporary resource, an AffectedVnfc structure exists as long + as the temporary resource exists. + type: string + enum: + - ADDED + - REMOVED + - MODIFIED + - TEMPORARY + computeResource: + description: > + Reference to the VirtualCompute resource. Detailed information is + (for new and modified resources) or has been (for removed + resources) available from the VIM. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + resourceDefinitionId: + description: > + The identifier of the "ResourceDefinition" in the granting exchange + related to the LCM operation occurrence. It shall be present when + an applicable GrantInfo for thegranted resource exists. See note. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierLocal" + metadata: + description: > + Metadata about this resource. + The content of this attribute shall be a copy of the content of the + "metadata" attribute of the VnfcResourceInfo structure. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + affectedVnfcCpIds: + description: > + Identifiers of CP(s) of the VNFC instance that were affected by the + change. + Shall be present for those affected CPs of the VNFC instance that + are associated to an external CP of the VNF instance. + May be present for further affected CPs of the VNFC instance. + type: array + items: + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + addedStorageResourceIds: + description: > + References to VirtualStorage resources that have been added. Each + value refers to a VirtualStorageResourceInfo item in the + VnfInstance that was added to the VNFC. It shall be provided if at + least one storage resource was added to the VNFC. + type: array + items: + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + removedStorageResourceIds: + description: > + References to VirtualStorage resources that have been removed. + The value contains the identifier of a VirtualStorageResourceInfo + item that has been removed from the VNFC, and might no longer exist + in the VnfInstance. + It shall be provided if at least one storage resource was removed + from the VNFC. + type: array + items: + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + + 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" + + AffectedVirtualLink: + description: > + This type provides information about added, deleted, modified and + temporary VLs, and added or removed VNF link ports. + type: object + required: + - id + - vnfVirtualLinkDescId + - changeType + - networkResource + properties: + id: + description: > + Identifier of the virtual link instance, identifying the applicable + "vnfVirtualLinkResourceInfo" entry in the "VnfInstance" data type. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + vnfVirtualLinkDescId: + description: > + Identifier of the related VLD in the VNFD. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + vnfdId: + description: > + Identifier of the VNFD. + Shall be present in case of a "change current VNF Package" to identify whether the affected VL instance is + associated to a VLD which is referred from the source or destination VNFD. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + changeType: + description: > + Signals the type of change. Permitted values: + * ADDED + * REMOVED + * MODIFIED + * TEMPORARY + * LINK_PORT_ADDED + * LINK_PORT_REMOVED + For a temporary resource, an AffectedVirtualLink structure exists as + long as the temporary resource exists. + When signalling the addition (LINK_PORT_ADDED) or removal (LINK_PORT_REMOVED) of VNF link ports, the + "networkResource" attribute refers to the affected virtual link instance, not the link port instance. + The resource handles of the affected VNF link ports can be found by dereferencing the identifiers in the + "vnfLinkPortIds" attribute. + type: string + enum: + - ADDED + - REMOVED + - MODIFIED + - TEMPORARY + - LINK_PORT_ADDED + - LINK_PORT_REMOVED + networkResource: + description: > + Reference to the VirtualNetwork resource. Detailed information is + (for new and modified resources) or has been (for removed + resources) available from the VIM. + When signalling the addition (LINK_PORT_ADDED) or removal (LINK_PORT_REMOVED) of VNF link ports, the + "networkResource" attribute refers to the affected virtual link instance, not the link port instance. + The resource handles of the affected VNF link ports can be found by dereferencing the identifiers in + the "vnfLinkPortIds" attribute. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + vnfLinkPortIds: + description: > + Identifiers of the link ports of the affected VL (reference to the vnfLinkPortInfo) related to the change. + Each identifier references a "VnfLinkPortInfo" structure. + Shall be set when changeType is equal to "LINK_PORT_ADDED" or "LINK_PORT_REMOVED", and the related + “VnfLinkPortInfo” structures are present (case "added") or have been present (case "removed") in the + “VnfVirtualLinkResourceInfo” or "ExtManagedVirtualLinkInfo" structures that are represented by the + "vnfVirtualLinkResourceInfo" or "extManagedVirtualLinkInfo" attribute in the "VnfInstance" structure. + When signalling the addition (LINK_PORT_ADDED) or removal (LINK_PORT_REMOVED) of VNF link ports, the + "networkResource" attribute refers to the affected virtual link instance, not the link port instance. + The resource handles of the affected VNF link ports can be found by dereferencing the identifiers in the + "vnfLinkPortIds" attribute. + type: array + items: + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + metadata: + description: > + Metadata about this resource. + The content of this attribute shall be a copy of the content of the + "metadata" attribute of the VnfVirtualLinkResourceInfo structure. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + + AffectedVirtualStorage: + description: > + This type provides information about added, deleted, modified and + temporary virtual storage resources. + type: object + required: + - id + - virtualStorageDescId + - changeType + - storageResource + properties: + id: + description: > + Identifier of the storage instance, identifying the applicable + "virtualStorageResourceInfo" entry in the "VnfInstance" data type. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + virtualStorageDescId: + description: > + Identifier of the related VirtualStorage descriptor in the VNFD. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + vnfdId: + description: > + Identifier of the VNFD. + Shall be present in case of a "change current VNF Package" to identify whether the affected virtual storage + instance is associated to a VirtualStorage descriptor which is referred from the source or destination VNFD. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + changeType: + description: > + Signals the type of change. Permitted values: + * ADDED + * REMOVED + * MODIFIED + * TEMPORARY + For a temporary resource, an AffectedVirtualStorage structure exists + as long as the temporary resource exists. + type: string + enum: + - ADDED + - REMOVED + - MODIFIED + - TEMPORARY + storageResource: + description: > + Reference to the VirtualStorage resource. Detailed information is + (for new and modified resources) or has been (for removed + resources) available from the VIM. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + metadata: + description: > + 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 diff --git a/src/SOL002/VNFLifecycleManagementNotification/definitions/SOL002VNFLifecycleManagementNotification_def.yaml b/src/SOL002/VNFLifecycleManagementNotification/definitions/SOL002VNFLifecycleManagementNotification_def.yaml index 34df7c9db3c32f40e1d784006016ee335972ccf8..8ef457ade4c2e297d7a136a33cbfee45efee7157 100644 --- a/src/SOL002/VNFLifecycleManagementNotification/definitions/SOL002VNFLifecycleManagementNotification_def.yaml +++ b/src/SOL002/VNFLifecycleManagementNotification/definitions/SOL002VNFLifecycleManagementNotification_def.yaml @@ -102,6 +102,12 @@ definitions: triggered by auto-heal). Set to false otherwise. type: boolean + verbosity: + description: > + This attribute signals the verbosity of the notification. If it is not present, it shall default to the value "FULL". + If the value is "SHORT", full change details can be obtained by performing a GET request on the "Individual LCM + operation occurrence" resource that is signalled by the "vnfLcmOpOcc" child attribute of the "_links" attribute. + $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LcmOpOccNotificationVerbosityType" vnfLcmOpOccId: description: > The identifier of the VNF lifecycle management operation occurrence @@ -119,7 +125,7 @@ definitions: handling procedures for that operation occurrence. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/AffectedVnfc" + $ref: "../../VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/AffectedVnfc" affectedVirtualLinks: description: > Information about VL instances that were affected during the @@ -132,7 +138,17 @@ definitions: handling procedures for that operation occurrence. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/AffectedVirtualLink" + $ref: "../../VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/AffectedVirtualLink" + affectedExtLinkPorts: + description: > + Information about external VNF link ports that were affected during the lifecycle operation. + Shall be present if the "notificationStatus" is set to "RESULT", the "verbosity" attribute is set to "FULL" + 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/AffectedExtLinkPort" affectedVirtualStorages: description: > Information about virtualised storage instances that were affected @@ -145,7 +161,7 @@ definitions: handling procedures for that operation occurrence. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/AffectedVirtualStorage" + $ref: "../../VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/AffectedVirtualStorage" changedInfo: description: > Information about the changed VNF instance information, including @@ -166,6 +182,13 @@ definitions: 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. + Shall be present if the "notificationStatus" is set to "RESULT", the "operation" attribute is equal to + "CHANGE_VNFPKG", the "verbosity" attribute is set to "FULL" 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/ModificationsTriggeredByVnfPkgChange" error: description: > Details of the latest error, if one has occurred during executing diff --git a/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml b/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml index 58dff3c4994ee0b5f3ed3e137c7556f61352a3af..a21e26f8c0041fca4038d2cf9d1040cac4fc33e7 100644 --- a/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml +++ b/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml @@ -1331,12 +1331,12 @@ definitions: in the "Individual VNF lifecycle management operation occurrence" and the "id" in the "Individual Grant". $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierLocal" - zoneId: - description: > - The identifier of the resource zone, as managed by the resource - management layer (typically, the VIM), where the referenced VirtualNetwork - resource is placed. Shall be provided if this information is available from the VIM. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" + zoneId: + description: > + The identifier of the resource zone, as managed by the resource + management layer (typically, the VIM), where the referenced VirtualNetwork + resource is placed. Shall be provided if this information is available from the VIM. + $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" metadata: description: > Metadata about this resource.