52 Commits

Author SHA1 Message Date
Zuul
e8cae4b2d0 Merge "Ensure python 3.8 is supported" 2020-02-28 10:30:15 +00:00
Andrey Kurilin
44c081e234 Ensure python 3.8 is supported
* remove a hack for python3.4 from rally-tox-base job
* raise version of SQLAlchemy at upper-constraints.txt to avoid new
  warnings at python 3.8 env
* install python from the ubuntu repos instead of deadsnakes
* cover https://bugs.python.org/issue35894
* skip tests.unit.common.io.test_junit for Python 3.8. The failures
  relate to changed order of xml tag parameters. It is not critical and
  rally.common.io.junit is not used at all (abandoned code?!)
* cover https://github.com/python/cpython/pull/9731

Closes-Bug: #1864987

Change-Id: Iffb0015fbae48eb69e683ef41b9763798f198130
2020-02-28 09:17:43 +02:00
Andrey Kurilin
e9264de713 Fix loading plugins from path with relative imports
Also:
- fixes `tox -e self` job. It was designed to ensure that relative
  imports are working, but ignored the error.
- changed `rally task sla-check` to return not zero code in case of
  finding non of workloads had been executed.

Change-Id: I723f81abdfbe7c71e9ec36aaf6f0936a42eac425
2020-02-26 15:43:37 +02:00
Andrey Kurilin
f28216fc1f Move 'rally.common.sshutils' to 'rally.utils.sshutils'
Change-Id: Id172664b7010910a1d5f12bf1a01ef3fb1e2c1ab
2020-02-21 17:52:51 +02:00
Andrey Kurilin
cd43a8c085 Remove 'namespace' argument
Change-Id: I80821105a0046fda2260ab18694de6801fef6417
2020-02-21 17:37:38 +02:00
Andrey Kurilin
6d7bbe0d05 Remove outdated and deprecated code
Change-Id: I0e12f422f52445387be036ca690edce1a4ef1595
2020-02-21 14:45:30 +02:00
Zuul
2b2235f830 Merge "Follow redirects by path_or_url preprocessor validation" 2020-02-20 14:01:02 +00:00
Andrey Kurilin
fe84cbe097 Follow redirects by path_or_url preprocessor validation
Change-Id: I06ceba7043139595db752a8e5c194ad94548e2e1
2020-02-20 15:30:37 +02:00
Andrey Kurilin
ca0f985053 Delete devstack plugin
Change-Id: Ie61b7be491c691a3824b6acb4535971d572ad19f
2020-02-20 15:16:43 +02:00
Andrey Kurilin
c83118a65d Add base docker-build job
This job checks workflow that we are using at autobuilds at dockerhub.

Change-Id: Ic4e0eaa726787cc3ebe58ca874845362839701ae
2020-02-19 16:15:43 +02:00
Andrey Kurilin
5d0d48a3f2 Rework caluclating percentiles
* store all points for percentiles calculation instead of using graph
  zipper. to do not exceed memory, points are saved to tmp dir by
  chunks.
* also, this patch fixed calculation of avg values at StatsTable

Change-Id: I8fed9bf6a5a210a22fc008437d335cd7e372d3be
2020-02-17 17:07:06 +02:00
Andrey Kurilin
302216c1a2 Fix several issues with plugin discovery error messages
* `rally plugin show` should raise errors in case of not found or
  multiple match
* remove dumplication of 'in' from PluginNotFound error in case of any
  platform search
* handle Scenario plugin not found during task validation
* doesn't tag 'PluginNotFound' with "Unexpected CLI error" since it is
  clear error

Change-Id: Ibe003c26ef973b18decaa16c03b3589b4002157e
2020-02-14 16:10:38 +02:00
Andrey Kurilin
1e501a6e21 Stop supporting python <3.6
+ remove sseveral unused ci files
+ ignore some warnings during pytest execution to make the output clean

