Age | Commit message (Collapse) | Author | Files | Lines |
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "Sample CGNAPT VNF"
- Sample CGNAPT VNF
Change-Id: I0f5555a1674a5ecb7e2afb508d495b7872c90757
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
Signed-off-by: Edward MacGillivray <edward.s.macgillivray@intel.com>
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Sample VFW VNF
Change-Id: I32ca166cd6d818b57bbcfaf7c7e5a65b7147ba8d
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
Signed-off-by: Edward MacGillivray <edward.s.macgillivray@intel.com>
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "NSB fixes: docstring, whitespace, etc."
- NSB fixes: docstring, whitespace, etc.
remove unused docstring params
remove whitespace
fix sudo vnf_build command
ignore stdout
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
Change-Id: I6fcdbb0ed4bc6b7fc2f557529f5ff9fd960c05e9
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "bugfix: tc037/38 multiprocessing failed sometimes"
- bugfix: tc037/38 multiprocessing failed sometimes
set runner.join timeout
JIRA: YARDSTICK-771
Change-Id: Iec7d04549a45c0fbd0eb48dcaad7770fd5ca1f4e
Signed-off-by: rexlee8776 <limingjiang@huawei.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "pip_license: quick hack script to add license info to requirements.txt"
- pip_license: quick hack script to add license info to requirements.txt
Change-Id: Ic41772cb32cd53d405b16880bd43cf89307b4716
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "requirements.txt: add license info"
- requirements.txt: add license info
Change-Id: I9de6a51e7efb9e49da5bbd541c466f106c3a52e3
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "Collectd"
- Collectd
Change-Id: I15e4ac38b347a08350b71c68469e2793eeed92ab
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
Signed-off-by: Edward MacGillivray <edward.s.macgillivray@intel.com>
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "constants: cache YAML config values"
- constants: cache YAML config values
don't reparse the yardstick.yaml file each
time we lookup an option.
Since it is global data, just cache it in a global
var
Use pkg_resources.resource_filename
to lookup the path of yardstick tests, intsead of using __file__
pkg_resources is slightly more proper than __file__
at least for packages
Change-Id: I05d9748390a37bd45c53013fc084d23069ab7c51
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "IXIA traffic generator"
- IXIA traffic generator
Change-Id: I09bcb3f2c4b945283070d442589d3bf00468abbc
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
Signed-off-by: Edward MacGillivray <edward.s.macgillivray@intel.com>
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "Sample ACL VNF"
- Sample ACL VNF
Change-Id: I33de47ac6ca353d6c69f0d166809b4c95d3fd90f
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
Signed-off-by: Edward MacGillivray <edward.s.macgillivray@intel.com>
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "bugfix: tc025 and tc054 fail"
- bugfix: tc025 and tc054 fail
also modify tc025 an tc054 to be able to pass paras
JIRA: YARDSTICK-772
Change-Id: Ibeba931804cccfd74fc70fcf4fdb6af9d5c8ab77
Signed-off-by: rexlee8776 <limingjiang@huawei.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "bugfix: hosts should be clean if update_hosts twice"
- bugfix: hosts should be clean if update_hosts twice
JIRA: YARDSTICK-774
Change-Id: Id610d43d236ab3a7d1aa4b8cfd230a40958fac38
Signed-off-by: rexlee8776 <limingjiang@huawei.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Bugfix: remove ping package for it is GPL license
JIRA: YARDSTICK-777
In migrate test case, we use ping to count downtime.
But ping package is GPL license, so we need remove it.
Since ping command tool can not set timeout less then 1 second, and the
downtime is less then 1 second, so we need find another package to replace.
For now, I find most ping tool is GPL license, so maybe later we need to
implement ping ourselves.
And the migrate case can not calculate downtime unless user install ping
themselves.
Change-Id: I78cba5e4af9de2e3c0bb16b27570bed951caf440
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- NSB update
Refactored main NSB VNF classes accroding to class diagram
https://wiki.opnfv.org/display/yardstick/NSB+class+diagram
All the SampleVNFs have been separated and placed under
the SampleVNF class.
Added AutoConnectSSH to automatically create SSH conneciton on demand.
Added VnfdHelper class to wrap the VNFD dictionary in prepartion for
class-based modeling.
Extracted DpdkVnfSetupEnvHelper for DPDK based VNF setup.
Extracted Stats and other client config to ResourceHelper
Had to replace dict_key_flatten with deepgetitem due to Python 2.7
Jinja2 infinite recursion.
Change-Id: Ia8840e9c44cdbdf39aab6b02e6d2176b31937dc9
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
Signed-off-by: Edward MacGillivray <edward.s.macgillivray@intel.com>
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- fix heatclient import
for some reason, maybe apexlake, we didn't do the correct import
we need to import heatclient.client directly
Change-Id: I682c88ae780845adb0b5aa898390697197e3af5d
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "DRAFT: remove apexlake"
- DRAFT: remove apexlake
apexlake is unmaintained, so remove it
From some reason orchestrator/heat.py started failing
so fixup those unittests
Change-Id: Ie06508b5ab7c9dcf9fdfca83e173a188a894d564
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "replace yaml.load with yaml.safe_load"
- replace yaml.load with yaml.safe_load
yaml.safe_load is safer, obviously.
anteater will check for this
template_format use specialized constructor based on yaml.SafeLoader
JIRA: YARDSTICK-760
Change-Id: Ia3b0b3aa0765385a0ee472a4d83f49d424b5a77f
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "Fix adding right deb repo based on the distro we are running on"
- Fix adding right deb repo based on the distro we are running on
JIRA: YARDSTICK-669
Change-Id: I0f3848b7803bc62c88effd00e850755e514893c4
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "Add task-args(from yaml file) candidates in /api/v2/yardstick/testcases API"
- Add task-args(from yaml file) candidates in /api/v2/yardstick/testcases API
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>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "Add spec cpu2006 test case"
- Add spec cpu2006 test case
JIRA: YARDSTICK-764
This work is about support run SPEC CPU2006 benchmark.
users must get a "cpu2006-1.2.iso" from the SPEC website,
save it under the /home/opnfv/yardstick/yardstick/resources folder
(e.g. /home/opnfv/yardstick/yardstick/resources/cpu2006-1.2.iso),
user may also supply a runspec cfg file
(e.g. /home/opnfv/yardstick/yardstick/resources/files/yardstick_spec_cpu2006.cfg).
Change-Id: If4aecc1c14635a07589555196d2edc8bd37d7bdb
Signed-off-by: JingLu5 <lvjing5@huawei.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- test_env_action: speedup unittest, don't sleep
Change-Id: Ib662032e5133b8fead1c6858905bd13ca40f4dd6
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Bugfix: port_security_enabled issue
JIRA: YARDSTICK-765
When port_security_enabled is not set, VMs are assigned with security group 'default'.
When using 'default' security group, all egress traffic and intercommunication in the
default group are allowed and all ingress from outside of the default group is dropped
by default (in the default security group). This causes yardstick cannot ssh into VMs.
If port_security_enabled is not set, we should still add the security group that created
by yardstick to the VMs.
Change-Id: Ifd22fb452e0077581b6900f8f51c4e3c342a30aa
Signed-off-by: JingLu5 <lvjing5@huawei.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "bugfix: enable vlan and physical netwok able to set"
- bugfix: enable vlan and physical netwok able to set
Enable vlan and physical netwok able to set by
parameters for heat context. It won't affect the
original test case, but enable vlan to be set
directly by pass task-args to command:
yardstick -d task start samples/ping.yaml --task-args '{"provider": "vlan"}'
JIRA: YARDSTICK-763
Change-Id: I96f96a61991cceb1506d055867a006d56689a008
Signed-off-by: rexlee8776 <limingjiang@huawei.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "Add more parameters in iperf3 taml"
- Add more parameters in iperf3 taml
JIRA: YARDSTICK-755
The parameters that iperf3 testcase support now maybe insufficient in some usecase.
The test case should support parameters such as: windows size and length of buffer.
This work is about adding more parameters in testcase yaml file
Change-Id: I8c900a4a8909d97543cf837a02c76a6aee19f439
Signed-off-by: Ace Lee <liyin11@huawei.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- cover.sh: delete .testrepository before running coverage
When running py27 and py3 test ran into problems
with .testrepository already exists, but testr
thinking it was corrupt
running testr
No repository found in /home/jenkins/opnfv/slave_root/workspace/yardstick-verify-master. Create one by running "testr init".
error: testr failed (3)
The fix seems to be to delete .testrepository before
running testr coverage
Change-Id: Ib8cd3ab9d3384935380ac29ce365439c6464adc3
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "Bugfix: yardstick always report 'PASS' to DB"
- Bugfix: yardstick always report 'PASS' to DB
JIRA: YARDSTICK-768
Now yardstick will not stop if test case failed,
so that we can run the rest test case in the suite.
CI judge task status by the cmd return code. In this way,
the 'yardstick task start' cmd will always return 0.
So we will always report 'PASS' to DB.
In this patch I add a judgement in cmd, if the status is not 'PASS', we
will raise a RuntimeError.
Change-Id: I655424dd9cd3782869986963a17b24acfb340345
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "Add yardstick logo in GUI"
- Add yardstick logo in GUI
JIRA: YARDSTICK-767
We have yardstick logo in opnfv community.
We have the demand to display it in yardstick GUI.
Change-Id: Ief5807c918754e679e95ae1d1f3a769ab2d6d4b2
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "Add container ping VM test case"
- Add container ping VM test case
JIRA: YARDSTICK-769
This is demand from openretriever project(https://jira.opnfv.org/browse/CONTAINER-19).
Since we have the kubernetes context now and we have first container test case.
We can have a new test case that make container(k8s) ping VM(openstack).
Change-Id: Ia1724130d92d447836529b370510fe1bf1738723
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "add opnfv_os-odl-sfc-ha_daily.yaml test suite"
- add opnfv_os-odl-sfc-ha_daily.yaml test suite
Change-Id: I56961d143bdd723f4e957a4c02ba4127ccddadb3
Signed-off-by: JingLu5 <lvjing5@huawei.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "run_tests: don't write python bytecode"
- run_tests: don't write python bytecode
we usually disable .pyc generate during unittests
Change-Id: I7d7af7c6d188f5a592d24aa90322edb217ffd8ba
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- cover: another 'db type could not be determined' workaround
Change-Id: Ib94ff2dfc86725e5367908296b5160f9565442b8
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "NSBperf: don't exit during import time"
- NSBperf: don't exit during import time
This was breaking testr unittests.
Don't do this like this during import time,
only do them in if __name__ sections, otherwise
when anything else tries to import this module
it exists.
Change-Id: Ia17f5e1a5cbe07ab287d3b95e96489b8a6248170
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- cover.sh: workaround 'db type could not be determined' bug
https://bugs.launchpad.net/testrepository/+bug/1229445
rm -f .testrepository/times.dbm
remove that file before running testr
Change-Id: I178efefebe600a65d1a28beb9b01f7dfecaa4d00
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "Testing live migration using qemu"
- Testing live migration using qemu
This patch includes the scripts to execute the live migration using
qemu and provide the information total time ,VM downtime,setuptime
once live migration is completed
Signed-off-by:RajithaY<rajithax.yerrumsetty@intel.com>
Change-Id: I61380f757f6f3a852fe0a7bc566b10753ce0cc53
|
|
* Update docs/submodules/yardstick from branch 'master'
- Heat: support vnic_type in heat type context
JIRA: YARDSTICK-757
Some test scenarios require VM with specific vnic type.
This work is about supporting using different vnic types in heat type context.
context:
name: demo
image: cirros-0.3.5
flavor: yardstick-flavor
user: cirros
placement_groups:
pgrp1:
policy: "availability"
servers:
athena:
floating_ip: true
placement: "pgrp1"
ares:
placement: "pgrp1"
networks:
test:
cidr: '10.0.1.0/24'
vnic_type: "normal"
Change-Id: Ia229fda72f47b04288ea107e2d58fd3e8ac91dd9
Signed-off-by: JingLu5 <lvjing5@huawei.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Heat: support create and attach volume in heat type context
JIRA: YARDSTICK-756
Some test scenarios require VM with volume attached.
This work is about supporting create and attach volume in heat type context.
context:
name: demo
image: cirros-0.3.5
flavor: yardstick-flavor
user: cirros
placement_groups:
pgrp1:
policy: "availability"
servers:
athena:
floating_ip: true
# per-vm inline volume definition. if no volume size specified, then this
# volume should be an existing volume in the openstack environment
volume: yardstick-volume
placement: "pgrp1"
ares:
# per-vm inline volume definition. if volume size is specified, then this
# volume will be crated and attach to the vm
volume:
name: test-volume
size: 10
# volume mountpoint is also configurable
volume_mountpoint: /dev/vdb
placement: "pgrp1"
networks:
test:
cidr: '10.0.1.0/24'
Change-Id: Ief87b313980a59eac229eb4780d93ffc929ceb66
Signed-off-by: JingLu5 <lvjing5@huawei.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "bugfix: enable vlan and physical netwok able to set"
- bugfix: enable vlan and physical netwok able to set
enable vlan and physical netwok able to set by
parameters for heat context
this is a sample, if it's ok, i'll copy it to other yaml.
it won't affect the original test case, but enable vlan
to be set directly by pass task-args to command.
yardstick -d task start samples/ping.yaml --task-args '{"provider": "vlan"}'
JIRA: YARDSTICK-763
Change-Id: Ie35dac4b5e80404558a1eb45d49fa0bb6ab45a98
Signed-off-by: rexlee8776 <limingjiang@huawei.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "Update NSBPerf CLI to adapt to new output format"
- Update NSBPerf CLI to adapt to new output format
Change-Id: I1d928857c320e4b8ca326f60b419e7b339599ce1
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "Test Case: OPNFV_YARDSTICK_TC023: VM availability during live migration"
- Test Case: OPNFV_YARDSTICK_TC023: VM availability during live migration
JIRA: YARDSTICK-174
This live migration test case is based on share storage, default share
storage is enabled.
This test case will do some config work. And do live migration and
calculate the migration time and downtime.
Change-Id: I6601601edebdd0ac6434ba632b1eba9e9bd4fda0
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "leave port_security_enabled undefined by default"
- leave port_security_enabled undefined by default
some deployments don't have port security ML2 plugin enabled,
so we have to leave port security undefined by default
RuntimeError: Resource CREATE failed:
BadRequest: resources.yardstick-TC072-19be2f60-test: Unrecognized attribute(s) 'port_security_enabled'
https://build.opnfv.org/ci/user/narindergupta/my-views/view/joid/job/yardstick-joid-baremetal-daily-master/1276/console
Change-Id: I69178f869f6215f42d90ea4cfb297dad3d799f83
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Adding support for multi-dispatcher
JIRA: YARDSTICK-684
This patch adds the support to enable multi-dispatcher of result.
e.g.
[DEFAULT]
debug = False
dispatcher = file, http
Change-Id: Id0e1a1bba14edd899fcf5b275be1f0a091b6db77
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "Yardstick GUI & GUI deployment"
- Yardstick GUI & GUI deployment
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>
|
|
* Update docs/submodules/yardstick from branch 'master'
- fix sriov/ovs-dpdk unittests on systems with fewer than 10 cores
we need to wrap vcpupin modulo number of cores.
also mock time.sleep
Change-Id: I6433418a99505b469c61c81a9a023d84434fa0ee
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Bugfix: plugin remove command use "JUMP_HOST_IP" if ip is set to local
JIRA: YARDSTICK-762
Change-Id: Id4a94ef8bbe578944e3664e5e7c24fdf7478805b
Signed-off-by: JingLu5 <lvjing5@huawei.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "Bugfix: supoort insecure mode in checking openstack environment"
- Bugfix: supoort insecure mode in checking openstack environment
Change-Id: I18346aa177689bc995eb7d4883f4a66383e827ba
Signed-off-by: JingLu5 <lvjing5@huawei.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge changes from topic '35521'
* changes:
Setup OVS-DPDK Standalone Context
Adding new SRIOV Standalone Context
- Setup OVS-DPDK Standalone Context
This patch performs following tasks
- getting dpdk_nic_bind path
- setup ovs,dpdk ports,vhostuserports,
- creation of vm,
- apache2 licence
- test cases for ovsdpdk
- Changes to standalone context - update unit test cases
Change-Id: I54e4062eb440b8677625e4abe6e0579d9fd54d41
Signed-off-by: Bindya N <bindya.narayan@intel.com>
- Adding new SRIOV Standalone Context
This patch adds new SRIOV context to run VNFs with
- random uuid generation,
- mac address generation,
- getting dpdk_nic_bind path,
- ssh key based authentication,
- printing log messages,
- added apache2 licence
JIRA: YARDSTICK-480
Change-Id: Ic8317eb9e7e4ecf270091c18be4782d1299ff087
Signed-off-by: Neha Vadnere <neha.r.vadnere@intel.com>
Signed-off-by: Bindya N <bindya.narayan@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "vnfdgen: replace yaml.load with yaml.safe_load"
- vnfdgen: replace yaml.load with yaml.safe_load
JIRA: YARDSTICK-760
Change-Id: I145c948c1f08562e12877f5d0fe7e797e9d989f9
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "Add intermediate variable for HA test"
- Add intermediate variable for HA test
JIRA: YARDSTICK-397
Change-Id: I3489893caa5b8194b63cb844325ec0b2c554aecc
Signed-off-by: qiujuan <juan_qiu@tongji.edu.cn>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "update storperf installation in Yardstick"
- update storperf installation in Yardstick
Storper has updated its installaion step.
The former used "nginx.conf" is not required any more.
Change-Id: I9edd57ae7cffd3a95990844e6b775616d09132f1
Signed-off-by: JingLu5 <lvjing5@huawei.com>
|
|
* Update docs/submodules/yardstick from branch 'master'
- Merge "support more parameters in iperf3 testcase"
- support more parameters in iperf3 testcase
JIRA: YARDSTICK-755
The parameters that iperf3 testcase support now maybe insufficient in some usecase.
The test case should support parameters such as: windows size and length of buffer.
This work is about adding more parameters that can be specified in options section in the YAML file.
Change-Id: Ibc81cd1bbbc6fdd492aa67bd3acee7cd310c87ef
Signed-off-by: Ace Lee <liyin11@huawei.com>
|