aboutsummaryrefslogtreecommitdiffstats
path: root/api/utils
AgeCommit message (Collapse)AuthorFilesLines
2019-02-11Add ability to get data from different DBs in influxEmma Foley1-8/+11
In order to get data from Barometer, the influx helper need to be updated to recognise different DBs. This patch adds an optional arg to specify which database to use. By default, the configured dispatcher for Yardstick is used. Limitation: The new change hard codes barometer DB name to be used, and assumes that it is in the same instance of Influx as the Yardstick dispatcher. This can be extended later to make it configurable, however, a new config option would have to be introduced. JIRA: YARDSTICK-1593 Change-Id: Idee9c3491d6bf7b549e014edd9ff031312cf0ec2 Signed-off-by: Emma Foley <emma.l.foley@intel.com>
2018-05-04Parse "dispatcher" options correctly from InfluxDB clientRodolfo Alonso Hernandez1-12/+16
The InfluxDB client needs first to retrieve which dispatchers are available from "DEFAULT:dispatcher". This parameter accepts comma separated values. "get_data_db_client" method needs to search for "influxdb" in this string parameter. JIRA: YARDSTICK-1136 Change-Id: I5efafcffbd3dbf906ca9bebd75b3717df8bbb75d Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
2017-07-24Bugfix: missing license in api directorychenjiankun1-0/+8
JIRA: YARDSTICK-759 In api directory, there are many files missing license header. We need to add it. Change-Id: Ia46cf207295007d4eb7fbf0d3319611f256c36bc Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
2017-07-21Add API(v2) to run taskchenjiankun1-15/+23
JIRA: YARDSTICK-741 API: /api/v2/yardstick/tasks/<task_id> METHOD: PUT PARAMS: { 'action': 'run' } Change-Id: Ia5340c6ff45e3e7e70ab4597c39476138e7016f2 Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
2017-07-11Yardstick API architecture improvementchenjiankun1-44/+0
JIRA: YARDSTICK-710 Since we have the plan to upload api v2 and gui. We need to add put and delete method. So the architecture need to be improved. Change-Id: Ie20a79c26ef6c581897ce4e63980fa2895b162d2 Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
2017-06-30Change prepareYardstickEnv to prepare_env and add log infochenjiankun1-11/+2
JIRA: YARDSTICK-697 Currently the action in env like prepareYardstickEnv, createGrafanaContainer, createInfluxDBContainer, this is not python style. So I do some change: prepareYardstickEnv->prepare_env createGrafanaContainer->create_grafana createInfluxDBContainer->create_influxdb And also add some log info in env_action. Change-Id: Ia91576b975f3de76b96e312779fda4911e7cac24 Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
2017-06-29Call core code directly in the API of run test casechenjiankun3-70/+38
JIRA: YARDSTICK-688 We need to call core code directly in the API of runTestCase. It would be more stable. Change-Id: I431a85ded7cd3b20da0462f947c25d91bb99decd Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
2017-04-01Yardstick virtualenv supportchenjiankun3-7/+7
JIRA: YARDSTICK-620 Currently we recommend using docker to run yardstick. And it is hard to use virtualenv to install yardstick. So I modify install.sh in yardstick root path. It will support using virtualenv to install yardstick(including API) in linux. In this patch, I make yardstick support read yardstick configuration have priority over constants. Change-Id: I9ea1241b228532a6497451e6c8f232173ddb783e Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
2017-02-08pylint fixes: remove redundant parens, fix comparison orderRoss Brattain2-2/+2
removed redundant parens in if and while clauses use var != constant, not constant != var. Python doesn't allow for assignment in if statements, so we don't have to use the old C workarounds remove unwanted commas use raw strings for regexps with backslashes, e.g. r'\s' instead of '\s' Change-Id: I7aad645dd3d7f4b4b62f4e4510a425611c9d28f2 Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
2017-01-12Add support for Python 3Ross Brattain3-10/+15
Porting to Python3 using Openstack guidelines: https://wiki.openstack.org/wiki/Python3 This passes unittests on Python 3.5 and passes opnfv_smoke suite Updates: use six for urlparse and urlopen fix exception.message attribute removal run unittests on python3 use unitest.mock on python 3 fix open mock for vsperf fix float division by using delta/eplison comparison use unicode in StringIO use plugin/sample_config.yaml relative path from test case fixed apexlake unittests upgraded to mock 2.0.0 to match python3 unittest.mock features fixed flake8 issues implement safe JSON decode with oslo_serialization.jsonutils.dump_as_bytes() implement safe unicode encode/decode with oslo_utils.encodeutils heat: convert pub key file from bytes to unicode pkg_resources returns raw bytes, in python3 we have to decode this to utf-8 unicode so JSON can encode it for heat template JIRA: YARDSTICK-452 Change-Id: Ib80dd1d0c0eb0592acd832b82f6a7f8f7c20bfda Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
2016-12-28Record test case names when run a task using APIchenjiankun3-42/+26
JIRA: YARDSTICK-509 Currently we use influxdb as database and will not record test case name when run a test case. So if we must offer test case name if we want to get result from API. Regarding future requirement, I create sqlite database and alchemy orm framework. And record test case name when run a test case. So we needn't offer test case any more when call for get result API. Change-Id: I7d7dc24543a33918546267591f7bdcd0742928cb Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
2016-11-30Use flask jsonify method to return json resultchenjiankun1-3/+4
JIRA: YARDSTICK-433 Python json lib is very hard to parse when transport via network. Flask jsonfiy is more easier to use. Change-Id: I2afd5238d65bc474170c57d2f9307dc881ea4990 Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
2016-11-29Bugfix: dict don't have startwith method error when use API to run test casechenjiankun1-1/+1
JIRA: YARDSTICK-431 When use API to run test case and set the task-args args, it will encounter a error of dict object do not have startwith method. The reason is yardstick will only accept the str type. So we need to change the dict to str. Change-Id: I26aac35c477842ab9cd692bdacd401e68673b01d Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
2016-11-24Create API to get test case resultchenjiankun3-1/+56
JIRA: YARDSTICK-416 Change-Id: I722566bb0e5bc5288cd6302559e56a3f92ebbeca Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
2016-11-22influx: use urlsplit.hostname instead of netlocRoss Brattain1-1/+1
turns out urlsplit supports .hostname so we don't have to split netloc Change-Id: I09614812296a216a369559bf55d66d94380feb94 Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
2016-11-21Create API to run test caseschenjiankun4-0/+132
JIRA: YARDSTICK-413 Change-Id: Ibf58b50b568fae3f2eea985b25ee33be0a3666b7 Signed-off-by: chenjiankun <chenjiankun1@huawei.com>