SOL005NSLifecycleManagement_def.yaml 157 KB
Newer Older
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
        description: >
          Signals the type of change.
          Permitted values:
          - ADD
          - DELETE
          - MODIFY
          - ADD_LINK_PORT
          - REMOVE_LINK_PORT
        type: string
        enum:
          - ADD
3012
3013
          - DELETE
          - MODIFY
3014
          - ADD_LINK_PORT
3015
          - REMOVE_LINK_PORT
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
      changeResult:
        description: >
          Signals the result of change identified by the
          "changeType" attribute.
          Permitted values:
          - COMPLETED
          - ROLLED_BACK
          - FAILED
        type: string
        enum:
          - COMPLETED
3027
          - ROLLED_BACK
3028
          - FAILED
3029

3030
  AffectedVnffg:
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
    description: >
      This type provides information about added, deleted and modified VNFFG instances.
      It shall comply with the
      provisions in Table 6.5.3.5-1.
    type: object
    required:
      - vnffgInstanceId
      - vnffgdId
    properties:
      vnffgInstanceId:
        description: >
          Identifier of the VNFFG instance.
3043
        $ref: "#/definitions/IdentifierInNs"
3044
3045
3046
      vnffgdId:
        description: >
          Identifier of the VNFFGD of the VNFFG instance.
3047
        $ref: "#/definitions/IdentifierInNsd"
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
      changeType:
        description: >
          Signals the type of change.
          Permitted values:
          - ADD
          - DELETE
          - MODIFY
        type: string
        enum:
          - ADD
          - DELETE
          - MODIFY
      changeResult:
        description: >
          Signals the result of change identified by the
          "changeType" attribute.
          Permitted values:
          - COMPLETED
          - ROLLED_BACK
          - FAILED
        type: string
        enum:
          - COMPLETED
          - ROLLED_BACK
          - FAILED

3074
  AffectedNs:
3075
3076
3077
3078
3079
3080
3081
    description: >
      This type provides information about added, deleted and modified nested NSs.
      It shall comply with the provisions in Table 6.5.3.6-1.
    type: object
    required:
      - nsInstanceId
      - nsdId
3082
3083
      - changeType
      - changeResult
3084
3085
3086
3087
    properties:
      nsInstanceId:
        description: >
          Identifier of the nested NS instance.
3088
        $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
3089
3090
3091
      nsdId:
        description: >
          Identifier of the NSD of the nested NS instance.
3092
        $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
      changeType:
        description: >
          Signals the type of lifecycle change.
          Permitted values:
          - ADD
          - REMOVE
          - INSTANTIATE
          - SCALE
          - UPDATE
          - HEAL
          - TERMINATE
        type: string
        enum:
          - ADD
          - REMOVE
          - INSTANTIATE
          - SCALE
          - UPDATE
          - HEAL
          - TERMINATE
      changeResult:
        description: >
          Signals the result of change identified by the
          "changeType" attribute.
          Permitted values:
          - COMPLETED
          - ROLLED_BACK
          - FAILED
          - PARTIALLY_COMPLETED
        type: string
        enum:
          - COMPLETED
          - ROLLED_BACK
          - FAILED
          - PARTIALLY_COMPLETED
3128
3129

  AffectedSap:
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
    description: >
      This type provides information about added, deleted and modified SAP of a NS.
      It shall comply with the provisions in Table 6.5.3.7-1.
    type: object
    required:
      - sapInstanceId
      - sapdId
    properties:
      sapInstanceId:
        description: >
          Identifier of the nested NS instance.
3141
        $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
3142
3143
3144
      sapdId:
        description: >
          Identifier of the NSD of the nested NS instance.
3145
        $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
      sapName:
        description: >
          Human readable name for the SAP.
        type: string
      changeType:
        description: >
          Signals the type of lifecycle change.
          Permitted values:
          - ADD
          - REMOVE
          - MODIFY
        type: string
        enum:
          - ADD
          - REMOVE
          - MODIFY
      changeResult:
        description: >
          Signals the result of change identified by the
          "changeType" attribute.
          Permitted values:
          - COMPLETED
          - ROLLED_BACK
          - FAILED
        type: string
        enum:
          - COMPLETED
          - ROLLED_BACK
          - FAILED

