Commit d781c35f authored by rameshnaraya's avatar rameshnaraya
Browse files

Fixed SOL005 v2.4.1 Review issues.

parent 357e6d38
Loading
Loading
Loading
Loading
+225 −95
Original line number Diff line number Diff line
swagger: "2.0"

info:
  version: "2.4.1"
  version: "1.0.0"
  title: SOL005 - NS Fault Management Interface
  description: >
    SOL005 - NS Fault Management Interface
@@ -18,24 +19,20 @@ externalDocs:
  description: ETSI GS NFV-SOL 005 V2.4.1
  url: http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.04.01_60/gs_NFV-SOL005v020401p.pdf
basePath: "/nsfm/v1"

schemes:
  - https

consumes:
  - "application/json"
produces:
  - "application/json"

paths:
###############################################################################
# Alarms                                                                      #
###############################################################################
  '/alarms':
    #SOL005 location: 8.2-1
    #ETSI GS NFV-SOL 005 V2.4.1 location: 8.4.2
    get:
      summary: >
        Query alarms related to NS instances.
      summary: Query alarms related to NS instances.
      description: >
        Get Alarm List.

@@ -59,6 +56,7 @@ paths:
            - rootCauseFaultyResource.faultyResourceType            
            - eventType            
            - perceivedSeverity
            - probableCause
        - name: Accept
          description: >
            Content-Types that are acceptable for the response.
@@ -76,7 +74,7 @@ paths:
      responses:
        200:
          description: >
            200 OK.
            200 OK
            
            The request has succeeded.
            The response body shall contain the list of related alarms.
@@ -87,11 +85,13 @@ paths:
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              type: string            
              type: "string"
              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.  
                authorization, or error details if the corresponding HTTP request
                has provided an invalid authorization token.
              maximum: 1
              minimum: 0  
          schema:
            type: array
            items:
@@ -117,7 +117,7 @@ paths:
# Individual alarm                                                            #
###############################################################################
  '/alarms/{alarmId}':
    #SOL005 location: 8.2-1
    #ETSI GS NFV-SOL 005 V2.4.1 location: 8.4.3
    parameters:
      - name: alarmId
        description: >
@@ -130,8 +130,7 @@ paths:
        type: string
        required: true
    get:
      summary: >
        Read individual alarm.
      summary: Read individual alarm.
      description: >
        The client can use this method to read an individual alarm.
      parameters:
@@ -159,7 +158,7 @@ paths:
      responses:            
        200:
          description: >
            200 OK.
            200 OK
            
            Information about an individual alarm was read successfully.
            The response body shall contain a representation of the
@@ -171,11 +170,13 @@ paths:
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              type: string            
              type: "string"
              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.  
                authorization, or error details if the corresponding HTTP request
                has provided an invalid authorization token.
              maximum: 1
              minimum: 0 
          schema:
            properties:
              Alarm:
@@ -195,8 +196,7 @@ paths:
        503:
         $ref: "responses/SOL005_resp.yaml#/responses/503"
    patch:
      summary: >
        Acknowledge individual alarm.
      summary: Acknowledge individual alarm.
      description: >
        Acknowledge Alarm
  
@@ -240,7 +240,7 @@ paths:
      responses:
        200:
          description: >
            200 OK.
            200 OK
            
            The request was accepted and completed.
            The response body shall contain attribute modifications
@@ -252,11 +252,11 @@ paths:
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              type: string            
              type: "string"
              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. 
                authorization, or error details if the corresponding HTTP request
                has provided an invalid authorization token.
              maximum: 1
              minimum: 0               
          schema:
@@ -285,10 +285,9 @@ paths:
#Subscriptions                                                               #
##############################################################################
  '/subscriptions':
    #SOL005 location: 8.2-1
    #ETSI GS NFV-SOL 005 V2.4.1 location: 8.4.4
    post:
      summary: >
        Subscribe to alarms related to NSs.
      summary: Subscribe to alarms related to NSs.
      description: > 
        The POST method creates a new subscription.
        This method shall follow the provisions specified in the Tables 8.4.4.3.1-1 and 8.4.4.3.1-2 for URI query parameters,
@@ -336,24 +335,20 @@ paths:
              
      responses:
        201:
          description: 201 Created
          schema:
            type: "object"
          description: >
            201 Created
            
            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.              
          schema:
            type: "object"
            properties:
              FmSubscription:
                $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/FmSubscription"
          headers:
            Location:
              type: "string"
              description: >
                The HTTP response shall include a Location HTTP header
                that contains the resource URI of the new NS descriptor resource.
            Content-Type:
              type: "string"
              description: >