Change-Id: Ic94ab503ea77c8a1582292becad872670034d49c
2020-02-10 16:08:14 +02:00
Andrey Kurilin
cebecc512e Release rally 2.1.0
* update changelog
* remove direct netaddr requirement
* fix several warnings

Change-Id: I96514e763e4e85474f414beb1148fd466e0e9464
2019-11-19 10:33:06 +00:00
Andrey Kurilin
02311d320b Rename 1.7.0 to 2.0.0
As OpenStack release team suggested, as for backward incomaptible
changes we need to change major version.

+ get back jsoncshcema draft-4 as default, since it can break all
plugins at once.

Change-Id: Id1eadb69964c630f119eb00d5a7f69fac64ba825
2019-09-13 23:58:35 +03:00
Andrey Kurilin
bd939c5913 Make rally 1.7.0
Change-Id: I52b9ff6458675d402295e8f0bde576afe2c53f37
2019-09-10 13:04:37 +00:00
Andrey Kurilin
8d54b0e235 Remove a bunch of deprecated stuff from CLI
* *rally task sla_check* command was deprecated in Rally 0.8.0 in favor of
  *rally task sla-check*.

* *rally-manage db* command (and the whole *rally-manage* entry-point) was
  deprecated in Rally 0.10.0 in favor of *rally db* command.

* *--namespace* argument was deprecated in Rally 0.10.0 in favor of
  *--platform* which has better meaning.
  Affected commands: *rally plugin show*, *rally plugin list*,
  *rally verify list-plugins*, *rally verify create-verifier*.

* *--tasks* argument of *rally task report* command and *--task* argument of
  *rally task use* command were deprecated in Rally 0.10.0 in favor of
  unified *--uuid* argument.

* *--junit* argument of *rally task report* command is deprecated in
  Rally 0.10.0 in favor of *rally task export --type junit-xml*

Also, this patch:

* covers @deprecated_args cli decorator with unit teststo pass cover job.

* switches functional tests to use testtools library instead of unittest
 (for unificaiton with our unit tests)

Change-Id: Icf5651117b20a8ecfe6a3e5f42eb3a4e569e0618
2019-09-10 15:49:38 +03:00
Andrey Kurilin
ee13ba4983 Propose 1.6.0 release
Change-Id: I803cde8b0c498f81f26af7c8f710ef9b6ae8f11f
2019-06-19 15:13:19 +00:00
Andrey Kurilin
3f4c557716 [changelog] get back 1.4.1 release
Change-Id: I69cde89e264863eb343ffb2b283b69b48e2f061d
2019-05-28 15:30:49 +03:00
Andrey Kurilin
14a8b0f931 Release 1.5.1 with a fix for os deployment create from env
**rally deployment create* --fromenv* creates wrong spec for
rally-openstack<=1.4.0

Closes-Bug: #1829030
Change-Id: I61588eaa070b10b780c92d54d1b9439e8fd3f6b6
2019-05-15 22:22:46 -07:00
Andrey Kurilin
21630956e4 Release 1.5.0
Change-Id: I6cfa4d82b193b586565c69ec9ba9458e1bf32981
2019-05-08 14:37:50 -07:00
Andrey Kurilin
ffd3dc7e7b Add support for iframe charts
Change-Id: If5358105611512c05b0f7d8f3eb660e2daffce34
2019-05-08 13:12:35 -07:00
Andrey Kurilin
a01a60bc0f Propose 1.4.1 release
Change-Id: I734171bd76ae2528d5d093e1769aea049b574ec9
2019-02-28 19:11:49 +02:00
Andrey Kurilin
2fad5a9ef5 Fixed py3 issue of Verification component
Change-Id: I6764b4dd7f807f5e8d525dce6db3432ffbd9d54f
2019-02-19 17:42:35 +02:00
Andrey Kurilin
78f43cd992 Remove morph dependency
morph library is distributed under GPLv3 dependency which means that we
need to distribute under package as well under GPLv3 license or stop
using this library.

Since we do not use too much from morph, so let's just let's write a
simple replacement for what we actually need.

