From 980523c1c5fa65b4c4a786d6ddb1ddfb70a63bc6 Mon Sep 17 00:00:00 2001 From: Morgan Richomme Date: Tue, 4 Jul 2017 17:23:33 +0200 Subject: Initiate packetization of Testing reporting Testing reporting provides - static reporting pages [1] (jinja2) - landing pages including test case catalogue [2] (angular) It consumes the Test API to build web pages providing status for the testing projects (so far functest, yardstick, storperf and qtip). Dockerization has been initiated [3]. The goal is to replace the static page hosted on testresults.opnfv.org by a docker regenerated and redeployed when reporting code is changed But the docker and more generally the testing reporting directory must be refactored to - manage dependencies properly - leverage tox (py27, docs, pylint, pep8) This patch - setups tox (py27, pep8, pylint, docs) - integrate the requirement management - fix pep8 errors - introduce 1 dummy unit test This patch does not - fix pylint errors - create any doc [1]: http://testresults.opnfv.org/reporting2/display/index.html [2]: http://testresults.opnfv.org/reporting2/reporting/index.html [3]: https://gerrit.opnfv.org/gerrit/#/c/36735/ Change-Id: I4613de7ca7036d6c6bbb8f58ade492b1d673599b Signed-off-by: Morgan Richomme --- reporting/api/handlers/projects.py | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 reporting/api/handlers/projects.py (limited to 'reporting/api/handlers/projects.py') diff --git a/reporting/api/handlers/projects.py b/reporting/api/handlers/projects.py new file mode 100644 index 0000000..02412cd --- /dev/null +++ b/reporting/api/handlers/projects.py @@ -0,0 +1,27 @@ +############################################################################## +# Copyright (c) 2017 Huawei Technologies Co.,Ltd and others. +# +# 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.apaiche.org/licenses/LICENSE-2.0 +############################################################################## +import requests + +from tornado.escape import json_encode + +from api.handlers import BaseHandler +from api import conf + + +class Projects(BaseHandler): + def get(self): + self._set_header() + + url = '{}/projects'.format(conf.base_url) + projects = requests.get(url).json().get('projects', {}) + + project_url = 'https://wiki.opnfv.org/display/{}' + data = {p['name']: project_url.format(p['name']) for p in projects} + + return self.write(json_encode(data)) -- cgit 1.2.3-korg