3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
  NsLcmOperationStateType:
    description: >
      The enumeration NsLcmOperationStateType shall comply with the provisions defined in Table 6.5.4.4-1.
      Value | Description
      ------|------------
      PROCESSING | The LCM operation is currently in execution.
      COMPLETED | The LCM operation has been completed successfully.
      PARTIALLY_COMPLETED | The LCM operation has been partially completed with accepTable errors.
      FAILED_TEMP | The LCM operation has failed and execution has stopped, but the execution of the operation is not considered to be closed.
      FAILED | The LCM operation has failed and it cannot be retried or rolled back, as it is determined that such action won't succeed.
      OLLING_BACK | The LCM operation is currently being rolled back.
      ROLLED_BACK | The LCM operation has been successfully rolled back, i.e. The state of the VNF prior to the original operation invocation has been restored as closely as possible.
    type: string
    enum:
      - PROCESSING
      - COMPLETED
      - FAILED_TEMP
      - FAILED
      - ROLLING_BACK
3195
      - ROLLED_BACK
3196
  NsLcmOpType:
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
    description: >
      The enumeration NsLcmOpType represents those lifecycle operations that trigger a NS lifecycle management operation
      occurrence notification.
      Value | Description
      ------|------------
      INSTANTIATE | Represents the "Instantiate NS" LCM operation.
      SCALE | Represents the "Scale NS" LCM operation.
      UPDATE | Represents the "Update NS" LCM operation.
      TERMINATE | Represents the "Terminate NS" LCM operation.
      HEAL | Represents the "Heal NS" LCM operation.
    type: string
    enum:
      - INSTANTIATE
      - SCALE
      - UPDATE
      - TERMINATE
      - HEAL
3214

3215
3216
3217
3218
3219
3220
3221
3222
3223
  LccnSubscriptionRequest:
    description: >
      This type represents a subscription request related to notifications 
      about NS lifecycle changes. It shall comply with the
      provisions defined in Table 6.5.2.2-1..
    type: object
    required:
      - callbackUri
    properties:
3224
      filter:
3225
        description: >
3226
3227
3228
3229
          Filter settings for this subscription, to define the subset
          of all notifications this subscription relates to. A
          particular notification is sent to the subscriber if the filter
          matches, or if there is no filter.
3230
3231
3232
3233
        $ref: "#/definitions/LifecycleChangeNotificationsFilter"
      callbackUri:
        description: >
          The URI of the endpoint to send the notification to.
3234
        $ref: "../../definitions/SOL005_def.yaml#/definitions/Uri"
3235
3236
3237
3238
3239
3240
3241
      authentication:
        description: >
          Authentication parameters to configure the use of Authorization when
          sending notifications corresponding to this subscription, as defined
          in clause 4.5.3.4.
          This attribute shall only be present if the subscriber requires
          authorization of notifications.
3242
        $ref: "../../definitions/SOL005_def.yaml#/definitions/SubscriptionAuthentication"
3243

3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
  LccnSubscription:
    description: >
      This type represents a subscription related to notifications about NS lifecycle changes. 
      It shall comply with the provisions defined in Table 6.5.2.4-1.
    type: object
    required:
      - id
      - callbackUri
      - _links
    properties:
      id:
        description: >
          Identifier of this subscription resource.
3257
        $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
      filter:
        description: >
          Filter settings for this subscription, to define the subset of all
          notifications this subscription relates to. A particular
          notification is sent to the subscriber if the filter matches, or if
          there is no filter.
        $ref: "#/definitions/LifecycleChangeNotificationsFilter"
      callbackUri:
        description: >
          The URI of the endpoint to send the notification to.
3268
        $ref: "../../definitions/SOL005_def.yaml#/definitions/Uri"
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
      _links:
        description: >
          Links to resources related to this resource.
        type: object
        required:
          - self
        properties:
          self:
            description: >
              URI of this resource.
3279
            $ref: "../../definitions/SOL005_def.yaml#/definitions/Link"
3280

3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
  LifecycleChangeNotificationsFilter:
    description: >
      This type represents a subscription filter related to notifications about 
      NS lifecycle changes. It shall comply with the
      provisions defined in Table 6.5.3.8-1.
      At a particular nesting level in the filter structure, the following applies: 
      All attributes shall match in order for the filter
      to match (logical "and" between different filter attributes). 
      If an attribute is an array, the attribute shall match if at least
      one of the values in the array matches (logical "or" between the values of one filter attribute).
    type: object
    properties:
      nsInstanceSubscriptionFilter:
        description: >
          Filter criteria to select NS instances about which to notify.
