488 Commits

Author SHA1 Message Date
Jenkins
6f2889b44f Merge "Add Neutron benchmarks scenario for creating and listing subnets" 2014-05-14 07:52:04 +00:00
chen-li
6a2c4aef55 Invalid result for unexisting task in rally task results
Closes-Bug: #1303286

Change-Id: I4da9bff10c74633c47b3181c7e14cd4568cfbee9
2014-05-13 12:29:29 +08:00
Jenkins
fce9242532 Merge "Add benchmark for tempest. Part 2" 2014-05-12 19:01:43 +00:00
Alexander Maretskiy
4d171a1bf0 Add Neutron benchmarks scenario for creating and listing subnets
This patch contains:
    - scenario NeutronNetworks.create_and_list_subnets is added
    - method base.Scenario._generate_random_name is added
      to provide a unified generation of random names.
    - a piece of refactoring for scenario
      NeutronNetworks.create_and_list_networks

blueprint benchmark-scenarios-for-neutron

Change-Id: I4ba67eb3babcf48e1842904c9e39b22a01351a8b
2014-05-12 18:13:59 +03:00
Jenkins
50ff56db0d Merge "add possibility of using public_urls for benchmarking" 2014-05-12 12:54:20 +00:00
Andrey Kurilin
769aeb366c Add benchmark for tempest. Part 2
Several new scenarios added in tempest benchmark:

* scenario for launching all tests

* scenario for launching all tests from given set(special set_name
validator was added for this scenario)

* scenario for launching all tests from given list of test names
(Also, test coverage for validator `tempest_tests_exists` was increased
for situations like in this scenario)

* scenario for launching all tests which match given regex expression

bp benchmark-scenarios-based-on-tempest

Change-Id: I3e715cb360dec3d5d8683a9001c4f2221b49d1ac
2014-05-12 13:47:22 +03:00
Sergey Vasilenko
3f6d22857f add possibility of using public_urls for benchmarking
Add 'use_public_urls' option to the deployment config
This option will be used later for switching access method to the cloud.
Because in some use-cases cloud may be accessible only by public endpoints.

Add 'admin_port' option to the deployment config
This option defines administrative keystone port on the public network.

Closes-Bug: #1306448

Change-Id: Ifb838c5fe9eab5e81353d697aa747bd8adf77572
2014-05-12 10:09:42 +00:00
Jenkins
e4258b1e3b Merge "Replace non-documented ThreadPool with multiprocessing.Pool" 2014-05-12 02:15:45 +00:00
Hugh Saunders
4fc97e37df Skip non yaml/json files when validating samples
This prevents editor temp files from causing test failures.

Change-Id: I7728c0cd79141424df7ec544d73af9a37c1a147f
Closes-Bug: #1314369
2014-05-09 13:59:38 +01:00
Jenkins
fc8f128663 Merge "Correction of tempest verification" 2014-05-09 10:54:02 +00:00
Andrey Kurilin
92a6960e3b Correction of tempest verification
1) Revert direct usage of subunit

Test repository should be used as launcher for tempest tests, since direct
usage of `subunit` broke execution of `compute` set as well as `full` set.
Tests discovery and execution can't be split at the moment.

2) Cleanup of tempest folder afterfaulty installation

Also, execution of tempest sets cannot be correct without confidence in
correct installation of tempest repository. Cleanup of tempest folder after
faulty installation should be added to fix check of tempest installation.

3) Length of database field for verification results

MutableJSONEncodedDict limited by 64k. This length is not sufficient for
storage results of those verifications, which have a huge number of failures
and tracebacks.

4) Incorrect usage of mock in tests

Class `mock.MagicMock` doesn't have method `assert_called_once`.
Instead of this one, method `assert_called_once_with` should be used.
Based on the fact that this is critical error in testing, this patch
affects not only tempest verification.

