Age | Commit message (Collapse) | Author | Files | Lines |
|
1. fix safe_dump
2. fix pep8 problem, use flask_restapi custom error handling [1]
[1] https://flask-restful.readthedocs.io/en/latest/extending.html#custom-error-handlers
JIRA: YARDSTICK-1165
RestApi openrc dump clouds.yaml error
it now use yarml.dump, should be yaml.safe_dump.
dump would gererate !!python/unicode and cause error when upload openrc file in gui
Change-Id: Id3e85f7ba7d4967277ef79109b07d7552179e5db
Signed-off-by: rexlee8776 <limingjiang@huawei.com>
(cherry picked from commit f1a71b2889da3b49358b10b9a12ea5a512dd2743)
|
|
JIRA: YARDSTICK-1110
To match OpenStack Pike release, we upgrade novaclient from 7.1.1 to 9.1.1.
And the client interface has changed, it no longer has nova_client.images attribute.
So I use shade instead. Later will change all same issue.
Change-Id: Ie4f54069d4346e44e2ad925439930504b945cbad
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
(cherry picked from commit 5ac59e495d74b64ab377f1ba25bb00b11da14e67)
|
|
|
|
JIRA: YARDSTICK-1072
We need to show SUT information in GUI.
Change-Id: I40bcd513f3c6a443c82764687637ac5258b99584
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
JIRA: YARDSTICK-981
We need to add function to enable user to config task parameters in GUI.
The way to config must be more friendly.
Change-Id: I8746149084f1d554b48ed392f2fef4748e279dfb
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
JIRA: YARDSTICK-817
Since checkno.png and checkyes.png is not Apache-2 license based.
so we need to remove them.
Change-Id: I40dd303fb54a3736ca969ac1c186d2cd23408436
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
|
|
JIRA: YARDSTICK-812
Currently grafana data source configuration is hardcoding .
It is a risk.
so I read it from yardstick.conf.
Change-Id: I8a9c8afbce6c4534fc43a0bfb5c56d67a8b59db0
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
segmentation_id should be number, provider should be string
Change-Id: Iabdc08cb0989f4d585013b5a8ef3662442eeda45
Signed-off-by: rexlee8776 <limingjiang@huawei.com>
|
|
|
|
JIRA: YARDSTICK-782
As user, we need to upload image from local/url.
If upload image from local, user need to choose local image, then
we will load it to openstack.
If upload image from url, we will download it and load it to openstack.
Change-Id: Ia9a42fda15a1dfc91476643635343a2f77a94a6b
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
There are multiple issues wiht YAML loading.
1. Jinja2 renders None values as a string 'None'. This is not valid YAML
we need to render None values to '~' or 'null' which is the native YAML
None value.
2. Jinja2 renders dict and lists that contain unicode with
u'foo' values. This is not value YAML syntax.
Because we are serializing dict and lists into YAML, we
need to encode them as valid YAML. We can override Jinja2 finalize to
use yaml.dump to dump inline YAML.
We use yaml.safe_dump(elem, default_flow_style=True).replace('\n', '')
to generate valid single-line YAML dict and list values.
But this problem highlights the general difficulties with templating and
loading files.
We could avoid this Python->Jinja2->YAML->Python issue by directly
injecting the list or dict after the YAML is loaded.
I'm not sure of the real utility of these templates.
3. On Python 2 YAML loader is rendering all strings
as unicode. This does not work for Trex because Trex is broken
and badly coded. Trex does type checking against str() which
is different for Python 2 and Python 3.
The default YAML loader will return native string types, str() or unicode()
for Python 2 and Python 3 respectively.
The bad Trex codes is in convert_val:
https://github.com/cisco-system-traffic-generator/trex-core/blob/master/scripts/automation/trex_control_plane/stl/trex_stl_lib/trex_stl_packet_builder_scapy.py#L674
def convert_val (val):
if is_integer(val):
return val
if type(val) == str:
return ipv4_str_to_num (is_valid_ipv4(val))
raise CTRexPacketBuildException(-11,("init val invalid %s ") % val );
This code is doing type(val) == str. This is bad and broken.
We can't fix Trex, so we have to render all strings as native str() types
The bug here was that the Heat template loader template_format.py
was overriding the global YAML loader to always return unicode.
We don't want this global override.
To fix this we have to use local subclasses of the yaml.SafeLoader
class.
But in order to dynamically subclass from CSafeLoader or SafeLoader
we have to use the type() builtin to define a new class at runtime.
Once we have new classes defined, we can safely isolate different
YAML constructors and return unicode or not depending on the case.
To be consistent we implement a new yaml_loader.py module to centralize
all non-Heat template yaml loading to ensure correct uncode/str
conversion
Change-Id: Iebf9cf78fbda390977c390436b0869e7bbf503eb
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
JIRA: YARDSTICK-775
We have GUI now, but we can't see real time log in GUI view.
So I add real time log view in GUI.
Change-Id: Ie83f327ef0a94302afa6b3def764fec6ef5818d1
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
JIRA: YARDSTICK-766
We have the demand to get all task-args candidates in test case yaml
file,
so that user get easily change it.
The response will like:
{
'status': 1,
'result': {
'testcase': case content,
'args': {
'image': {'description': '', 'type': 'String'}
}
}
}
In this patch, I add jinja2schema 0.1.4 in requirements.txt.
Change-Id: I450082402370add5ab29090286f026fe3cc8c36e
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
|
|
JIRA: YARDSTICK-758
As E release plan, we have the need of yardstick GUI.
This patch is GUI front end code and deployment.
The backend code is yardstick API.
Change-Id: Ib15f78bcc50168c7828beff97256e9939c6da809
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
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>
|
|
JIRA: YARDSTICK-754
API: /api/v2/yardstick/tasks
METHOD: GET
Change-Id: I556b0880674d78d67e0a556c4d95f902131cd027
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
|
|
|
|
|
|
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>
|
|
JIRA: YARDSTICK-752
API: /api/v2/yardstick/images
METHOD: GET
Change-Id: I7b0bba85d875575ee684cc42cad977af91d6f84e
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
|
|
JIRA: YARDSTICK-751
API: /api/v2/yardstick/images/action
METHOD: POST
PARAMS:
{
'action': 'load_image'
}
Change-Id: I9554f35c679ae2a861c7922080aa54a1ffc5bac7
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
JIRA: YARDSTICK-740
API: /api/v2/yardstick/tasks/<task_id>
METHOD: PUT
PARAMS:
{
'action': 'add_suite',
'args': {
'suite_name': 'opnfv_smoke',
'suite_content': suite_content
}
}
Change-Id: I1f81c45f143b2fea636cb87f60f2f394bf1380b1
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* changes:
Add API(V2) to get certain project info
Add API(v2) to get all projects info
|
|
|
|
JIRA: YARDSTICK-749
API: /api/v2/yardstick/testsuites/<suite_name>
METHOD: DELETE
Change-Id: Idfb5086ab3ac9e7ea6f9512ee5c7f02090d554c0
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
JIRA: YARDSTICK-748
API: /api/v2/yardstick/testsuites/<suite_name>
METHOD: GET
Change-Id: I0d60ddedff4f76504ebd2e61257bf1b9cad3b923
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
JIRA: YARDSTICK-747
API: /api/v2/yardstick/testsuites
METHOD: GET
Change-Id: I2375b6d2ea54704f5a2328cc8110058af038e777
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
JIRA: YARDSTICK-746
API: /api/v2/yardstick/testsuites/action
METHOD: POST
PARAMS:
{
'action': 'create_suite',
'args': {
'name': 'case_name',
'testcases': [
'opnfv_yardstick_tc002'
]
}
}
Change-Id: I7e07c599e64e7eedda274c72344e394f5535f055
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
JIRA: YARDSTICK-745
API: /api/v2/yardstick/testcases/<case_name>
METHOD: DELETE
Change-Id: Ic75ee60abfc00d20328ee45b9830dea1fe464482
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
JIRA: YARDSTICK-744
API: /api/v2/yardstick/testcases
METHOD: GET
Change-Id: I4b1867f713bce2f9f2342ecec8540b08b0bb3456
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
JIRA: YARDSTICK-743
API: /api/v2/yardstick/testcases
METHOD: GET
Change-Id: Iced97206cb4c5f68ee8a5729af937e8d45ca6e87
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
JIRA: YARDSTICK-742
API: /api/v2/yardstick/testcases/action
METHOD: POST
PARAMS:
{
'action': 'upload_case',
'args': {
'file': file
}
}
Change-Id: Id305e72a24ec28295ac4bae5e5b9ad83eb2c1e34
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|