3296
        $ref: "../../definitions/SOL005_def.yaml#/definitions/NsInstanceSubscriptionFilter"
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
      notificationTypes:
        description: >
          Match particular notification types.
          Permitted values:
          - NsLcmOperationOccurenceNotification
          - NsIdentifierCreationNotification
          - NsIdentifierDeletionNotification
          - NsChangeNotification
        type: array
        items:
          type: string
          enum:
            - NsLcmOperationOccurenceNotification
            - NsIdentifierCreationNotification
            - NsIdentifierDeletionNotification
3312
            - NsChangeNotification
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
      operationTypes:
        description: >
          Match particular NS lifecycle operation types
          for the notification of type
          NsLcmOperationOccurrenceNotification.
          May be present if the "notificationTypes"
          attribute contains the value
          "NsLcmOperationOccurrenceNotification", and
          shall be absent otherwise.
        type: array
3323
        items:
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
          $ref: "#/definitions/NsLcmOpType"
      operationStates:
        description: >
          Match particular LCM operation state values as
          reported in notifications of type
          NsLcmOperationOccurrenceNotification.
          May be present if the "notificationTypes"
          attribute contains the value
          "NsLcmOperationOccurrenceNotification", and
          shall be absent otherwise.
        type: array
3335
        items:
3336
3337
3338
3339
3340
3341
3342
3343
          $ref: "#/definitions/LcmOperationStateType"
      nsComponentTypes:
        description: >
          Match particular NS component types for the
          notification of type NsChangeNotification.
          May be present if the "notificationTypes"
          attribute contains the value "NsChang.
        type: array
3344
        items:
3345
3346
3347
3348
3349
3350
3351
3352
3353
          $ref: "#/definitions/NsComponentType"
      lcmOpNameImpactingNsComponent:
        description: >
          Match particular LCM operation names for the
          notification of type NsChangeNotification.
          May be present if the "notificationTypes"
          attribute contains the value
          "NsChangeNotification", and shall be absent otherwise.
        type: array
3354
        items:
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
          $ref: "#/definitions/LcmOpNameForChangeNotificationType"
      lcmOpOccStatusImpactingNsComponent:
        description: >
          Match particular LCM operation status values
          as reported in notifications of type
          NsChangeNotification.
          May be present if the "notificationTypes"
          attribute contains the value
          "NsChangeNotification", and shall be absent otherwise.
        type: array
3365
        items:
3366
          $ref: "#/definitions/LcmOpOccStatusForChangeNotificationType"
3367

3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
  NsScaleInfo:
    description: >
      This type represents the target NS Scale level for each NS scaling aspect of the current deployment flavor.
    type: object
    required:
      - nsScalingAspectId
      - nsScaleLevelId
    properties:
      nsScalingAspectId:
        description: >
          Identifier of the NS scaling aspect.
3379
        $ref: "#/definitions/IdentifierInNsd"
3380
3381
3382
      nsScaleLevelId:
        description: >
          Identifier of the NS scale level.
3383
        $ref: "#/definitions/IdentifierInNsd"
3384

3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
  ScaleNsData:
    description: >
      This type represents the information to scale a NS.
    type: object
    properties:
      vnfInstanceToBeAdded:
        description: >
          An existing VNF instance to be added to the NS
          instance as part of the scaling operation. If
          needed, the VNF Profile to be used for this VNF
          instance may also be provided.
        type: array
3397
3398
        items:
          $ref: "#/definitions/VnfInstanceData"
3399
3400
3401
3402
3403
      vnfInstanceToBeRemoved:
        description: >
          The VNF instance to be removed from the NS
          instance as part of the scaling operation.
        type: array
3404
        items:
3405
          $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
3406
3407
3408
3409
      scaleNsByStepsData:
        description: >
          The information used to scale an NS instance by
          one or more scaling steps.
3410
        $ref: "#/definitions/ScaleNsByStepsData"
3411
3412
3413
      scaleNsToLevelData:
        description: >
          The information used to scale an NS instance to a target size.