Change-Id: I68660e38f2cae3f60a01e99cdbbb57bdb8a9bb04
Closes-Bug: #1313744
Closes-Bug: #1313742
Closes-Bug: #1305991
2014-05-09 13:23:20 +03:00
Hugh Saunders
fe07851c64 Rename number validator parameter none_ok
Rename none_ok to nullable, clearer, more concise.

Change-Id: Ic918d22d00e91c60977b3bd9be17bc46c1583ea0
2014-05-09 08:57:57 +00:00
Jenkins
155c01cba9 Merge "Fix check for tempest tests name" 2014-05-08 22:47:44 +00:00
Andrey Kurilin
45207d2922 Fix check for tempest tests name
All tests except `tempest.api.*` are invalid.

Change-Id: Ic8cbc64ce43fec982cc7d60c1301a4b1fece7632
Closes-bug: #1316986
2014-05-08 18:19:24 +03:00
Aswad Rangnekar
f0e33d67b0 Add benchmark scenarios for ceilometer alarms api
Change-Id: I332fb918a413869e77f9c74c966272d4a7b778a5
blueprint: benchmark-scenarios-for-celiometer
2014-05-08 18:47:27 +05:30
liyingjun
6ff6869201 Replace non-documented ThreadPool with multiprocessing.Pool
Replace ThreadPool in rally/benchmark/runners/periodic.py

Change-Id: I585f60ba8f8879a585cde5bc377aea489fe0b5ba
2014-05-07 01:08:06 +08:00
Jenkins
fc1798bb44 Merge "Load plugins for scenarios" 2014-05-05 18:59:05 +00:00
Jenkins
f22aa5bc78 Merge "Fixed issue Unit Test requested Image from Internet" 2014-05-05 18:16:23 +00:00
Kumar Rishabh
e9c1471ee8 Fixed issue Unit Test requested Image from Internet
test_verify fails when there is no internet connection. Fixed this issue
by mocking the urlopen which downloaded the image from internet.Also included
a try except block to detect the error and raise exception when downloading the
image when no internet is detected.
Closes-bug: #1308466

Change-Id: I29095eed8a4ff05720567223f2cb1f834b1d8f26
2014-05-05 17:42:26 +00:00
chen-li
b81062e835 Add Neutron benchmarks scenarios
This patch contains:
- Changes for supporting neutron scenario tests
- Add scenario "create_and_list_networks"

blueprint benchmark-scenarios-for-neutron

Change-Id: Ic6ba1b1b832529ef48c08f106473c5914a2d1564
2014-05-05 10:20:37 +08:00
Marco Morais
9978d0855e Add mock.patch.stopall() to rally test cleanup
* using stopall() to stop patches avoids race conditions
  that might arise when mock state is not cleaned up
  between test cases
* use of stopall() from test case cleanup is recommended
  when applying patches as part setUp()

Change-Id: I7918cc8c7c96a25ae874ea8bede93719d6baa634
2014-04-30 18:43:48 +00:00
Olga Kopylova
390c6d077c Load plugins for scenarios
Load plugins for scenarios from directories
/etc/rally/plugins/scenarios and ~/.rally/plugins/scenarios

Change-Id: Id3bbd7068b5dbe01d5107691d235be2109ae6a2a
2014-04-28 13:43:25 +03:00
Carlos L. Torres
75195b7a90 Refactored cleaner and added cleanup/utils
Moved context/cleaner to its own package, called cleanup, under
benchmark.context and renamed it to cleanup.py. To improve cohesion,
splitted benchmark/utils.py into two, and all cleanup related functions
were moved to benchmark.context.cleanup.utils. Removed cleanup function
in cleanup.py and references to it, since it's obsolete. Finally updated
all references and unit tests accordingly to reflect the changes.

bp benchmark-context-cleanup-refactor
Change-Id: Iaffc4e35e21b734a7b4cb77ffaf810112054ebae
2014-04-27 17:50:16 -05:00
chen-li
51c8707415 Integrate the new oslotest library
There is a new support library named 'oslotest'
extracted from oslo incubator. So, we add it to
test-requirements.txt and remove deprecated modules
from rally.openstack.common