Change-Id: I00df4e66a2365cbaa948707289b14262dc016454
2019-02-04 16:59:29 +00:00
prazumovsky
3625758dfe Add 1.4.0 release in CHANGELOG
Separate unreleased commits to new 1.4.0 release.

Change-Id: Ia0477f58aa089ccdedd4529334e085d55d397340
2019-01-29 17:22:13 +04:00
chenhb
cc6f877f5d Fix the issues of dss key in ssh utils
It can not load dss key in ssh utils because of the file cursor
position.

Change-Id: Id358673e58565cae73ac39d1f11f5e8edeab4e67
Closes-Bug: #1807870
2019-01-23 08:13:01 +00:00
chenhb
1b3a68de67 Add a check for rally command
It would print an exception while user called 'rally' command without
argument. Let us fix this issue.

Change-Id: If950e4aeda1067ddfc271caedcea807c080e46a3
2018-12-18 10:05:30 +08:00
chenhb
f1f09f3ab5 Export trends report with task export plugin
Export trends report with plugin and support report with static libraries.

Change-Id: I05bff52c30b50387b7ad880709e3ce09f6f6ae9d
2018-12-04 17:43:32 +08:00
Andrey Kurilin
e22c247e1e Rework docker integration
* move Dockerfile to etc/docker dir, so we can use custom README for
  docker hub repository
* move etc/motd to etc/docker dir, since it is used only during docker
  image build
* add etc/docker/README with a description for docker reposiroty and how
  the image shoudl be used

Change-Id: I61fdd4bab37707374a2229ee07d5a41009e8c55d
2018-11-30 22:06:53 -08:00
Andrey Kurilin
4a1b628ba9 Change the behaviour of 'rally --version' cmd
* print versions of installed plugins

Change-Id: Idc830a9d89dc0e2d362e694d7bb5d4f4840267bb
2018-11-30 09:10:55 +00:00
Andrey Kurilin
3c29c5ea1a [release] Propose 1.3.0 release
Change-Id: I58050507b099d6f05723d9f64c2e62587dd3e062
2018-11-29 23:02:30 -08:00
Peter Razumovsky
910478f808 Add ability to report tasks by deployment
Add ability to rally task export/report cmd to export/report
all tasks with specified deployment by new arg --deployment.

Change-Id: I8d7b41e0d2bb3f922f6bd0411aba405e942691fc
2018-10-03 11:07:14 +00:00
Andrey Kurilin
4ddf0bdb71 Propose 1.2.1 release
The bug in twine resulted in existance of pythong 2 wheel but missing
sdist or pythin 3 wheel for previous Rally release (1.2.0)
That means that it is possible to install Rally 1.2.0 via pip2, but
pip3 fails to discover this version.

Change-Id: Ie9375f6de7a65e09e4ee087e9fa3ce279e4c6cd6
2018-09-27 12:15:57 +00:00
Andrey Kurilin
f58317fe8b Propose 1.2.0 release
Change-Id: I34eca39cc5a4f444932bcacb598cfcc5749bd5be
2018-09-19 17:54:46 +03:00
Andrey Kurilin
6b01918028 Add support of exporting results to elasticsearch 6.x
Change-Id: I43d32f4fc939daf3fc94f59eac4b20d55c114fd0
2018-09-19 13:43:47 +03:00
Andrey Kurilin
971fe4e4c7 [ElasticSearch] Reduce usage of no-name-action index
Do not send 'no-name-action' index when the item fails after some atomic
actions completed and there is a root atomic.
For example, there is 'wait-for-some-resource-ready' action. It consists of
a bunch of get requests to update the current status. After specified timeout
this action can fail if the resource is not in the right state. In such case,
there is no reason to use 'no-name-action' for saving the error, the parent
index (i.e 'wait-for-some-resource-ready') will already store it.

Change-Id: If2a34d986d07126f4b97c8e03ce3989384ea83d8
2018-09-12 16:09:32 +03:00
Andrey Kurilin
1ec6e4a767 Improve error messages of validators
The current error message from validation step doesn't include what
plugin fails and by which validator. This information is available only
in debug mode.

