Skip to content
Snippets Groups Projects
VNFLifecycleManagement.yaml 56.3 KiB
Newer Older
  • Learn to ignore specific revisions
  •           $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404"
            406:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
            409:
              $ref: "responses/VNFLifecycleManagement_resp.yaml#/responses/409-state-conflict-not-FAILED_TEMP"
            500:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500"
            503:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503"
    ###############################################################################
    # Fail operation task                                                         #
    ###############################################################################
      '/vnf_lcm_op_occs/{vnfLcmOpOccId}/fail':
        #SOL003 location: 5.4.16  
        parameters:
          - name: vnfLcmOpOccId
            description: >
              Identifier of a VNF lifecycle management operation occurrence to be
              be marked as "failed". This identifier can be retrieved from the
              resource referenced by the "Location" HTTP header in the response to
              a PATCH or POST request triggering a VNF LCM operation. It can also
              be retrieved from the "vnfLcmOpOccId" attribute in the
              VnfLcmOperationOccurrenceNotification.
            in: path
            required: true
            type: string
        post: 
          description: >
            The POST method marks a VNF lifecycle management operation occurrence
            as "finally failed" if that operation occurrence is in "FAILED_TEMP"
            state.
          responses:
            200:
              description: > 
                The state of the VNF lifecycle management operation occurrence was
                changed successfully. The response shall include a representation
                of the VNF lifecycle operation occurrence resource.
              headers:
                Content-Type:
                  description: The MIME type of the body of the response.
                  type: string
                  maximum: 1
                  minimum: 1
              schema:
                $ref: "definitions/VNFLifecycleManagement_def.yaml#/definitions/VnfLcmOpOcc"
            400:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400"
            401:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401"
            403:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403"
            404:
    
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404-task-resource-not-exists-VNF-LCM"
    
            405:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404"
            406:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
            409:
              $ref: "responses/VNFLifecycleManagement_resp.yaml#/responses/409-state-conflict-not-FAILED_TEMP"
            500:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500"
            503:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503"
    ###############################################################################
    # Cancel operation task                                                       #
    ###############################################################################
      '/vnf_lcm_op_occs/{vnfLcmOpOccId}/cancel':
        #SOL003 location: 5.4.17
        parameters:
          - name: vnfLcmOpOccId
            description: >
              Identifier of a VNF lifecycle management operation occurrence to be
              be cancelled. This identifier can be retrieved from the
              resource referenced by the "Location" HTTP header in the response to
              a PATCH or POST request triggering a VNF LCM operation. It can also
              be retrieved from the "vnfLcmOpOccId" attribute in the
              VnfLcmOperationOccurrenceNotification.
            in: path
            required: true
            type: string
        post: 
          description: >
            The POST method initiates cancelling an ongoing VNF lifecycle
            operation while it is being executed or rolled back, i.e. the related
            "VNF LCM operation occurrence" is either in "PROCESSING" or
            "ROLLING_BACK" state.
          responses:
            202:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/202"
            400:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400"
            401:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401"
            403:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403"
            404:
    
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404-task-resource-not-exists-VNF-LCM"
    
            405:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404"
            406:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
            409:
              description: > 
                The operation cannot be executed currently, due to a conflict with
                the state of the VNF LCM operation occurrence resource.
                Typically, this is due to the fact that the operation occurrence
                is not in STARTING, PROCESSING or ROLLING_BACK state.
                The response body shall contain a ProblemDetails structure, in
                which the "detail" attribute shall convey more information about
                the error.
              headers:
                Content-Type:
                  description: The MIME type of the body of the response.
                  type: string
                  maximum: 1
                  minimum: 1
              schema:
    
                $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails"
    
            500:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500"
            503:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503"
    ###############################################################################
    # Subscriptions                                                               #
    ###############################################################################
      '/subscriptions':
        #SOL003 location: 5.4.18
        post: 
          description: >
            The POST method creates a new subscription.
    
            Creation of two subscription resources with the same callbackURI and
            the same filter can result in performance degradation and will provide
            duplicates of notifications to the NFVO, and might make sense only in
            very rare use cases. Consequently, the VNFM may either allow creating
            a subscription resource if another subscription resource with the same
            filter and callbackUri already exists (in which case it shall return
            the “201 Created” response code), or may decide to not create a
            duplicate subscription resource (in which case it shall return a
            “303 See Other” response code referencing the existing subscription
            resource with the same filter and callbackUri).
    
          parameters:
            - name: LccnSubscriptionRequest
              description: > 
                Details of the subscription to be created.
              in: body
              required: true
              schema:
                $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnSubscriptionRequest"
          responses:
            201:
              description: > 
                The subscription was created successfully. The response body shall
                contain a representation of the created subscription resource.
                The HTTP response shall include a "Location" HTTP header that
                points to the created subscription resource.
              headers:
                Content-Type:
                  description: The MIME type of the body of the response.
                  type: string
                  maximum: 1
                  minimum: 1
                Location:
                  description: The resource URI of the created VNF instance
                  type: string
                  format: url
              schema:
                $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnSubscription"
    
            303:
              description: > 
                A subscription with the same callbackURI and the same filter already
                exists and the policy of the VNFM is to not create redundant
                subscriptions.
                The HTTP response shall include a "Location" HTTP header that
                contains the resource URI of the existing subscription resource.
                The response body shall be empty.
              headers:
                Location:
                  description: The resource URI of the created VNF instance
                  type: string
                  format: url
    
            400:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400"
            401:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401"
            403:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403"
            404:
    
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404-task-not-suported-VNF-LCM"
    
            405:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404"
            406:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
            500:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500"
            503:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503"
        get: 
          description: >
            The GET method queries the list of active subscriptions of the
            functional block that invokes the method. It can be used e.g. for
            resynchronization after error situations.
          responses:
            200:
              description: > 
                The list of subscriptions was queried successfully. The response
                body shall contain the representations of all active subscriptions
                of the functional block that invokes the method.
              headers:
                Content-Type:
                  description: The MIME type of the body of the response.
                  type: string
                  maximum: 1
                  minimum: 1
              schema:
                $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnSubscription"
            400:
              description: > 
                Invalid attribute-based filtering parameters.
                The response body shall contain a ProblemDetails structure, in
                which the "detail" attribute should convey more information about
                the error.
              headers:
                Content-Type:
                  description: The MIME type of the body of the response.
                  type: string
                  maximum: 1
                  minimum: 1
              schema:
                $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails"
            401:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401"
            403:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403"
            404:
    
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404-task-not-suported-VNF-LCM"
    
            405:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404"
            406:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
            500:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500"
            503:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503"
    ###############################################################################
    # Individual subscription                                                     #
    ###############################################################################
      '/subscriptions/{subscriptionId}':
        #SOL003 location: 5.4.19
        parameters:
          - name: subscriptionId
            description: >
              Identifier of this subscription.
              This identifier can be retrieved from the resource referenced by
              the "Location" HTTP header in the response to a POST request
              creating a new subscription resource. It can also be retrieved from
              the "id" attribute in the payload body of that response.
            in: path
            type: string
            required: true
        get:
          description: >
            The GET method retrieves information about a subscription by reading
            an individual subscription resource.
          responses:
            200:
              description: > 
                The operation has completed successfully.
                The response body shall contain a representation of the
                subscription resource.
              headers:
                Content-Type:
                  description: The MIME type of the body of the response.
                  type: string
                  maximum: 1
                  minimum: 1
              schema:
                $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnSubscription"
            400:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400"
            401:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401"
            403:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403"
            404:
    
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404-task-not-suported-VNF-LCM"
    
            405:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404"
            406:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
            500:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500"
            503:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503"
        delete:
          description: >
            The DELETE method terminates an individual subscription.
          responses:
            204:
              description: > 
                The subscription resource was deleted successfully.
                The response body shall be empty.
            400:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400"
            401:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401"
            403:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403"
            404:
    
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404-task-not-suported-VNF-LCM"
    
            405:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404"
            406:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
            500:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500"
            503:
              $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503"