Skip to content
Snippets Groups Projects
VNFLifecycleManagement.yaml 61.7 KiB
Newer Older
  • Learn to ignore specific revisions
  • ###############################################################################
      '/vnf_lcm_op_occs/{vnfLcmOpOccId}/retry':
        #SOL003 location: 5.4.14
        parameters:
          - name: vnfLcmOpOccId
            description: >
              Identifier of a VNF lifecycle management operation occurrence to be
              retried. 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 retrying a VNF lifecycle operation if that
            operation has experienced a temporary failure, i.e. the related
            "VNF LCM operation occurrence" resource is in "FAILED_TEMP" 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-not-suported-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"
    ###############################################################################
    # Rollback operation task                                                     #
    ###############################################################################
      '/vnf_lcm_op_occs/{vnfLcmOpOccId}/rollback':
        #SOL003 location: 5.4.15  
        parameters:
          - name: vnfLcmOpOccId
            description: >
              Identifier of a VNF lifecycle management operation occurrence to be
              be rolled back. 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 rolling back a VNF lifecycle operation if
            that operation has experienced a temporary failure, i.e. the related
            "VNF LCM operation occurrence" resource is in "FAILED_TEMP" 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-not-suported-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"
    ###############################################################################
    # 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
                WWW-Authenticate:
                  description: >
                    Challenge if the corresponding HTTP request has not provided
                    authorization, or error details if the corresponding HTTP
                    request has provided an invalid authorization token.
                  type: string
                  maximum: 1
                  minimum: 0
              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-not-suported-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-not-suported-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
                WWW-Authenticate:
                  description: >
                    Challenge if the corresponding HTTP request has not provided
                    authorization, or error details if the corresponding HTTP
                    request has provided an invalid authorization token.
                  type: string
                  maximum: 1
                  minimum: 0
              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.
          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
                WWW-Authenticate:
                  description: >
                    Challenge if the corresponding HTTP request has not provided
                    authorization, or error details if the corresponding HTTP
                    request has provided an invalid authorization token.
                  type: string
                  maximum: 1
                  minimum: 0
              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"
        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.
    
          parameters:
            - name: filter
              description: >
                Attribute-based filtering expression according to clause 4.3.2.
                The VNFM shall support receiving this parameter as part of the URI query string.
                The EM may supply this parameter. All attribute names that appear in the LccnSubscription
                and in data types referenced from it shall be supported by the VNFM in the filter expression.
    
                EXAMPLE
                objects
                obj1: {"id":123, "weight":100, "parts":[{"id":1, "color":"red"}, {"id":2, "color":"green"}]}
                obj2: {"id":456, "weight":500, "parts":[{"id":3, "color":"green"}, {"id":4, "color":"blue"}]}
    
                Request 1:
                GET …/container
    
                Response 1:
                [
                    {"id":123, "weight":100, "parts":[{"id":1, "color":"red"}, {"id":2, "color":"green"}]},
                    {"id":456, "weight":500, "parts":[{"id":3, "color":"green"}, {"id":4, "color":"blue"}]}
                ]
    
                Request 2:
                GET …/container?filter=(eq.weight,100)
    
                Response 2:
                [
                    {"id":123, "weight":100, "parts":[{"id":1, "color":"red"}, {"id":2, "color":"green"}]}
                ]
              #Request 2 in EXAMPLE from clause 4.3.2 probably wrong, since "," should be used after opOne (eq), "." is used
              in: query
              required: false
              type: string
    
                The list of subscriptions was queried successfully.
                The response body shall contain in an array the representations of all active subscriptions
                of the functional block that invokes the method, i.e. zero or more representations of lifecycle
                change notification subscriptions as defined in clause 5.5.2.16.
    
              headers:
                Content-Type:
                  description: The MIME type of the body of the response.
                  type: string
                  maximum: 1
                  minimum: 1
                WWW-Authenticate:
                  description: >
                    Challenge if the corresponding HTTP request has not provided
                    authorization, or error details if the corresponding HTTP
                    request has provided an invalid authorization token.
                  type: string
                  maximum: 1
                  minimum: 0
              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
                WWW-Authenticate:
                  description: >
                    Challenge if the corresponding HTTP request has not provided
                    authorization, or error details if the corresponding HTTP
                    request has provided an invalid authorization token.
                  type: string
                  maximum: 1
                  minimum: 0
              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
    
              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
                WWW-Authenticate:
                  description: >
                    Challenge if the corresponding HTTP request has not provided
                    authorization, or error details if the corresponding HTTP
                    request has provided an invalid authorization token.
                  type: string
                  maximum: 1
                  minimum: 0
              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.
              headers:
                WWW-Authenticate:
                  description: >
                    Challenge if the corresponding HTTP request has not provided
                    authorization, or error details if the corresponding HTTP
                    request has provided an invalid authorization token.
                  type: string
                  maximum: 1
                  minimum: 0
            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"