288 Commits

Author SHA1 Message Date
Andrey Kurilin
07a21b99e3 Validate scenario arguments
We have a lot of validators for scenarios, but we do not check input
arguments. There are two cases:
1) user forget specify some argument;
2) user specify redundant argument

In both cases, we will get "TypeError" for each iteration.

This validator is not implemented like others, since it doesn't need
constructed clients and it looks like more syntax check.

Also, this patch fixes one of our samples:
    samples/tasks/scenarios/dummy/dummy-random-action.[json/yaml]

Change-Id: Id3aad571dfc93f8074c724595440979cfd435e2c
2016-07-13 17:23:11 +03:00
Lv Fumei
a0820ee6e7 Add param volume_type when creating volume in nova scenarios
Volume_type can specify a certain volume type when there are
multiple backends.

Change-Id: Ifdc80f5bb6c0a05c64f0b0c6b28b536a2e46f714
2016-07-05 16:14:26 +08:00
Jenkins
25af9a0a40 Merge "Add keystone validate token using ceilometer scenario" 2016-07-01 10:37:21 +00:00
Alex Krzos
d6e5f766f2 Add keystone validate token using ceilometer scenario
Change-Id: I2d6220f2ac6149e1177d8fc324f4cfd541d41ae3
2016-06-29 07:37:41 -04:00
chenhb-zte
d201049cfb Add NoverServers.boot_server_from_volume_snapshot
The scenario first creates a volume and creates a
snapshot from this volume, then boots a server from
the created snapshot.

Change-Id: Ib2a320ab097ac05c104729223cc4ae1e53365144
2016-06-28 16:39:02 -04:00
Alexander Maretskiy
4d22d8944b [Plugins] Class-based scenario DummyFailure
This adds the first class-based scenario.

Change-Id: Ia1a0ea6988b21f792070ac15e425dc52441ff4c2
Implements: class-based-scenarios
2016-06-23 12:04:03 +03:00
Jenkins
393b32ce66 Merge "[Plugins] Improve scenario output from boot_runcommand_delete" 2016-06-22 20:59:11 +00:00
Illia Khudoshyn
9061e03bd8 Ensure consistent naming of sample scenarios
Rename sample scenario files so that dash(-) used consistently
instead of underscore (_)

Change-Id: I8e4ccabfc16b32a12a091e6b168b12d25643b028
2016-06-21 17:03:37 +00:00
Lv Fumei
331d0975a8 Modify nested_level from dict to integer
In function create_nested_snapshots_and_attach_volume, nested_level's
default value is 1, and it is used to operate with an integer
(for i in range(nested_level - 1):).

Change-Id: I4879d7cdcb5a56b83a1415c4a8fc427241ddc913
Closes-Bug: #1594656
2016-06-21 14:55:18 +08:00
Alexander Maretskiy
e8bc24e1c7 [Plugins] Improve scenario output from boot_runcommand_delete
Scenario VMTasks.boot_runcommand_delete now can populate
report tab "Scenario Data" with any allowed charts.
SSH command return value structure new reflects
Scenario.add_output() arguments.

Also, there is new shell script
samples/tasks/support/instance_test.sh which generates
different load on server and creates proper JSON output.

Old format of command output is also supported but marked
as deprecated.

Change-Id: I6a34b634ea7d9080f9ca08bf0f82d04fa69406d9
2016-06-16 11:04:49 +03:00
Jenkins
e94cf6ae66 Merge "Fix scenario examples for vm" 2016-06-16 01:26:46 +00:00
liyingjun
30eadb2541 Fix scenario examples for vm
The command value is wrong in the example files for vm tasks.

Change-Id: I636f8a8552c4e1ad48e6455ea87ade1a62933315
Closes-bug: #1590814
2016-06-15 22:49:30 +08:00
Jenkins
d25ccaaa01 Merge "Add boot_and_delete_server samples and functional test" 2016-06-13 14:08:09 +00:00
chenhb-zte
28cf0010fe Add boot_and_delete_server samples and functional test
Add the argument "auto_assign_nic: true" in boot_and_delete_server
functional test, and add a related sample.