Change-Id: I1d9efaf2f8a5a4948c454ea3f2e75262479133e8
2014-04-25 23:18:30 +04:00
Jenkins
8b272caa4d Merge "Allow to provide a list of uuids for rally task delete" 2014-04-25 14:51:28 +00:00
Bruno Semperlotti
3c89038bb0 Allow to provide a list of uuids for rally task delete
Task delete command now accept a list of uuids :
  rally task delete --force --uuid uuid_1 uuid_2 uuid_3
Previous usages are still available:
  rally task delete --force
  rally task delete --force task_uuid
  rally task delete --force --uuid task_uuid

Change-Id: I85a6225476dab3ff27718d3dadf73810f8da3ebf
2014-04-25 04:58:09 -07:00
liyingjun
08c2cfe8d4 Replace non-documented ThreadPool with multiprocessing.Pool
Change-Id: I18b155565d12108a8ed8c8b8249f531c294f0e17
2014-04-25 07:00:18 +08:00
Jenkins
8c7e0bd346 Merge "Create utils module for processing task results" 2014-04-29 22:25:14 +00:00
Jenkins
0be00c811d Merge "Adding Dummy benchmark scenarios" 2014-04-29 22:25:08 +00:00
Roman Prykhodchenko
8d3d6a117a Add Ironic client
Ironic client is required for benchmarking
OpenStack baremetal provisioning service.

Change-Id: I4d56f1e55f496da0519a5d5c12da80e2080aa1ef
2014-04-29 22:43:58 +03:00
Kumar Rishabh
fcbc651a5b Adding Dummy benchmark scenarios
Added Dummy benchmark scenario with methods dummy and
dummy_exception and the their task docs. The link to the
trello card is:
https://trello.com/c/vB3VpR1d/191-add-dummy-benchmark-scenario

Change-Id: I25df9356e0f6b703b1ba5428a5c98d386c6dde10
2014-04-29 14:36:52 +00:00
Mikhail Dubov
019eccb3d3 Create utils module for processing task results
Here we create a special rally.benchmark.processing.utils module for
computing a couple of useful functions on the benchmark data.

Change-Id: I9f3e6e50b9ba37946fbb56d7546b87b30beb0233
2014-04-29 12:06:13 +04:00
Hugh Saunders
8f3cda167a Pass region_name to neutron client for consistency
Neutron client accepts region_name parameter, so it should be passed to
neutron as it is to other clients.

Change-Id: I29cba149c8aa7d832a4f2f6b68878af82dbe5fd0
2014-04-28 13:30:16 +00:00
Jenkins
3b46353a2c Merge "Add scenarios directory for ci" 2014-04-24 22:36:51 +00:00
Kun Huang
ee2618db99 Runner Type as consts
This patch adds new consts class for runner type and also fixs some
missing place of old runner type

Change-Id: I3dc75b31bae1a053ed705049c4c40d98c5e79679
2014-04-24 11:46:33 +08:00
Sergey Skripnick
b0a2a14e47 Add scenarios directory for ci
This directoy contains scenarios to be run by jenkins.

Add script which runs specified scenario and plot graph.

Add abbility to specify cloud by --name in "rally use deployment"

Removed rally/exercises

Change-Id: I7803a6950ec5fce3be11277ae0e4d830f0cf6bad
Related: blueprint rally-gate-jobs
2014-04-23 20:45:52 +03:00
Jenkins
7e771f1e6f Merge "Add new "role" context" 2014-04-23 13:00:42 +00:00
Sergey Kraynev
7e96ad2afc Add new "role" context
For testing heat needs to have users with special role. This patch introduce
simple implementation of new role context. It gives ability to add specific
roles to all users.

Implements: blueprint roles-context

Change-Id: I1908acf5ec970acd075077e8007bd9624e2c58a9
2014-04-23 07:49:30 -04:00
liyingjun
9a0e36ff7b Quotas scenario for nova/cinder
This patch implements benchmark scenarios: nova_update,
nova_update_and_delete, and cinder_update for quotas.

