SOL005NSLifecycleManagementNotification_def.yaml 16.6 KB
Newer Older
# Copyright (c) ETSI 2017.
# https://forge.etsi.org/etsi-forge-copyright-notice.txt
definitions:
  NsLcmOperationOccurrenceNotification:
    type: object
    required:
      - id
      - nsInstanceId
      - nsLcmOpOccId
      - operation
      - notificationType
      - subscriptionId
      - timestamp
      - notificationStatus
      - operationState
      - isAutomaticInvocation
      - _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/SOL005_def.yaml#/definitions/Identifier"
      nsInstanceId:
        description: >
          The identifier of the NS instance affected.
        $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
      nsLcmOpOccId:
        description: >
          The identifier of the NS lifecycle operation occurrence
          associated to the notification.
        $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
      operation:
        description: >
          The lifecycle operation.
        $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsLcmOpType"
      notificationType:
        description: >
          Discriminator for the different notification types. Shall be
          set to "NsLcmOperationOccurrenceNotification" for this
          notification type.
        type: string
      subscriptionId:
        description: >
          Identifier of the subscription that this notification relates to.
        $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
      timestamp:
        description: >
          Date-time of the generation of the notification.
        $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime"
      notificationStatus:
        description: >
          Indicates whether this notification reports about the start
          of a NS lifecycle operation or the result of a NS lifecycle
          operation.
          Permitted values:
          - START: Informs about the start of the NS LCM
          operation occurrence.
          - RESULT: Informs about the final or intermediate
          result of the NS LCM operation occurrence.
        type: string
        enum:
          - START
          - RESULT
      operationState:
        description: >
          The state of the NS lifecycle operation occurrence.
        $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsLcmOperationStateType"
      isAutomaticInvocation:
        description: >
          Set to true if this NS LCM operation occurrence has
          been automatically triggered by the NFVO. This occurs
          in case of auto-scaling, auto-healing and when a nested
          NS is modified as a result of an operation on its
          composite NS. Set to false otherwise.
        $ref: "../../definitions/SOL005_def.yaml#/definitions/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 "nsLcmOpOcc" child attribute
          of the "_links" attribute.
        $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LcmOpOccNotificationVerbosityType"
      affectedVnf:
        description: >
          Information about the VNF instances 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 NS LCM
          operation occurrence and by any of the error handling procedures for that operation occurrence.
        type: array
        items:
          $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedVnf"
      affectedPnf:
        description: >
          Information about the PNF instances 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 NS LCM
          operation occurrence and by any of the error handling procedures for that operation occurrence.
        type: array
        items:
          $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedPnf"
      affectedVl:
        description: >
          Information about the VL instances 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 NS LCM
          operation occurrence and by any of the error handling procedures for that operation occurrence.
        type: array
        items:
          $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedVirtualLink"
      affectedVnffg:
        description: >
          Information about the VNFFG instances 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 NS LCM
          operation occurrence and by any of the error handling procedures for that operation occurrence.
        type: array
        items:
          $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedVnffg"
      affectedNs:
        description: >
          Information about the SAP instances 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 NS LCM
          operation occurrence and by any of the error handling procedures for that operation occurrence.
        type: array
        items:
          $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedNs"
      affectedSap:
        description: >
          Information about the SAP instances 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 NS LCM
          operation occurrence and by any of the error handling procedures for that operation occurrence.
        type: array
        items:
          $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedSap"
      error:
        description: >
          Details of the latest error, if one has occurred during
          executing the LCM operation (see clause 6.3 of ETSI GS NFV SOL 013).
          Shall be present if operationState is "FAILED_TEMP" or
          "FAILED", and shall be absent otherwise.
        $ref: "../../definitions/SOL005_def.yaml#/definitions/ProblemDetails"
      _links:
        description: >
          Links to resources related to this notification.
        $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LccnLinks"

  NsIdentifierCreationNotification:
    type: object
    required:
      - id
      - notificationType
      - subscriptionId
      - nsInstanceId
    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/SOL005_def.yaml#/definitions/Identifier"
      notificationType:
        description: >
          Discriminator for the different notification types.
          Shall be set to "NsIdentifierDeletionNotification" for this
          notification type.
        type: string
      subscriptionId:
        description: >
          Identifier of the subscription that this notification relates to.
        $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
      timestamp:
        description: >
          Date-time of the generation of the notification.
        $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime"
      nsInstanceId:
        description: >
          The created NS instance identifier.
          Shall be set to the same "id" attribute value of the associated "NsInstance" representation of the
          "Individual NS instance" resource.
        $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
      _links:
        description: >
          Links to resources related to this notification.
        $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LccnLinks"

  NsIdentifierDeletionNotification:
    type: object
    required:
      - id
      - notificationType
      - subscriptionId
      - nsInstanceId
    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/SOL005_def.yaml#/definitions/Identifier"
      notificationType:
        description: >
          Discriminator for the different notification types.
          Shall be set to "NsIdentifierDeletionNotification" for this
          notification type.
        type: string
      subscriptionId:
        description: >
          Identifier of the subscription that this notification relates to.
        $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
      timestamp:
        description: >
          Date-time of the generation of the notification.
        $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime"
      nsInstanceId:
        description: >
          The deleted NS instance identifier.
          Shall be set to the same "id" attribute value of the associated "NsInstance" representation of the
          "Individual NS instance" resource.
        $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
      _links:
        description: >
          Links to resources related to this notification.
        $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LccnLinks"

  NsChangeNotification:
    description: >
      This type represents an NS change notification, which informs the receiver of changes on the NS instance caused by the
      LCM operation occurrence, which directly or indirectly impacts its NS component and is triggered without any context
      of this NS instance.
      This notification is different from the NsLcmOperationOccurenceNotification (see clause 6.5.2.5), which is triggered by
      the NS LCM operation occurrence on the NS instance itself. It shall comply with the provisions defined in
      Table 6.5.2.8-1. The support of the notification is mandatory.
      The trigger conditions include:
      1) NS LCM operation occurrence which directly or indirectly impacts the NS component (start and result).
      If this is a notification about the start of an LCM operation occurrence impacting the NS component, the notification
      shall be sent as soon as the impact on the NS component is identified.
      If this is a notification about a final result state of an NS LCM operation occurrence impacting the NS component, the
      notification shall be sent after the impact on the NS component has been executed.
    type: object
    required:
      - id
      - nsInstanceId
      - nsComponentType
      - nsComponentId
      - lcmOpOccIdImpactingNsComponent
      - lcmOpNameImpactingNsComponent
      - lcmOpOccStatusImpactingNsCompon
      - notificationType
      - subscriptionId
      - timestamp
      - _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/SOL005_def.yaml#/definitions/Identifier"
      nsInstanceId:
        description: >
          The identifier of the NS instance affected.
        $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
      nsComponentType:
        description: >
          Indicates the impacted NS component type.
        $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsComponentType"
      nsComponentId:
        description: >
          The identifier of the impacted NS component.
        $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
      lcmOpOccIdImpactingNsComponent:
        description: >
          The identifier of the lifecycle operation
          occurrence which is associated to the
          notification and impacts the NS
          component directly or indirectly.
        $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
      lcmOpNameImpactingNsComponent:
        description: >
          Indicates the name of the lifecycle
          operation occurrence which is
          associated to the notification and
          impacts the NS component directly or
          indirectly.
        $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LcmOpNameForChangeNotificationType"
      lcmOpOccStatusImpactingNsComponent:
        description: >
          Indicates this status of the lifecycle
          operation occurrence which is
          associated to the notification and
          impacts the NS component directly or
          indirectly.
        $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LcmOpOccStatusForChangeNotificationType"
      notificationType:
        description: >
          Discriminator for the different
          notification types. Shall be set to
          "NsChangeNotification" for this
          notification type.
        type: string
      subscriptionId:
        description: >
          Identifier of the subscription that this notification relates to.
        $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
      timestamp:
        description: >
          Date-time of the generation of the
          notification.
        $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime"
      error:
        description: >
          Details of the latest error, if one has
          occurred during executing the LCM
          operation (see clause 6.3 of ETSI
          GS NFV-SOL 013 [16]). Shall be
          present if
          lcmOpOccStatusImpactingNsCompon
          ent is "PARTIALLY_COMPLETED" or
          "FAILED", and shall be absent
          otherwise.
        $ref: "../../definitions/SOL005_def.yaml#/definitions/ProblemDetails"
      _links:
        description: >
          Links to resources related to this notification.
        $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LccnLinks"