@@ -366,6 +361,8 @@ paths:
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP request
                has provided an invalid authorization token.
              maximum: 1
              minimum: 0             
        303:
          $ref: "responses/SOL005_resp.yaml#/responses/303"
        400:
@@ -383,8 +380,7 @@ paths:
        503:
          $ref: "responses/SOL005_resp.yaml#/responses/503"
    get:
      summary: >
        Query multiple subscriptions.
      summary: Query multiple subscriptions.
      description: >
        Query Subscription Information
  
@@ -431,7 +427,7 @@ paths:
      responses:
        200:
          description: >
            200 OK.
            200 OK
            
            The list of subscriptions was queried successfully.
            The response body shall contain the representations of
@@ -444,11 +440,13 @@ paths:
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              type: string            
              type: "string"
              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.  
                authorization, or error details if the corresponding HTTP request
                has provided an invalid authorization token.
              maximum: 1
              minimum: 0  
          schema:
            type: array
            items:
@@ -476,7 +474,7 @@ paths:
# Individual subscription                                                     #
###############################################################################
  '/subscriptions/{subscriptionId}':
    #SOL005 location: 8.2-1
    #ETSI GS NFV-SOL 005 V2.4.1 location: 8.4.5
    parameters:
      - name: subscriptionId
        description: >
@@ -489,8 +487,7 @@ paths:
        type: string
        required: true
    get:
      summary: >
        Read an individual subscription.
      summary: Read an individual subscription.
      description: >
        Query Subscription Information
  
@@ -522,6 +519,8 @@ paths:
      responses:
        200:
          description: >
            200 OK
            
            The operation has completed successfully.
            The response body shall contain a representation of the
            subscription resource.
@@ -534,14 +533,16 @@ paths:
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              type: "string"
              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
                authorization, or error details if the corresponding HTTP request
                has provided an invalid authorization token.
              maximum: 1
              minimum: 0
          schema:
            properties:
              FmSubscription:
                $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/FmSubscription"
        400:
          $ref: "responses/SOL005_resp.yaml#/responses/400"
@@ -558,8 +559,7 @@ paths:
        503:
          $ref: "responses/SOL005_resp.yaml#/responses/503"
    delete:
      summary: >
        Terminate a subscription.
      summary: Terminate a subscription.
      description: >
        Terminate Subscription
          
@@ -575,17 +575,17 @@ paths:
      responses:
        204:
          description: > 
            204 - No Content.
            204 - No Content
 
            The subscription resource was deleted successfully.
            The response body shall be empty.
          headers:
            WWW-Authenticate:
              type: "string"
              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
                authorization, or error details if the corresponding HTTP request
                has provided an invalid authorization token.
              maximum: 1
              minimum: 0
        400:
@@ -603,21 +603,18 @@ paths:
        503:
          $ref: "responses/SOL005_resp.yaml#/responses/503"
          
###############################################################################
##################################################################################
# Notification endpoint                                                          #
# "/notification_endpoint" is the                                             #
# is the dummy URI used for testing, in real case endpoint URI has to         #
# provided by client.                                                         #
###############################################################################
  '/notification_endpoint':
    #SOL005 location: 8.2-1
# Dummy URI is used for testing.                                                 #
# In real, resource URI is provided by the client when creating the subscription.#
##################################################################################
  '/URI_is_provided_by_the_client_when_creating_the_subscription-AlarmNotification':
    #ETSI GS NFV-SOL 005 V2.4.1 location: 8.4.6
    post:
      summary: >
        Notify about NS alarms.
      summary: Notify about NS alarms
      description: >
        The POST method notifies an alarm related to a NS or that the alarm list has been rebuilt.
      # Don't know how to pass multiple body parameters. 
      # Jenkin build is failing if enable more than one body parameters, So commented body parameters.

      parameters:
        - name: alarmNotification
          description: >