Without this information it is hard to understand what is going wrong.

Change-Id: I4e0bc3eb36c3d8116a2e867b48604b4cc514580a
2018-09-10 18:49:38 +03:00
Andrey Kurilin
0652a457d0 Include new validator in CHANGELOG
Change  I7ccb8ed06b0e46f6fcedb1529537f7ee32d56552 introduced a new
validator ``map_keys``, but the proper message was not added to
CHANGELOG

Change-Id: Iafefd33fee55ff721cf26e57e71f4095f3a2f020
2018-09-09 14:51:04 +03:00
Andrey Kurilin
11bf96a7f3 [task] Improve validation
JSONSchema for Task format v2 is quite complex and validation errors
usually are not user-friendly at all. To increase UX, let's split
JSONSchama to validate top level of the task at first, than iterate over
all subtasks and validate each of them separately.

Change-Id: I8d2a7ed15d356b8950ddec6c38e1e01a36e7cfde
2018-08-17 00:07:29 +03:00
Andrey Kurilin
b5ba6d5ea9 Propose Rally 1.1.0 release
Change-Id: I6aa75d4933e0dc32d9c1415776efe6d3a7124e02
2018-08-07 11:06:31 +00:00
Andrey Kurilin
86e12e4142 Declare that we support py3.6 and py3.7
* update trove classifiers
* make py3.4, py3.6 and py3.7 unittesting jobs voting

Change-Id: Ic78c1f696926843778367f932bb9214c9962ee8f
2018-08-07 13:15:57 +03:00
Andrey Kurilin
4632778adf Fix all py37 incompatible things
* Sort table by "Platform" at `rally env check` command. It is needed
  to make the result of unittests equal at python 2 and python 3 envs.
  Also, the resulting table become more readable and user-friendly.
* Fix usage of StopIteration in generators.
* Deprecate 'async' argument of api method task.abort

Change-Id: I4dbf674817f8d40bb0708dd0a32caeb0dbda8c5e
2018-08-07 13:12:09 +03:00
Andrey Kurilin
158c1ffe8f Update our requirements.txt and u-c files
The new versions of our dependencies support py37, so we need to do
this.

Change-Id: Id201cef2ad3e702d15b338e7834ec14ac2e5ad56
2018-08-07 13:09:46 +03:00
Andrey Kurilin
0b110cb2c0 Add rally env cleanup command
This command should trigger cleanup of resources for the specified
environment.

Change-Id: I4c638d9a5ae5caadf0e5b9cdb78ec589e770cddf
2018-08-07 09:56:58 +00:00
Yi Yang
760e926643 Fix error in HTML report generation for python 3
Change-Id: I6c1ff570da88ceeb1852f312706a8390cce4eeb6
Closes-Bug: #1785549
2018-08-06 18:50:56 -04:00
chenhb
95d25e552a Update the new feature of rally task detailed into CHANGELOG
Change-Id: Ib4d00b40ffea91bbaaefabe1382bd0cc76888798
2018-07-30 10:03:44 +08:00
Andrey Kurilin
3a765fcb3d [trivial] Update task exporter
* setup proper docstring which should be used in docs
* remove deprecated class

Change-Id: I532d4d596df754fd7f967f9e4e02bb88c0123abc
2018-07-25 10:49:58 +00:00
Andrey Kurilin
8b58142e8c Extend json exporter and fix elastic exporter
* rally task raw results include environment name and uuid which are
  quite informative, let's include them in the json report
* elasticsearch exporter did not use environment name from the task
  results, it retrieved this name from database instead which is
  redundant. This should be fixed now.

Change-Id: I475b67d248672650733f07126978a17acd5f7111
2018-07-12 15:00:02 +03:00
Andrey Kurilin
1deae09758 Update config sample file
Change-Id: I1796182339023d4f04ed08c185ffe99835b44655
2018-07-02 15:45:20 +03:00