Partial implements blueprint: benchmark-scenarios-for-quotas

Change-Id: I34a718b53f3cf66e543fce5e541bb1a0b785140c
2014-04-23 18:30:28 +08:00
chen-li
d04111628b Use "https" instead of "git" for cloning code
If you're in a private network, you need to setup a proxy
to access the public network. It would be a difficult thing
to set-up proxy for git:// protocol, while much more easy to
use https:// protocol instead.

Change-Id: Iec8447cc28760a98e1641162c50c152c89100775
2014-04-23 11:12:15 +08:00
Andrey Kurilin
8c77a27fef Add benchmark for tempest. Part 1
This patch provides bases for tempest benchmarking:

1) Modified rally verification for launching tempest scenarios from benchmark
- moved to usage subunit as a test launcher;
- changed access to several methods;
- changed logging.

2) Added TempestContext, which checks tempest installation, initialization
of testrepository and existence of configuration file for tempest.
Also provides launcher for cleanup cloud after benchmarking.

3) Validator for tempest scenario names.

4) TempestScenario with launcher for single tempest test.

bp benchmark-scenarios-based-on-tempest

Change-Id: If67970a49674750b88d27e77c06d89b4e54d5337
2014-04-22 12:56:00 +03:00
Jenkins
b9838ceddc Merge "Improve User context" 2014-04-21 12:00:26 +00:00
Boris Pavlovic
73781a8325 Improve User context
*) Default value for concurrency should be at least 30.
*) Change templates for names of users and context
*) Store tenant_id in user (it's very usefull in many cases):
role context:
https://review.openstack.org/#/c/87984/4/rally/benchmark/context/role.py
quotas benchmarks:
https://review.openstack.org/#/c/87283/7/rally/benchmark/scenarios/quotas/quotas.py
(where we should setup quotas for passed user)

Change-Id: I00a97cb6ba20f6ee1636e56dc9ad35216ed30144
2014-04-21 14:20:41 +04:00
chen-li
b506994ed4 Name Change for "active_users" to "concurrency"
There would be two kind of "users" appears in the task
configuration file when we're using runner "constant".
One in "context" means the number of openstack users,
while the other in "runner" simulate the activities
of multiple "human users", which actually controls the
number of concurrent scenarios.

Rally user might easily be misleaded.

Change-Id: I4333885d877364fbd19279cf338b758abbb804f7
2014-04-21 14:06:37 +08:00
Carlos L. Torres
6acc580ee1 Renamed provider 'name' property to 'type'
Change-Id: I9792b2ec6ff22ddf4f6ed6d13c310503984f1f54
2014-04-18 23:42:30 +00:00
Jenkins
58a8679e6e Merge "Clean rally ENV after recreate database" 2014-04-18 23:26:31 +00:00
Jenkins
0bf793e232 Merge "Changed all deploy engine's 'name' property to 'type'" 2014-04-18 11:49:54 +00:00
chen-li
a274ee5ca7 Clean rally ENV after recreate database
Closes-Bug: #1293211

Change-Id: I44e943ee1bde33ba920b06fdcff90068d4fb2d28
2014-04-18 18:22:38 +08:00
Carlos L. Torres
c8240bc260 Changed all deploy engine's 'name' property to 'type'
Updated unit tests and other places accordingly.

Change-Id: I3e8a986376b2075a97b05cf38cbb919a0e25efc2
2014-04-18 04:15:08 +00:00
chen-li
28f5901ce0 Columns name change for ScenarioRunnerResult
1. Change "time" to "duration".
Because "time" and "times" are too close, and have
different meaning in rally. While, "duration" is much cleaner,
has only one meaning that means actually what we have in results.

2. Change "atomic_actions_time" to "atomic_actions"
Because not only "time" include in this column, and we already
have "duration" inside it.

3. Similar changes for functions and class members

Change-Id: Id3fa44451184603c7f044296ec6f1a9b75f236fc
2014-04-18 01:21:37 +00:00