aboutsummaryrefslogtreecommitdiffstats
path: root/api/server.py
diff options
context:
space:
mode:
authorchenjiankun <chenjiankun1@huawei.com>2016-12-22 08:41:08 +0000
committerchenjiankun <chenjiankun1@huawei.com>2016-12-24 15:36:51 +0000
commit8d702f720aeb9566adb258e886c12a348bedc84b (patch)
tree6e662b5ad5fc6a85db7adf4483622603cefa9496 /api/server.py
parentbd847993c084f2d29de099c4b0e33a3d2e8de03e (diff)
Add sqlite and SQLAlchemy support for API
JIRA: YARDSTICK-505 Now yardstick API need a database to store API data. And for future the yardstick GUI also need a self database. So I choose a light-weight database sqlite. And use SQLAlchemy to do ORM. Change-Id: I1edc350ec6f57ad67785de549c2135c86ea60a4a Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
Diffstat (limited to 'api/server.py')
-rw-r--r--api/server.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/api/server.py b/api/server.py
index 64a2b4f96..fac821b00 100644
--- a/api/server.py
+++ b/api/server.py
@@ -12,6 +12,8 @@ from flask import Flask
from flask_restful import Api
from flasgger import Swagger
+from api.database import init_db
+from api.database import db_session
from api.urls import urlpatterns
from yardstick import _init_logging
@@ -19,11 +21,18 @@ logger = logging.getLogger(__name__)
app = Flask(__name__)
+init_db()
+
Swagger(app)
api = Api(app)
+@app.teardown_request
+def shutdown_session(exception=None):
+ db_session.remove()
+
+
reduce(lambda a, b: a.add_resource(b.resource, b.url,
endpoint=b.endpoint) or a, urlpatterns, api)