Change-Id: I7e596c29ae5e9d9c6e7db4572b5e80a60f0dd0bb
2016-06-13 09:35:54 -04:00
chenhb-zte
58a69efe29 Add CinderVolumes.create_volume_from_snapshot
First create a volume-snapshot, then create a volume
from this snapshot.

Change-Id: I29b4e6803806e2970e400920f3718e26e31911ce
2016-05-31 09:09:18 -04:00
chenhb-zte
2e85276d7a Add NovaServers.boot_and_update_server
This boots a server, then the server is updated
with the new name and description.

Change-Id: Ibfd3e8e5cd92ee20ba329cb0460e086edec18aeb
2016-05-30 20:16:38 -04:00
chenhb-zte
ffcd50452e Fix CinderVolumes.create_volume_and_clone
1:Add nested_level argument for nested cloning volume to new volume.
2:Fix the bug that new volume assiged size is possibly less than
source volume size when setting size argument "min: 1, max: 5".

Change-Id: I18ae333189423461bca52f783311bcf43354ccab
2016-05-27 08:15:59 -04:00
Jenkins
e05043e3a0 Merge "Add the argument image into create_and_upload_volume_to_image" 2016-05-19 10:26:30 +00:00
chenhb-zte
efa6210a05 Add the argument image into create_and_upload_volume_to_image
I think it is better to add the argument image to create_and_upload_volume_to_image.
Now possibly upload a empty volume to image, it is meaningless to the business.

Closes-Bug: #1582117
Change-Id: Ie10d17a422fb5b1635dd8d6d7e235e7327843f17
2016-05-19 09:25:44 -04:00
Jenkins
fb59ac2935 Merge "Add possibility to balance usage of users" 2016-05-19 00:39:40 +00:00
Ivan Lozgachev
651a585018 Add Murano environments context
Murano scenario list_environments just measures time of API call
at this moment because there are no environments created by default.
To fix it new context has been added to make possible generate
Murano environments before Rally iterations.

Change-Id: Ide0c928fd608503f4916f84d81c942c0ce5fec28
2016-05-18 11:49:23 +03:00
Valeriy Ponomaryov
ff7b05094a Add possibility to balance usage of users
For the moment all users for tasks are taken randomly and
there is no way to balance them between tasks.
It may be very useful when we have
difference between first usage of tenant/user and all consecutive.
In this case we get different load results.

Therefore, add enum config option 'user_choice_method'
to 'users' context that defines approach for picking up users.
Two values are available:
- random
- round_robin

Default one is compatible with old approach - "random".

Also, update one of scenarios to use "round_robin" approach to make
sure it works.

Change-Id: I26fb090eb89c22f5d50529cb73b6ed54fc3d7e15
2016-05-13 20:58:44 +03:00
Piyush Raman Srivastava
5165ec6ae1 Add create-flavor and flavor-access-list scenario
Benchmark create-flavor and flavor-access-list
Nova API.

blueprint extend-api-benchmark-in-nova-scenarios

Change-Id: I870405aaaec727cfb3a0b460dcf60c6a7ca4b6d1
2016-05-13 00:24:54 +05:30
Jenkins
dd83ba9758 Merge "Add CinderVolumes.create_volume_and_clone" 2016-05-12 13:34:24 +00:00
Chris St. Pierre
b4606397f2 Add CinderVolumes.create_volume_and_clone
This creates one volume from another volume with the source_volid
option.

Change-Id: I0c42e06376c9f0f07a9505f1efe0a3f2ed09e421
2016-05-11 06:11:59 -05:00
Piyush
0bb834920a Rectify indentation in scenario YAMLs
Match indentation with that of other Scenario YAMLs

Change-Id: Iebd93b9994ff1b13f731125032fd997c84abd06f
2016-05-10 21:05:25 +05:30
Jenkins
55b89312d0 Merge "[Bug1535948] Add Heat template validator" 2016-04-07 23:17:46 +00:00
Roman Vasilets
213b6e9f42 [Bug1535948] Add Heat template validator
* add heat template validator to the validators.
* add `template_validator` to each Heat scenario with usage of templates
* add missed sla section to some scenarios in mos job
* fix samples - allow them to work from the box

Change-Id: I33aa709a3c4b94cb48c8067df685eee6442c0210
Closes-bug: #1535948
2016-04-06 17:40:04 +03:00
Kevin Benton
0913ddd8ca Allow max_avg_sla per atomic actions
This adds a plugin to collect the avg time duration for each
atomic action. With this, SLAs setting time maximums can be
applied to individual atomic actions that are part of a run.

For example:

 NeutronNetworks.create_and_list_ports:
    -
      sla:
        max_avg_duration_per_atomic:
          neutron.list_ports: 5.5

This would put a 5.5 second limit on the average amount of
time spent listing ports. During the create_and_list_ports
test run.

This allows projects to put more fine-grained restrictions
on different types of operations (e.g. GET vs POST).

Change-Id: I752a53ae3b2f47a05057ad8d4688f3f74d75ecf0
2016-03-31 01:34:07 -07:00
Jenkins
a71db86829 Merge "Add heat scenarios: output-show, output-list" 2016-03-28 15:25:48 +00:00
Dmitriy Uvarenkov
91b9e230a8 Add heat scenarios: output-show, output-list
Current patch contains 4 scenarios from heat repo:
- output-show for old algorithm
- output-show for new algorithm
- output-list for old algorithm
- output-list for new algorithm

The patch includes samples and unittests.
Co-Authored-By: Sergey Kraynev <skraynev@mirantis.com>

Change-Id: I37f0ac3f1ddb7cd6d7ea21753b28cebe9ffd754a
2016-03-28 14:28:54 +03:00
Jenkins
76eaa10407 Merge "Add configuration for Heat caching during validation" 2016-03-22 13:24:14 +00:00
Alexander Maretskiy
01408ff786 [Plugins] New scenario Dummy.dummy_random_action
Generate atomic actions with random durations.

This scenario is suitable for demonstration of upcoming
trends report (will be introduced in further patches)

Change-Id: I46207c2d7db848f923820fcc499c46d3c8ecb855
2016-03-22 12:06:14 +02:00
Dmitriy Uvarenkov
7c72a374a2 Add configuration for Heat caching during validation
With this configuration you can test heat caching.
Already was in heat repo, just added it to rally.

Change-Id: I8bd35a0f96a9f73a33f434ad7e3412db6f1d95ad
2016-03-22 11:22:50 +02:00
Jenkins
8e13349c89 Merge "unify *_kwargs name in scenarios" 2016-03-10 14:36:33 +00:00
Kun Huang
9eb7f644c1 unify *_kwargs name in scenarios
When running a scenario, `kwargs` is used as default key-word arguments.
But in some scenarios, there are more and one services being called, and
we use xxx_kwargs for this case.

However, some xxx_kwargs are not unifed for same usage[0]. Unifying
these could avoid midleading for end users. Another improvement is to
add xxx_kwargs with empty settings for scenario config files.

[0] http://paste.openstack.org/show/489505/

Change-Id: I80f49be5c1cd21812d6b2d56b0f4279f0cf4f402
2016-03-09 08:57:05 +08:00
Kiran Ranganath
8eba2de83d Remove deprecated 'script' and 'interpreter' in favor of 'command'
VM task scenarios executes a script with a interpreter provided through
a formatted argument called 'command' which expects the remote_path or local_path
of the script and optionally an interpreter with which the script has to be
executed.

Change-Id: If2e65b553a0f26180267ef0b8e2239e3efe4ea17
2016-03-07 21:12:14 +05:30
Jenkins
da7cc621ce Merge "Add support for nova service-list" 2016-03-02 17:12:38 +00:00
Piyush Raman Srivastava
52aab67865 Add support for nova service-list
blueprint extend-api-benchmark-in-nova-scenarios