@@ -628,24 +625,6 @@ paths:
            properties:
              AlarmNotification:
                $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/AlarmNotification"           
        #- name: alarmClearedNotification
        #  description: >
        #    Information of the clearance of a NS alarm.
        #  in: body
        #  required: true
        #  schema:
        #      properties:
        #        AlarmClearedNotification:        
        #         $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/AlarmClearedNotification"
        #- name: alarmListRebuiltNotification
        #  description: >
        #    Information that the alarm list has been rebuilt by the NFVO.
        #  in: body
        #  required: true
        #  schema:
        #      properties:
        #        AlarmListRebuiltNotification:   
        #    $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/AlarmListRebuiltNotification"            
        - name: Accept
          description: >
            Content-Types that are acceptable for the response.
@@ -670,8 +649,83 @@ paths:
      responses:
        204:
          description: >
            204 No Content
            
            The notification was delivered successfully.
            The response body shall be empty.        
          headers:
            WWW-Authenticate:
              type: "string"
              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.
              maximum: 1
              minimum: 0            
        400:
          $ref: "responses/SOL005_resp.yaml#/responses/400"
        401:
          $ref: "responses/SOL005_resp.yaml#/responses/401"
        403:
          $ref: "responses/SOL005_resp.yaml#/responses/403"                        
        500:
          $ref: "responses/SOL005_resp.yaml#/responses/500"
        503:
          $ref: "responses/SOL005_resp.yaml#/responses/503" 
          
  '/URI_is_provided_by_the_client_when_creating_the_subscription-AlarmClearedNotification':
    #ETSI GS NFV-SOL 005 V2.4.1 location: 8.4.6
    post:
      summary: Notify about NS alarms
      description: >
        The POST method notifies an alarm related to a NS or that the alarm list has been rebuilt.
      parameters:
        - name: alarmClearedNotification
          description: >
            Information of the clearance of a NS alarm.
          in: body
          required: true
          schema:
            properties:
              AlarmClearedNotification:        
                $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/AlarmClearedNotification"          
        - name: Accept
          description: >
            Content-Types that are acceptable for the response.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
          type: string
        - name: Content-Type
          description: >
            The MIME type of the body of the request.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
      responses:
        204:
          description: >
            204 No Content
            
            The notification was delivered successfully.
            The response body shall be empty.
          headers:
            WWW-Authenticate:
              type: "string"
              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.
              maximum: 1
              minimum: 0            
        400:
          $ref: "responses/SOL005_resp.yaml#/responses/400"
        401:
@@ -682,8 +736,73 @@ paths:
          $ref: "responses/SOL005_resp.yaml#/responses/500"
        503:
          $ref: "responses/SOL005_resp.yaml#/responses/503" 

  '/URI_is_provided_by_the_client_when_creating_the_subscription-AlarmListRebuiltNotification':
    #ETSI GS NFV-SOL 005 V2.4.1 location: 8.4.6
    post:
      summary: Notify about NS alarms
      description: >
        The POST method notifies an alarm related to a NS or that the alarm list has been rebuilt.
      parameters:
        - name: AlarmListRebuiltNotification
          description: >
            Information that the alarm list has been rebuilt by the NFVO.
          in: body
          required: true
          schema:
            properties:
              AlarmListRebuiltNotification:   
                $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/AlarmListRebuiltNotification"             
        - name: Accept
          description: >
            Content-Types that are acceptable for the response.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
          type: string
        - name: Content-Type
          description: >
            The MIME type of the body of the request.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
      responses:
        204:
          description: >
            204 No Content
            
            The notification was delivered successfully.
            The response body shall be empty. 
          headers:
            WWW-Authenticate:
              type: "string"
              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.
              maximum: 1
              minimum: 0            
        400:
          $ref: "responses/SOL005_resp.yaml#/responses/400"
        401:
          $ref: "responses/SOL005_resp.yaml#/responses/401"
        403:
          $ref: "responses/SOL005_resp.yaml#/responses/403"                        
        500:
          $ref: "responses/SOL005_resp.yaml#/responses/500"
        503:
          $ref: "responses/SOL005_resp.yaml#/responses/503" 
          
    get:
      summary: Test the notification endpoint.
      summary: Test the notification endpoint
      description: >
        The GET method allows the server to test the notification endpoint that is provided by the client, e.g. during
        subscription.
@@ -705,8 +824,19 @@ paths:
      responses:
        204:
          description: >
            204 No Content
            
            The notification endpoint was tested successfully.
            The response body shall be empty. 
          headers:
            WWW-Authenticate:
              type: "string"
              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.
              maximum: 1
              minimum: 0            
        400:
          $ref: "responses/SOL005_resp.yaml#/responses/400"
        401: