Add SO APIs to Nokia VNFM adapter
[vfc/nfvo/driver/vnfm/svnfm.git] / nokiav2 / generatedapis / src / main / resources / so.vnfm.json
diff --git a/nokiav2/generatedapis/src/main/resources/so.vnfm.json b/nokiav2/generatedapis/src/main/resources/so.vnfm.json
deleted file mode 100644 (file)
index c70a83b..0000000
+++ /dev/null
@@ -1,679 +0,0 @@
-{
-  "swagger": "2.0",
-  "info": {
-    "version": "1.0.0",
-    "title": "ONAP SO VNFM Adapter API",
-    "description": "Describes the API between SO and the adapter for VNFM",
-    "contact": {
-      "name": "ONAP SO VNFM",
-      "email": "onap-discuss@lists.onap.org",
-      "url": "https://gerrit.onap.org/r/#/admin/projects/vfc/nfvo/lcm"
-    }
-  },
-  "basePath": "/api/v1",
-  "schemes": [
-    "http",
-    "https"
-  ],
-  "consumes": [
-    "application/json"
-  ],
-  "produces": [
-    "application/json"
-  ],
-  "paths": {
-    "/so/{vnfmId}/vnfs": {
-      "post": {
-        "tags": [
-          "SO VNFM Adaptor"
-        ],
-        "summary": "VNF create",
-        "description": "VNF create",
-        "operationId": "vnf_create",
-        "consumes": [
-          "application/json"
-        ],
-        "produces": [
-          "application/json"
-        ],
-        "parameters": [
-          {
-            "required": true,
-            "type": "string",
-            "description": "The identifier of the VNFM in A&AI",
-            "name": "vnfmId",
-            "in": "path"
-          },
-          {
-            "in": "body",
-            "name": "body",
-            "description": "VNF creation request parameter",
-            "required": true,
-            "schema": {
-              "$ref": "#/definitions/SoVnfCreationRequest"
-            }
-          }
-        ],
-        "responses": {
-          "201": {
-            "description": "",
-            "schema": {
-              "$ref": "#/definitions/SoVnfCreationResponse"
-            }
-          }
-        }
-      }
-    },
-    "/so/{vnfmId}/vnfs/{vnfId}": {
-      "post": {
-        "tags": [
-          "SO VNFM Adaptor"
-        ],
-        "summary": "VNF activation",
-        "description": "VNF activation",
-        "operationId": "vnf_activate",
-        "consumes": [
-          "application/json"
-        ],
-        "produces": [
-          "application/json"
-        ],
-        "parameters": [
-          {
-            "required": true,
-            "type": "string",
-            "description": "The identifier of the VNFM in A&AI",
-            "name": "vnfmId",
-            "in": "path"
-          },
-          {
-            "required": true,
-            "type": "string",
-            "description": "The identifier of the VNF in A&AI",
-            "name": "vnfId",
-            "in": "path"
-          },
-          {
-            "in": "body",
-            "name": "body",
-            "description": "instantiate request param",
-            "required": true,
-            "schema": {
-              "$ref": "#/definitions/SoVnfActivationRequest"
-            }
-          }
-        ],
-        "responses": {
-          "201": {
-            "description": "",
-            "schema": {
-              "$ref": "#/definitions/SoJobHandler"
-            }
-          }
-        }
-      },
-      "delete": {
-        "tags": [
-          "SO VNFM Adaptor"
-        ],
-        "summary": "Deletes VNF",
-        "description": "Deletes the VNF. If the VNF was instantiated VNF termination must be called before VNF deletion",
-        "operationId": "delete_vnf",
-        "consumes": [
-          "application/json"
-        ],
-        "produces": [
-          "application/json"
-        ],
-        "parameters": [
-          {
-            "required": true,
-            "type": "string",
-            "description": "The identifier of the VNFM in A&AI",
-            "name": "vnfmId",
-            "in": "path"
-          },
-          {
-            "required": true,
-            "type": "string",
-            "description": "The identifier of the VNF in A&AI",
-            "name": "vnfId",
-            "in": "path"
-          }
-        ],
-        "responses": {
-          "204": {
-            "description": "The VNF was deleted successfully"
-          }
-        }
-      }
-    },
-    "/so/{vnfmId}/vnfs/{vnfId}/scale": {
-      "post": {
-        "tags": [
-          "SO VNFM Adaptor"
-        ],
-        "summary": "VNF scale",
-        "description": "VNF scale request",
-        "operationId": "vnf_scale",
-        "consumes": [
-          "application/json"
-        ],
-        "produces": [
-          "application/json"
-        ],
-        "parameters": [
-          {
-            "required": true,
-            "type": "string",
-            "description": "The identifier of the VNFM in A&AI",
-            "name": "vnfmId",
-            "in": "path"
-          },
-          {
-            "required": true,
-            "type": "string",
-            "description": "The identifier of the VNF in A&AI",
-            "name": "vnfId",
-            "in": "path"
-          },
-          {
-            "in": "body",
-            "name": "body",
-            "description": "VNF scale request parameters",
-            "required": true,
-            "schema": {
-              "$ref": "#/definitions/SoVnfScaleRequest"
-            }
-          }
-        ],
-        "responses": {
-          "201": {
-            "description": "",
-            "schema": {
-              "$ref": "#/definitions/SoJobHandler"
-            }
-          }
-        }
-      }
-    },
-    "/so/{vnfmId}/vnfs/{vnfId}/customOperation": {
-      "post": {
-        "tags": [
-          "SO VNFM Adaptor"
-        ],
-        "summary": "VNF scale",
-        "description": "VNF scale request",
-        "operationId": "vnf_scale",
-        "consumes": [
-          "application/json"
-        ],
-        "produces": [
-          "application/json"
-        ],
-        "parameters": [
-          {
-            "required": true,
-            "type": "string",
-            "description": "The identifier of the VNFM in A&AI",
-            "name": "vnfmId",
-            "in": "path"
-          },
-          {
-            "required": true,
-            "type": "string",
-            "description": "The identifier of the VNF in A&AI",
-            "name": "vnfId",
-            "in": "path"
-          },
-          {
-            "in": "body",
-            "name": "body",
-            "description": "VNF scale request parameters",
-            "required": true,
-            "schema": {
-              "$ref": "#/definitions/SoVnfCustomOperation"
-            }
-          }
-        ],
-        "responses": {
-          "201": {
-            "description": "",
-            "schema": {
-              "$ref": "#/definitions/SoJobHandler"
-            }
-          }
-        }
-      }
-    },
-    "/so/{vnfmId}/vnfs/{vnfId}/heal": {
-      "post": {
-        "tags": [
-          "SO VNFM Adaptor"
-        ],
-        "summary": "VNF heal",
-        "description": "VNF heal",
-        "operationId": "vnf_heal",
-        "consumes": [
-          "application/json"
-        ],
-        "produces": [
-          "application/json"
-        ],
-        "parameters": [
-          {
-            "required": true,
-            "type": "string",
-            "description": "The identifier of the VNFM in A&AI",
-            "name": "vnfmId",
-            "in": "path"
-          },
-          {
-            "required": true,
-            "type": "string",
-            "description": "The identifier of the VNF in A&AI",
-            "name": "vnfId",
-            "in": "path"
-          },
-          {
-            "in": "body",
-            "name": "body",
-            "description": "VNF heal request parameters",
-            "required": true,
-            "schema": {
-              "$ref": "#/definitions/SoVnfHealRequest"
-            }
-          }
-        ],
-        "responses": {
-          "201": {
-            "description": "",
-            "schema": {
-              "$ref": "#/definitions/SoJobHandler"
-            }
-          }
-        }
-      }
-    },
-    "/so/{vnfmId}/vnfs/{vnfId}/terminate": {
-      "post": {
-        "tags": [
-          "SO VNFM Adaptor"
-        ],
-        "summary": "VNF terminate",
-        "description": "VNF terminate",
-        "operationId": "vnf_terminate",
-        "consumes": [
-          "application/json"
-        ],
-        "produces": [
-          "application/json"
-        ],
-        "parameters": [
-          {
-            "required": true,
-            "type": "string",
-            "description": "The identifier of the VNFM in A&AI",
-            "name": "vnfmId",
-            "in": "path"
-          },
-          {
-            "required": true,
-            "type": "string",
-            "description": "The identifier of the VNF in A&AI",
-            "name": "vnfId",
-            "in": "path"
-          },
-          {
-            "in": "body",
-            "name": "body",
-            "description": "VNF termination request parameters",
-            "required": true,
-            "schema": {
-              "$ref": "#/definitions/SoVnfTerminationRequest"
-            }
-          }
-        ],
-        "responses": {
-          "201": {
-            "description": "",
-            "schema": {
-              "$ref": "#/definitions/SoJobHandler"
-            }
-          }
-        }
-      }
-    },
-    "/so/{vnfmId}/jobs/{jobId}": {
-      "get": {
-        "tags": [
-          "SO VNFM Adaptor"
-        ],
-        "summary": "Query job status",
-        "description": "Query the job status",
-        "operationId": "get_jobstatus",
-        "parameters": [
-          {
-            "required": true,
-            "type": "string",
-            "description": "The identifier of the VNFM in A&AI",
-            "name": "vnfmId",
-            "in": "path"
-          },
-          {
-            "required": true,
-            "type": "string",
-            "description": "The identifier of the job",
-            "name": "jobId",
-            "in": "path"
-          }
-        ],
-        "responses": {
-          "202": {
-            "description": "The details of a job",
-            "schema": {
-              "$ref": "#/definitions/SoJobDetail"
-            }
-          },
-          "404": {
-            "description": "The job is unknown to the VNFM. The VNFM does not keep finished jobs for forever.",
-            "schema": {
-              "$ref": "#/definitions/SoJobDetail"
-            }
-          }
-        }
-      }
-    }
-  },
-  "definitions": {
-    "SoJobHandler": {
-      "type": "object",
-      "properties": {
-        "jobId": {
-          "required": true,
-          "description": "The identifier of the job",
-          "type": "string"
-        }
-      }
-    },
-    "SoJobStatus": {
-      "description": "The status of the job",
-      "type": "string",
-      "enum": [
-        "started",
-        "finished",
-        "failed"
-      ]
-    },
-    "SoJobDetail": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/SoJobHandler"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "status": {
-              "required": true,
-              "description": "The status of the job",
-               "$ref": "#/definitions/SoJobStatus"
-            },
-            "description": {
-              "required": true,
-              "description": "The description of the current state of the job",
-              "type": "string"
-            }
-          }
-        }
-      ]
-    },
-    "SoVnfCreationRequest": {
-      "type": "object",
-      "properties": {
-        "name": {
-          "required": true,
-          "description": "The name of the VNF",
-          "type": "string"
-        },
-        "csarId": {
-          "required": true,
-          "description": "The identifier of the VNF package in SDC",
-          "type": "string"
-        },
-        "nsId": {
-          "required": false,
-          "description": "The identifier of the NS in AAI",
-          "type": "string"
-        },
-        "description": {
-          "required": false,
-          "description": "The description of the VNF",
-          "type": "string"
-        },
-        "additionalParams": {
-          "description": "Additional VNFM specific parameters",
-          "type": "object",
-          "additionalProperties": true
-        }
-      }
-    },
-    "SoVnfCreationResponse": {
-      "type": "object",
-      "properties": {
-        "vnfId": {
-          "required": true,
-          "description": "The identifier of the created VNF",
-          "type": "string"
-        }
-      }
-    },
-    "SoVduMapping": {
-      "type": "object",
-      "properties": {
-        "vduId": {
-          "required": true,
-          "description": "The identifier of the VDU within the VNF package",
-          "type": "string"
-        },
-        "imageId": {
-          "required": true,
-          "description": "The provider id of the image to be used for the VDU",
-          "type": "string"
-        },
-        "flavourId": {
-          "required": true,
-          "description": "The provider id of the flavour to be used for the VDU",
-          "type": "string"
-        }
-      }
-    },
-    "SoServerMapping": {
-      "type": "object",
-      "description": "Maps a server instance to a VDU and availability zone",
-      "properties": {
-        "vduId": {
-          "required": true,
-          "description": "The identifier of the VDU",
-          "type": "string"
-        },
-        "availabilityZoneId": {
-          "required": false,
-          "description": "The provider id of the availability zone to be used for the server instance",
-          "type": "string"
-        }
-      }
-    },
-    "SoAssignedAddresses": {
-      "type": "object",
-      "properties": {
-        "cpdId" : {
-          "required": true,
-          "description": "The identifier of the connection point descriptor",
-          "type" : "string"
-        },
-        "ipAddress": {
-          "required": true,
-          "description": "The IP address to be used",
-          "type": "string"
-        }
-      }
-    },
-    "SoNetworkMapping": {
-      "type": "object",
-      "properties": {
-        "vldId": {
-          "required": true,
-          "description": "The identifier of the network in the VNF package",
-          "type": "string"
-        },
-        "networkProviderId": {
-          "required": true,
-          "description": "The provider id of the network be used for the given purpose",
-          "type": "string"
-        },
-        "assignedAddresses": {
-          "required": true,
-          "description": "The assigned network addresses",
-          "type" : "array",
-          "items": {
-            "$ref": "#/definitions/SoAssignedAddresses"
-          }
-        }
-      }
-    },
-    "SoVnfActivationRequest": {
-      "type": "object",
-      "properties": {
-        "vimId" : {
-          "required" : true,
-           "type" : "string",
-          "description" : "The identifier of the VIM on which the VNF is to be instantiated"
-        },
-        "serverMappings": {
-          "required": true,
-          "description": "The server mappings",
-          "type" : "array",
-          "items": {
-            "$ref": "#/definitions/SoServerMapping"
-          }
-        },
-        "vduMappings": {
-          "required": true,
-          "description": "The VDU mappings",
-          "type" : "array",
-          "items": {
-            "$ref": "#/definitions/SoVduMapping"
-          }
-        },
-        "networkMappings": {
-          "required": true,
-          "description": "The network mappings",
-          "type" : "array",
-          "items": {
-            "$ref": "#/definitions/SoNetworkMapping"
-          }
-        },
-        "additionalParams": {
-          "description": "Additional VNFM specific parameters",
-          "type": "object",
-          "additionalProperties": true
-        }
-      }
-    },
-    "SoScaleDirection": {
-      "description": "The direction of the scale",
-      "type": "string",
-      "enum": [
-        "in",
-        "out"
-      ]
-    },
-    "SoVnfScaleRequest": {
-      "type": "object",
-      "properties": {
-        "aspectId": {
-          "type": "string",
-          "description": "The identifier of the scaling aspect in the VNF package"
-        },
-        "steps": {
-          "type": "integer",
-          "description": "The expected absolute scale level"
-        },
-        "direction": {
-          "required": true,
-          "description": "The direction of the scale",
-          "$ref": "#/definitions/SoScaleDirection"
-        },
-        "serverMappings": {
-          "required": true,
-          "description": "The server mappings",
-          "items": {
-            "$ref": "#/definitions/SoServerMapping"
-          }
-        },
-        "additionalParams": {
-          "description": "Additional VNFM specific parameters",
-          "type": "object",
-          "additionalProperties": true
-        }
-      }
-    },
-    "SoVnfCustomOperation": {
-      "type": "object",
-      "properties": {
-        "operationId": {
-          "required" : true,
-          "type": "string",
-          "description": "The identifier of the custom operation"
-        },
-        "additionalParams": {
-          "description": "Additional VNFM specific parameters",
-          "type": "object",
-          "additionalProperties": true
-        }
-      }
-    },
-    "SoVnfHealRequest": {
-      "type": "object",
-      "properties": {
-        "vnfcId": {
-          "type": "string",
-          "description": "The identifier of the VNFC to be healed"
-        },
-        "additionalParams": {
-          "description": "Additional VNFM specific parameters",
-          "type": "object",
-          "additionalProperties": true
-        }
-      }
-    },
-    "SoTerminationMode": {
-      "description": "The way in which the VNF is terminated",
-      "type": "string",
-      "enum": [
-        "forceful",
-        "graceful"
-      ]
-    },
-    "SoVnfTerminationRequest": {
-      "type": "object",
-      "properties": {
-        "mode" : {
-          "required" : true,
-          "description" : "The VNF termination mode",
-          "$ref": "#/definitions/SoTerminationMode"
-        },
-        "gracefulTerminationTimeoutInMs": {
-          "required" : false,
-          "type": "integer",
-          "description": "The timeout for graceful termination. After the timeout has expired forceful termination is attempted."
-        },
-        "additionalParams": {
-          "description": "Additional VNFM specific parameters",
-          "type": "object",
-          "additionalProperties": true
-        }
-      }
-    }
-  }
-}