Change-Id: Iebe321d395c5eca8621b53cb3bb7659f0aae28e6
2016-02-28 22:10:27 -08:00
Jenkins
ecb0226b3a Merge "Designate V2 - Add recordset scenarios" 2016-02-26 16:30:19 +00:00
Endre Karlson
55fb754a2d Designate V2 - Add recordset scenarios
Add create_and_(list|delete)_recordset scenarios
Remove the test also that checks the allowed methods, this is in order for us
to be able to have a private method _walk_pages that will do fetching of pages
for us vs attempting to fetch 1 giant list at once.

Change-Id: I43b111ebe07f3842fce48af4898978130d1341d7
2016-02-26 15:26:20 +01:00
Piyush Raman Srivastava
05bd90621f Expand Nova API benchmark in Rally
Add support for listing nova hosts, agents, availability-zones
and aggregates.

blueprint extend-api-benchmark-in-nova-scenarios

Change-Id: I1facd17719299128e758334b468c01a83518889e
2016-02-24 07:33:56 -08:00
Sergey Skripnick
9de7fdce77 Add heat siege workload scenario
Change-Id: I2621f4f75eac394951081270338bd63dc43b599e
2016-02-12 08:02:46 +00:00
vigny_wu
d1d7121e50 Add the scenario of list-flavors
Change-Id: Id5ec575a71c11a969fe60f74a35dd9c5c6b39b4e
2016-02-06 16:54:10 +09:00
Rodion Promyshlennikov
52d913f636 Remove fuel deployment engine
Seems like this feature is broken and not used.
Remove module fuel from deployment engines.
Remove package fuel from deployment.
Remove fuel samples.
Remove unittests relative to fuel engine.

Change-Id: I54c1a5de2028a667c35d3b6038c69a64a866451c
2016-01-29 12:52:56 +03:00
Nikita Konovalov
400cf85990 [Sahara] Improved flavor paramter for clusters
The flavors for Master and Worker node groups is now configured
separatelly in both scenarios and context.
This allows setting up better balanced clusters when a Master node
may require a bigger flavor than workers. This is almost always a
requirement for plugins like CDH or HDP.

Change-Id: I78f4145fecb327dae06ead02bd1aa85e2ba2b79a
2016-01-13 12:41:12 +03:00
Jenkins
ab5c39ca9d Merge "Additional argument support for CinderVolumes" 2016-01-09 03:19:31 +00:00
Tom Patzig
3abd54b30a Additional argument support for CinderVolumes
This patch adds support for providing additional arguments to
create_volume in the rally task CinderVolumes.create_and_attach_volume.
Currently only the size of the volume to be created can be given.

Change-Id: I9c7ca61629c817ad44d2421a1fe988c75140c6e5
Closes-Bug: #1522935
2016-01-08 13:07:27 +01:00
Alexander Maretskiy
37b3fc841a [Reports] Improve HTML report and add dummy_output scenario
This finally takes new output format into use by two main changes:

 * Reworking and refactoring of HTML report frontend, mainly in
   template rally/ui/templates/task/report.html, so we have
   the following new features and improvements:

   - show output in new format, according to the spec
   - Added AngularJS directive (via attribute `widget')
     that can render all currently used NVD3 charts,
     and generic HTML tables
   - all existent charts (as well as new output charts) and
     generic tables are displayed by our new AngularJS directive
   - Fix: do not show StackedArea if there are less than 2 points
   - code optimization and rafactoring

 * New scenario `Dummy.dummy_output' is added, so we can
   generate random output in new format to see how it is
   displayed in reports.

Change-Id: Ifa30e6ec86217898fbd6133eaa3e3552f466bf26
2016-01-08 11:35:11 +02:00
ravikumar-venkatesan
65623b66c0 Adds Designate domain-update test
This submission adds create_and_update_domain method to
rally/benchmark/scenarios/designate/basic.py.

Adds update method to "utils.py" under
"rally/benchmark/scenarios/designate".

Added configuration files for designate update-domain
operation under samples/tasks/scenarios/designate.
1) create-and-update-domain.json
2) create-and-update-domain.yaml

Also added unit tests to 'test_basic.py' and 'test_utils.py'
under 'rally/tests/unit/plugins/openstack/scenarios/designate'.
Change-Id: I58468666c0eb73143a0a451466ba41d12a9076d6
2015-12-22 08:38:14 +00:00