Initial all url of api v2 77/37477/1
authorchenjiankun <chenjiankun1@huawei.com>
Fri, 14 Jul 2017 07:12:03 +0000 (07:12 +0000)
committerchenjiankun <chenjiankun1@huawei.com>
Fri, 14 Jul 2017 07:17:58 +0000 (07:17 +0000)
JIRA: YARDSTICK-648

Change-Id: I915889a974da9c49188c25fe2443ece481987ecb
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
api/server.py
api/urls.py

index c1548ca..158b8a5 100644 (file)
@@ -32,7 +32,7 @@ try:
 except ImportError:
     from urllib.parse import urljoin
 
-logger = logging.getLogger(__name__)
+LOG = logging.getLogger(__name__)
 
 app = Flask(__name__)
 
@@ -62,7 +62,7 @@ def init_db():
         return False
 
     subclses = filter(func, inspect.getmembers(models, inspect.isclass))
-    logger.debug('Import models: %s', [a[1] for a in subclses])
+    LOG.debug('Import models: %s', [a[1] for a in subclses])
     Base.metadata.create_all(bind=engine)
 
 
@@ -77,12 +77,15 @@ def get_endpoint(url):
 
 
 for u in urlpatterns:
-    api.add_resource(get_resource(u.target), u.url, endpoint=get_endpoint(u.url))
+    try:
+        api.add_resource(get_resource(u.target), u.url, endpoint=get_endpoint(u.url))
+    except StopIteration:
+        LOG.error('url resource not found: %s', u.url)
 
 
 if __name__ == '__main__':
     _init_logging()
-    logger.setLevel(logging.DEBUG)
-    logger.info('Starting server')
+    LOG.setLevel(logging.DEBUG)
+    LOG.info('Starting server')
     init_db()
     app.run(host='0.0.0.0')
index 82df175..5c7e9f7 100644 (file)
@@ -26,9 +26,31 @@ urlpatterns = [
     Url('/api/v2/yardstick/environments/action', 'v2_environments'),
     Url('/api/v2/yardstick/environments/<environment_id>', 'v2_environment'),
 
-    Url('/api/v2/yardstick/environments/openrcs/action', 'v2_openrcs'),
-    Url('/api/v2/yardstick/environments/openrcs/<openrc_id>', 'v2_openrc'),
+    Url('/api/v2/yardstick/openrcs/action', 'v2_openrcs'),
+    Url('/api/v2/yardstick/openrcs/<openrc_id>', 'v2_openrc'),
 
     Url('/api/v2/yardstick/pods/action', 'v2_pods'),
     Url('/api/v2/yardstick/pods/<pod_id>', 'v2_pod'),
+
+    Url('/api/v2/yardstick/images', 'v2_images'),
+    Url('/api/v2/yardstick/images/action', 'v2_images'),
+
+    Url('/api/v2/yardstick/containers/action', 'v2_containers'),
+    Url('/api/v2/yardstick/containers/<container_id>', 'v2_container'),
+
+    Url('/api/v2/yardstick/projects', 'v2_projects'),
+    Url('/api/v2/yardstick/projects/action', 'v2_projects'),
+    Url('/api/v2/yardstick/projects/<project_id>', 'v2_project'),
+
+    Url('/api/v2/yardstick/tasks', 'v2_tasks'),
+    Url('/api/v2/yardstick/tasks/action', 'v2_tasks'),
+    Url('/api/v2/yardstick/tasks/<task_id>', 'v2_task'),
+
+    Url('/api/v2/yardstick/testcases', 'v2_testcases'),
+    Url('/api/v2/yardstick/testcases/action', 'v2_testcases'),
+    Url('/api/v2/yardstick/testcases/<case_name>', 'v2_testcase'),
+
+    Url('/api/v2/yardstick/testsuites', 'v2_testsuites'),
+    Url('/api/v2/yardstick/testsuites/action', 'v2_testsuites'),
+    Url('/api/v2/yardstick/testsuites/<suite_name>', 'v2_testsuites')
 ]