3414
        $ref: "#/definitions/ScaleNsToLevelData"
3415
3416
3417
3418
3419
3420
      additionalParamsForNs:
        description: >
          Allows the OSS/BSS to provide additional
          parameter(s) at the NS level necessary for the
          NS scaling (as opposed to the VNF level, which is
          covered in additionalParamForVnf).
3421
        $ref: "#/definitions/ParamsForVnf"
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
      additionalParamsForVnf:
        description: >
          Allows the OSS/BSS to provide additional
          parameter(s) per VNF instance (as opposed to
          the NS level, which is covered in
          additionalParamforNs). This is for VNFs that are
          to be created by the NFVO as part of the NS
          scaling and not for existing VNF that are covered
          by the scaleVnfData.
        type: array
3432
3433
        items:
          $ref: "#/definitions/ParamsForVnf"
3434
3435
3436
3437
3438
3439
3440
      locationConstraints:
        description: >
          The location constraints for the VNF to be
          instantiated as part of the NS scaling.
          An example can be a constraint for the VNF to be
          in a specific geographic location.
        type: array
3441
3442
        items:
          $ref: "#/definitions/VnfLocationConstraint"
3443
3444
3445
3446
3447
3448
3449
3450

  ScaleVnfData:
    description: >
      This type represents defines the information to scale a VNF instance 
      to a given level, or to scale a VNF instance by steps.
    type: object
    required:
      - vnfInstanceid
3451
      - scaleVnfType
3452
3453
3454
3455
    properties:
      vnfInstanceid:
        description: >
          Identifier of the VNF instance being scaled.
3456
        $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
      scaleVnfType:
        description: >
          Type of the scale VNF operation requested.
          Allowed values are:
          - SCALE_OUT
          - SCALE_IN
          - SCALE_TO_INSTANTIATION_LEVEL
          - SCALE_TO_SCALE_LEVEL(S)
          The set of types actually supported depends on the
          capabilities of the VNF being managed.
        type: string
3468
        enum:
3469
          - SCALE_OUT
3470
3471
3472
          - SCALE_IN
          - SCALE_TO_INSTANTIATION_LEVEL
          - SCALE_TO_SCALE_LEVEL(S)
3473
3474
3475
      scaleToLevelData:
        description: >
          The information used for scaling to a given level.
3476
        $ref: "#/definitions/ScaleToLevelData"
3477
3478
3479
      scaleByStepData:
        description: >
          The information used for scaling by steps.
3480
3481
        $ref: "#/definitions/ScaleByStepData"

3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
  ScaleNsByStepsData:
    description: >
      This type represents the information used to scale an NS instance by one or more scaling steps, with respect to a
      particular NS scaling aspect. Performing a scaling step means increasing/decreasing the capacity of an NS instance in a
      discrete manner, i.e. moving from one NS scale level to another. The NS scaling aspects and their corresponding NS
      scale levels applicable to the NS instance are declared in the NSD.
    type: object
    required:
      - scalingDirection
      - aspectId
    properties:
      scalingDirection:
        description: >
          The scaling direction. Possible values are:
          - SCALE_IN
          - SCALE_OUT.
        type: string
        enum:
          - SCALE_IN
          - SCALE_OUT
      aspectId:
        description: >
          The aspect of the NS that is requested to be scaled, as
          declared in the NSD.
3506
        $ref: "#/definitions/IdentifierInNsd"
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
      numberOfSteps:
        description: >
          The number of scaling steps to be performed. Defaults to 1.
        type: integer
        default: 1

  ScaleNsToLevelData:
    description: >
      This type represents the information used to scale an NS instance to a target size. The target size is either expressed as
      an NS instantiation level or as a list of NS scale levels, one per NS scaling aspect, of the current DF. The NS
      instantiation levels, the NS scaling aspects and their corresponding NS scale levels applicable to the NS instance are
      declared in the NSD.
    type: object
    properties:
      nsInstantiationLevel:
        description: >
          Identifier of the target NS instantiation level of the
          current DF to which the NS instance is requested to be scaled.
3525
        $ref: "#/definitions/IdentifierInNsd"
3526
3527
3528
3529
3530
      nsScaleInfo:
        description: >
          For each NS scaling aspect of the current DF, defines
          the target NS scale level to which the NS instance is to be scaled.
        type: array
