summaryrefslogtreecommitdiffstats
path: root/cvp/opnfv_testapi/cmd/server.py
diff options
context:
space:
mode:
authorgrakiss <grakiss.wanglei@huawei.com>2017-09-28 03:47:54 -0400
committergrakiss <grakiss.wanglei@huawei.com>2017-09-28 05:15:01 -0400
commit0cf6b232ac9cf128ee9183a27c08f4f74ab2e2e6 (patch)
tree7be233b8f8f65fa968c7b93f1d1e75b691952ed9 /cvp/opnfv_testapi/cmd/server.py
parent63c2e2aa4b8d86349a767f611123ceafc19fa6d6 (diff)
add api&web services for cvp
JIRA: DOVETAIL-512 add api&web services for cvp Change-Id: I9ef9525e980fe61dc3108035ef9a3ff8783b2697 Signed-off-by: grakiss <grakiss.wanglei@huawei.com>
Diffstat (limited to 'cvp/opnfv_testapi/cmd/server.py')
-rw-r--r--cvp/opnfv_testapi/cmd/server.py57
1 files changed, 57 insertions, 0 deletions
diff --git a/cvp/opnfv_testapi/cmd/server.py b/cvp/opnfv_testapi/cmd/server.py
new file mode 100644
index 00000000..a5ac5eb6
--- /dev/null
+++ b/cvp/opnfv_testapi/cmd/server.py
@@ -0,0 +1,57 @@
+##############################################################################
+# Copyright (c) 2015 Orange
+# guyrodrigue.koffi@orange.com / koffirodrigue@gmail.com
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+"""
+Pre-requisites:
+ pip install motor
+ pip install tornado
+
+We can launch the API with this file
+
+TODOs :
+ - logging
+ - json args validation with schemes
+ - POST/PUT/DELETE for PODs
+ - POST/PUT/GET/DELETE for installers, platforms (enrich results info)
+ - count cases for GET on projects
+ - count results for GET on cases
+ - include objects
+ - swagger documentation
+ - setup file
+ - results pagination
+ - unit tests
+
+"""
+
+import tornado.ioloop
+
+from opnfv_testapi.common.config import CONF
+from opnfv_testapi.router import url_mappings
+from opnfv_testapi.tornado_swagger import swagger
+
+
+def make_app():
+ swagger.docs(base_url=CONF.swagger_base_url,
+ static_path=CONF.static_path)
+ return swagger.Application(
+ url_mappings.mappings,
+ debug=CONF.api_debug,
+ auth=CONF.api_authenticate,
+ cookie_secret='opnfv-testapi',
+ )
+
+
+def main():
+ application = make_app()
+ application.listen(CONF.api_port)
+ tornado.ioloop.IOLoop.current().start()
+
+
+if __name__ == "__main__":
+ main()