diff options
author | Yun Huang <yun.huang@windriver.com> | 2018-05-30 18:15:36 +0800 |
---|---|---|
committer | Yun Huang <yun.huang@windriver.com> | 2018-05-30 18:15:36 +0800 |
commit | 889735bc51e90217ea6540ecc5d62337434cff6c (patch) | |
tree | 4605a6aea96141309edb206bfba1e17ba806ce10 | |
parent | 785f119effd057e0e5e44ab2e1d1f3ec90c5ce5d (diff) |
Enable swagger UI for proxied API of capacity
Change-Id: I429c77dafd14a639ff607272ce86a37dd27f3c83
Issue-ID: MULTICLOUD-240
Signed-off-by: Yun Huang <yun.huang@windriver.com>
-rw-r--r-- | share/newton_base/swagger/multicloud.capacity.swagger.json | 66 | ||||
-rw-r--r-- | share/newton_base/swagger/views.py | 6 |
2 files changed, 72 insertions, 0 deletions
diff --git a/share/newton_base/swagger/multicloud.capacity.swagger.json b/share/newton_base/swagger/multicloud.capacity.swagger.json new file mode 100644 index 00000000..903458a9 --- /dev/null +++ b/share/newton_base/swagger/multicloud.capacity.swagger.json @@ -0,0 +1,66 @@ +{ + "swagger": "2.0", + "info": { + "version": "1.0.0", + "title": "MultiVIM Capacity check rest API" + }, + "basePath": "/api/multicloud-newton/v0/", + "tags": [ + { + "name": "MultiVIM Capacity check" + } + ], + "paths": { + "/{vimid}/capacity_check": { + "post": { + "tags": [ + "MultiCloud Capacity Proxy" + ], + "summary": "check capacity", + "description": "check capacity", + "operationId": "check_openstack_capacity", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "vimid", + "in": "path", + "description": "vim instance id", + "required": true, + "type": "string" + }, + { + "name": "X-Auth-Token", + "in": "header", + "description": "authenticated token", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "body", + "description": "parameters to check openstack capacity", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "successful operation", + "type": "string" + }, + "404": { + "description": "the vim id is wrong" + }, + "500": { + "description": "the vim capacity check is not accessable" + } + } + } + } + } +} diff --git a/share/newton_base/swagger/views.py b/share/newton_base/swagger/views.py index 0e3722ec..165cf01e 100644 --- a/share/newton_base/swagger/views.py +++ b/share/newton_base/swagger/views.py @@ -96,6 +96,12 @@ class SwaggerJsonView(APIView): f.close() json_data["paths"].update(json_data_temp["paths"]) + json_file = os.path.join(os.path.dirname(__file__), 'multicloud.capacity.swagger.json') + f = open(json_file) + json_data_temp = json.JSONDecoder().decode(f.read()) + f.close() + json_data["paths"].update(json_data_temp["paths"]) + json_data["basePath"] = "/api/multicloud-newton/v0/" json_data["info"]["title"] = "Service NBI of MultiCloud plugin for OpenStack Newton" return Response(json_data) |