3531
        items:
3532
          $ref: "#/definitions/NsScaleInfo"
3533

3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
  ScaleToLevelData:
    description: >
      This type describes the information used to scale a VNF instance to a target size. The target size is either expressed as
      an instantiation level of that DF as defined in the VNFD, or given as a list of scale levels, one per scaling aspect of that
      DF. Instantiation levels and scaling aspects are declared in the VNFD. The NFVO shall then invoke the
      ScaleVnfToLevel operation towards the appropriate VNFM..
    type: object
    properties:
      vnfInstantiationLevelId:
        description: >
          Identifier of the target instantiation level of the current
          deployment flavor to which the VNF is requested to be scaled.
3546
        $ref: "../../definitions/SOL005_def.yaml#/definitions/IdentifierInVnfd"
3547
3548
3549
3550
3551
3552
      vnfScaleInfo:
        description: >
          For each scaling aspect of the current deployment
          flavor, indicates the target scale level to which the VNF
          is to be scaled.
        type: array
3553
3554
        items:
          $ref: "#/definitions/VnfScaleInfo"
3555
3556
3557
3558
      additionalParams:
        description: >
          Additional parameters passed by the NFVO as input to
          the scaling process, specific to the VNF being scaled.
3559
        $ref: "../../definitions/SOL005_def.yaml#/definitions/KeyValuePairs"
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573

  ScaleByStepData:
    description: >
      This type describes the information to scale a VNF instance by steps. 
      The NFVO shall then invoke the Scale VNF
      operation towards the appropriate VNFM.
    type: object
    required:
      - aspectId
    properties:
      aspectId:
        description: >
          Identifier of (reference to) the aspect of the VNF that is
          requested to be scaled, as declared in the VNFD.
3574
        $ref: "../../definitions/SOL005_def.yaml#/definitions/IdentifierInVnfd"
3575
3576
3577
3578
3579
3580
3581
3582
3583
      numberOfSteps:
        description: >
          Number of scaling steps. It shall be a positive number.
          Defaults to 1.
          The VNF provider defines in the VNFD whether or not a
          particular VNF supports performing more than one step
          at a time. Such a property in the VNFD applies for all
          instances of a particular VNF.
        type: integer
3584
        default: 1
3585
3586
3587
3588
      additionalParams:
        description: >
          Additional parameters passed by the NFVO as input to
          the scaling process, specific to the VNF instance being scaled.
3589
        $ref: "../../definitions/SOL005_def.yaml#/definitions/KeyValuePairs"
3590

3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
  LcmOperationStateType:
    description: >
      Value | Description
      ------|------------
      PROCESSING | The LCM operation is currently in execution.
      COMPLETED | The LCM operation has been completed successfully.
      PARTIALLY_COMPLETED | The LCM operation has been partially completed with accepTable errors.
      FAILED_TEMP | The LCM operation has failed and execution has stopped, but the execution of the operation is not considered to be closed.
      FAILED | The LCM operation has failed and it cannot be retried or rolled back, as it is determined that such action will not succeed.
      OLLING_BACK | The LCM operation is currently being rolled back.
      ROLLED_BACK | The LCM operation has been successfully rolled back, i.e. The state of the NS prior to the original operation invocation has been restored as closely as possible.
    type: string
    enum:
      - PROCESSING
      - COMPLETED
      - PARTIALLY_COMPLETED
      - FAILED_TEMP
      - FAILED
      - ROLLING_BACK
      - ROLLED_BACK
3611

3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
  NsComponentType:
    description: >
      The enumeration NsComponentType represents the NS component type. It shall comply with the provisions defined in Table 6.5.4.5-1.
      Value | Description
      ------|------------
      VNF | Represents the impacted NS component is a VNF.
      PNF | Represents the impacted NS component is a PNF.
      NS | Represents the impacted NS component is a nested NS.
    type: string
    enum:
      - VNF
      - PNF
3624
      - NS
3625

3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
  LcmOpNameForChangeNotificationType:
    description: >
      The enumeration LcmOpNameForChangeNotificationType represents the name of the lifecycle operation that impacts the NS component and trigger an NS change notification. It shall comply with the provisions defined in Table 6.5.4.6-1.
      Value | Description
      ------|------------
      VNF_INSTANTIATE | Represents the "Instantiate VNF" LCM operation.
      VNF_SCALE | Represents the "Scale VNF" LCM operation.
      VNF_SCALE_TO_LEVEL | Represents the "Scale VNF to Level" LCM operation.
      VNF_CHANGE_FLAVOUR | Represents the "Change VNF Flavor" LCM operation.
      VNF_TERMINATE | Represents the "Terminate VNF" LCM operation.
      VNF_HEAL | Represents the "Heal VNF" LCM operation.
      VNF_OPERATE | Represents the "Operate VNF" LCM operation.
      VNF_CHANGE_EXT_CONN | Represents the "Change external VNF connectivity" LCM operation.
      VNF_MODIFY_INFO | Represents the "Modify VNF Information" LCM operation.           
      NS_INSTANTIATE | Represents the "Instantiate NS" LCM operation
      NS_SCALE | Represents the "Scale NS" LCM operation.
      NS_UPDATE | Represents the "Update NS" LCM operation.
      NS_TERMINATE | Represents the "Terminate NS" LCM operation.
      NS_HEAL | Represents the "Heal NS" LCM operation.
    type: string
    enum:
      - VNF_INSTANTIATE
      - VNF_SCALE
3649
      - VNF_SCALE_TO_LEVEL
3650
3651
3652
3653
3654
3655
3656
3657
      - VNF_CHANGE_FLAVOUR
      - VNF_TERMINATE
      - VNF_HEAL
      - VNF_OPERATE
      - VNF_CHANGE_EXT_CONN
      - VNF_MODIFY_INFO
      - NS_INSTANTIATE
      - NS_SCALE
3658
      - NS_UPDATE
3659
3660
      - NS_TERMINATE
      - NS_HEAL
3661

3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
  LcmOpOccStatusForChangeNotificationType:
    description: >
      The enumeration LcmOpOccStatusForChangeNotificationType represents the status of the lifecycle management
      operation occurrence that impacts the NS component and triggers an NS change notification. It shall comply with the
      provisions defined in Table 6.5.4.7-1.
      Value | Description
      ------|------------
      START | The impact on the NS component is identified.
      COMPLETED | The impact on the NS component stops and related lifecycle operation completes successfully.
      PARTIALLY_COMPLETED | The impact on the NS component stops and related lifecycle operation partially completes. Inconsistency state may exist on the NS component.
      FAILED | The impact on the NS component stops and related lifecycle operation fails. Inconsistency state may exist for the NS component.
      ROLLED_BACK | The impact on the NS component stops and related lifecycle operation is rolled back.
    type: string
    enum:
      - START
      - COMPLETED
3678
      - PARTIALLY_COMPLETED
3679
      - FAILED
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
      - ROLLED_BACK

  NsLcmOpOcc:
    description: >
      This type represents a request a NS lifecycle operation occurrence.
      It shall comply with the provisions defined in Table 6.5.2.3-1.
    type: object
    required:
      - id
      - operationState
      - stateEnteredTime
      - nsInstanceId
      - lcmOperationType
      - startTime
      - isAutomaticInvocation
      - isCancelPending
      - _links
    properties:
      id:
        description: >
          Identifier of this NS lifecycle operation occurrence.
3701
        $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
3702
3703
3704
      operationState:
        description: >
          The state of the NS LCM operation.
3705
        $ref: "#/definitions/NsLcmOperationStateType"
3706
3707
3708
3709
3710
3711
3712
3713
      stateEnteredTime:
        description: >
          Date-time when the current state was entered.
        type: string
        format: date-time
      nsInstanceId:
        description: >
          Identifier of the NS instance to which the operation applies.
3714
        $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
3715
3716
3717
3718
      lcmOperationType:
        description: >
          Type of the actual LCM operation represented by this
          lcm operation occurrence.
3719
        $ref: "#/definitions/NsLcmOpType"
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
      startTime:
        description: >
          Date-time of the start of the operation.
        type: string
        format: date-time
      isAutomaticInvocation:
        description: >
          Set to true if this NS LCM operation occurrence has
          been automatically triggered by the NFVO. This occurs
          in the 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.
        type: 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 lcmOperationType and
          the data type of this attribute shall apply:
          - INSTANTIATE: InstantiateNsRequest
          - SCALE: ScaleNsRequest
          - UPDATE: UpdateNsRequest
          - HEAL: HealNsRequest
          - TERMINATE: TerminateNsRequest
          This attribute shall be present if this data type is returned
          in a response to reading an individual resource, and may
          be present according to the chosen attribute selector
          parameter if this data type is returned in a response to a
          query of a container resource.
        type: string
        enum:
          - INSTANTIATE
          - SCALE
          - UPDATE
          - HEAL
          - TERMINATE
      isCancelPending:
        description: >
          If the LCM operation occurrence is in "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.
        type: boolean
      cancelMode:
        description: >
          The mode of an ongoing cancellation. Shall be present
          when isCancelPending=true, and shall be absent otherwise.
        $ref: "#/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.
3776
        $ref: "../../definitions/SOL005_def.yaml#/definitions/ProblemDetails"
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
      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:
          affectedVnfs:
            description: >
              Information about the VNF instances that were affected
              during the lifecycle operation, if this notification
              represents the result of a lifecycle operation.
            type: array
            items:
3791
              $ref: "#/definitions/AffectedVnf"
3792
3793
3794
3795
3796
3797
3798
          affectedPnfs:
            description: >
              Information about the PNF instances that were affected
              during the lifecycle operation, if this notification
              represents the result of a lifecycle operation.
            type: array
            items:
3799
              $ref: "#/definitions/AffectedPnf"
3800
3801
3802
3803
3804
3805
3806
          affectedVls:
            description: >
              Information about the VL instances that were affected
              during the lifecycle operation, if this notification
              represents the result of a lifecycle operation.
            type: array
            items:
3807
              $ref: "#/definitions/AffectedVl"
3808
3809
3810
3811
3812
3813
3814
          affectedVnffgs:
            description: >
              Information about the VNFFG instances that were
              affected during the lifecycle operation, if this notification
              represents the result of a lifecycle operation. See note
            type: array
            items:
3815
              $ref: "#/definitions/AffectedVnffg"
3816
3817
3818
3819
3820
3821
3822
          affectedNss:
            description: >
              Information about the nested NS instances that were
              affected during the lifecycle operation, if this notification
              represents the result of a lifecycle operation. See note.
            type: array
            items:
3823
              $ref: "#/definitions/AffectedNs"
3824
3825
3826
3827
3828
3829
3830
          affectedSaps:
            description: >
              Information about the nested NS instances that were
              affected during the lifecycle operation, if this notification
              represents the result of a lifecycle operation. See note.
            type: array
            items:
3831
              $ref: "#/definitions/AffectedSap"
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
      _links:
        description: >
          Links to resources related to this resource.
        type: object
        required:
          - self
          - nsInstance
        properties:
          self:
            description: >
              URI of this resource.
3843
            $ref: "../../definitions/SOL005_def.yaml#/definitions/Link"
3844
3845
3846
          nsInstance:
            description: >
              Link to the NS instance that the operation applies to.
3847
            $ref: "../../definitions/SOL005_def.yaml#/definitions/Link"
3848
3849
3850
3851
3852
          cancel:
            description: >
              Link to the task resource that represents the "cancel"
              operation for this LCM operation occurrence, if
              cancelling is currently allowed.
3853
            $ref: "../../definitions/SOL005_def.yaml#/definitions/Link"
3854
3855
3856
3857
3858
          retry:
            description: >
              Link to the task resource that represents the "cancel"
              operation for this LCM operation occurrence,
              if cancelling is currently allowed.
3859
            $ref: "../../definitions/SOL005_def.yaml#/definitions/Link"
3860
3861
3862
3863
3864
          rollback:
            description: >
              Link to the task resource that represents the "rollback"
              operation for this LCM operation occurrence, if rolling
              back is currently allowed.
3865
            $ref: "../../definitions/SOL005_def.yaml#/definitions/Link"
3866
3867
3868
3869
3870
          continue:
            description: >
              Link to the task resource that represents the "continue"
              operation for this LCM operation occurrence, if rolling
              back is currently allowed.
3871
            $ref: "../../definitions/SOL005_def.yaml#/definitions/Link"
3872
3873
3874
3875
3876
          fail:
            description: >
              Link to the task resource that represents the "fail"
              operation for this LCM operation occurrence, if rolling
              back is currently allowed.
3877
3878
3879
3880
3881
3882
3883
3884
3885
3886
3887
3888
3889
3890
3891
3892
3893
3894
3895
3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909
3910
3911
3912
3913
3914
3915
3916
3917
3918
            $ref: "../../definitions/SOL005_def.yaml#/definitions/Link"

  subscriptionId:
    description: >
      Identifier of the subscription that this notification relates to.
    type: string

  nsInstanceId:
    description: >
      The deleted NS instance identifier.
    type: string

  CpProtocolData:
    description: >
      This type represents network protocol data.
    type: object
    required:
      - layerProtocol
    properties:
      layerProtocol:
        description: >
          Identifier of layer(s) and protocol(s).
          Permitted values: IP_OVER_ETHERNET.
        type: string
        enum:
          - IP_OVER_ETHERNET
      ipOverEthernet:
        description: >
          Network address data for IP over Ethernet to
          assign to the extCP instance. Shall be
          present if layerProtocol is equal to
          "IP_OVER_ETHERNET", and shall be absent otherwise.
        $ref: "#/definitions/IpOverEthernetAddressData"

  IpOverEthernetAddressData:
    description: >
      This type represents network address data for IP over Ethernet.
    type: object
    properties:
      macAddress:
        description: >
          MAC address. If this attribute is not present, it shall be chosen by the NFV MANO.
3919
        $ref: "#/definitions/MacAddress"
3920
3921
3922
3923
3924
3925
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939
3940
3941
3942
3943
3944
3945
3946
3947
      ipAddresses:
        description: >
          List of IP addresses to assign to the CP instance. Each entry
          represents IP address data for fixed or dynamic IP address
          assignment per subnet.
          If this attribute is not present, no IP address shall be assigned.
        type: array
        items:
          type: object
          required:
            - type
          properties:
            type:
              description: >
                The type of the IP addresses.
                Permitted values: IPV4, IPV6.
              type: string
              enum:
                - IPV4
                - IPV6
            fixedAddresses:
              description: >
                Fixed addresses to assign (from the subnet defined by
                "subnetId" if provided).
                Exactly one of "fixedAddresses", "numDynamicAddresses" or
                "ipAddressRange" shall be present.
              type: array
              items:
3948
                $ref: "#/definitions/IpAddress"
3949
3950
3951
3952
3953
3954
3955
3956
3957
3958
3959
3960
3961
3962
3963
3964
3965
3966
3967
3968
3969
            numDynamicAddresses:
              description: >
                Number of dynamic addresses to assign (from the subnet defined
                by "subnetId" if provided).
                Exactly one of "fixedAddresses", "numDynamicAddresses" or
                "ipAddressRange" shall be present.
              type: integer
            addressRange:
              description: >
                An IP address range to be used, e.g. in case of egress
                connections.
                In case this attribute is present, IP addresses from the range
                will be used.
              type: object
              required:
                - minAddress
                - maxAddress
              properties:
                minAddress:
                  description: >
                    Lowest IP address belonging to the range.
3970
                  $ref: "#/definitions/IpAddress"
3971
3972
3973
                maxAddress:
                  description: >
                    Highest IP address belonging to the range.
3974
                  $ref: "#/definitions/IpAddress"
3975
3976
3977
3978
3979
3980
3981
            subnetId:
              description: >
                Subnet defined by the identifier of the subnet resource in the
                VIM.
                In case this attribute is present, IP addresses from that
                subnet will be assigned; otherwise, IP addresses not bound to
                a subnet will be assigned.
3982
              $ref: "../../definitions/SOL005_def.yaml#/definitions/IdentifierInVim"
3983
3984
3985
3986
3987
3988
3989
3990
3991
3992
3993
3994
3995
3996
3997
3998
3999
4000

  ExtVirtualLinkData:
    description: >
      This type represents an external VL. It shall comply with the provisions defined in Table 6.5.3.26-1.
    type: object
    required:
      - resourceId
      - extCps
    properties:
      extVirtualLinkId:
        description: >
          The identifier of the external VL instance, if provided.
        $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
      vimId:
        description: >
          Identifier of the VIM that manages this resource. This
          attribute shall only be supported and present if VNFrelated
          resource management in direct mode is applicable.
For faster browsing, not all history is shown. View entire blame