rally-openstack/rally-jobs/nova.yaml
Tobias Urdin ba45f16ef1 Add new boot_server_attach_created_volume_and_extend test
This adds a new job to the nova scenarios that creates a server
and volume, attaches the volume and then extends the volume
while it's attached to the server as introduced in Pike [1].

[1] https://specs.openstack.org/openstack/nova-specs/specs/pike/implemented/nova-support-attached-volume-extend.html

Change-Id: Ia30f6fb65d3d60f02816125f47b545465f36f148
2022-08-24 11:34:15 +02:00

1176 lines
29 KiB
YAML
Executable File

{%- set cirros_image_url = "https://github.com/cirros-dev/cirros/releases/download/0.5.2/cirros-0.5.2-x86_64-disk.img" %}
{% set image_name = "^(cirros.*-disk|TestVM)$" %}
{% set flavor_name = "m1.tiny" %}
{% set volume_type = "" %}
---
version: 2
title: Task for gate-rally-dsvm-rally-nova-nv job
description: >
This task contains various scenarios for testing nova plugins
subtasks:
-
title: Authenticate.validate_nova tests
scenario:
Authenticate.validate_nova:
repetitions: 2
runner:
constant:
times: 10
concurrency: 5
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: Quotas test cases
workloads:
-
scenario:
Quotas.nova_update_and_delete:
max_quota: 1024
runner:
constant:
times: 4
concurrency: 1
contexts:
users:
tenants: 2
users_per_tenant: 2
-
scenario:
Quotas.nova_get: {}
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
scenario:
Quotas.nova_update:
max_quota: 1024
runner:
constant:
times: 4
concurrency: 1
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: NovaServers.boot_and_delete_server tests
workloads:
-
scenario:
NovaServers.boot_and_delete_server:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
scenario:
NovaServers.boot_and_delete_server:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
auto_assign_nic: true
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
network:
start_cidr: "10.2.0.0/24"
networks_per_tenant: 2
-
scenario:
NovaServers.boot_and_delete_server:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
force_delete: true
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: NovaServers.boot_and_list_server tests
workloads:
-
scenario:
NovaServers.boot_and_list_server:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
detailed: True
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 1
-
scenario:
NovaServers.boot_and_list_server:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
detailed: True
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
user_choice_method: "round_robin"
-
scenario:
NovaServers.boot_and_list_server:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
files:
/home/bootfile: "rallytest"
detailed: True
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 1
-
title: NovaServerGroups.create_and_get_server_group tests
workloads:
{% for s in (["affinity"], ["anti-affinity"]) %}
-
scenario:
NovaServerGroups.create_and_get_server_group:
policies: {{s}}
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
{% endfor %}
-
title: NovaServerGroups.create_and_list_server_groups tests
workloads:
{% for s in (["affinity"], ["anti-affinity"]) %}
-
scenario:
NovaServerGroups.create_and_list_server_groups:
policies: {{s}}
all_projects: false
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
{% endfor %}
-
title: NovaServerGroups.create_and_delete_server_group tests
workloads:
{% for s in (["affinity"], ["anti-affinity"]) %}
-
scenario:
NovaServerGroups.create_and_delete_server_group:
policies: {{s}}
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
{% endfor %}
-
title: NovaServers.suspend_and_resume_server tests
scenario:
NovaServers.suspend_and_resume_server:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 1
-
title: NovaServers.pause_and_unpause_server tests
scenario:
NovaServers.pause_and_unpause_server:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 1
-
title: NovaServers.shelve_and_unshelve_server tests
scenario:
NovaServers.shelve_and_unshelve_server:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 1
-
title: NovaServers.boot_and_rebuild_server tests
scenario:
NovaServers.boot_and_rebuild_server:
flavor:
name: {{flavor_name}}
from_image:
name: {{image_name}}
to_image:
name: {{image_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 1
-
title: NovaServers.boot_and_associate_floating_ip tests
scenario:
NovaServers.boot_and_associate_floating_ip:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 1
network: {}
-
title: NovaServers.boot_server_associate_and_dissociate_floating_ip tests
scenario:
NovaServers.boot_server_associate_and_dissociate_floating_ip:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
network: {}
-
title: NovaServers.list_servers tests
scenario:
NovaServers.list_servers:
detailed: True
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 1
servers:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
servers_per_tenant: 2
auto_assign_nic: True
network:
networks_per_tenant: 1
-
title: NovaServers.boot_and_show_server tests
scenario:
NovaServers.boot_and_show_server:
image:
name: {{image_name}}
flavor:
name: {{flavor_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 1
-
title: NovaServers.boot_and_get_console_output tests
scenario:
NovaServers.boot_and_get_console_output:
image:
name: {{image_name}}
flavor:
name: {{flavor_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 1
-
title: NovaServers.boot_and_get_console_url tests
workloads:
-
scenario:
NovaServers.boot_and_get_console_url:
flavor:
name: "{{flavor_name}}"
image:
name: "{{image_name}}"
console_type: novnc
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: NovaServers.resize_server tests
workloads:
-
scenario:
NovaServers.resize_server:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
to_flavor:
name: "m1.small"
confirm: true
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 1
-
scenario:
NovaServers.resize_server:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
to_flavor:
name: "m1.small"
confirm: false
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 1
-
title: NovaServers.resize_shutoff_server tests
workloads:
{% for s in ("true", "false") %}
-
scenario:
NovaServers.resize_shutoff_server:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
to_flavor:
name: "m1.small"
confirm: {{s}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
{% endfor %}
-
title: NovaServers.boot_server_attach_created_volume_and_resize tests
scenario:
NovaServers.boot_server_attach_created_volume_and_resize:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
to_flavor:
name: "m1.small"
volume_size: 1
confirm: true
force_delete: false
do_delete: true
boot_server_kwargs: {}
create_volume_kwargs: {}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 1
-
title: NovaServers.boot_server_attach_created_volume_and_extend tests
scenario:
NovaServers.boot_server_attach_created_volume_and_extend:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
volume_size: 1
new_volume_size: 2
force_delete: false
do_delete: true
boot_server_kwargs: {}
create_volume_kwargs: {}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 1
-
title: NovaServers.boot_server_from_volume_and_resize tests
scenario:
NovaServers.boot_server_from_volume_and_resize:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
to_flavor:
name: "m1.small"
volume_size: 1
confirm: true
force_delete: false
do_delete: true
boot_server_kwargs: {}
create_volume_kwargs: {}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 1
-
title: NovaServers.boot_and_bounce_server tests
scenario:
NovaServers.boot_and_bounce_server:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
actions:
-
hard_reboot: 1
-
stop_start: 1
-
rescue_unrescue: 1
-
pause_unpause: 1
-
suspend_resume: 1
-
lock_unlock: 1
-
shelve_unshelve: 1
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 1
-
title: NovaServers.boot_lock_unlock_and_delete tests
scenario:
NovaServers.boot_lock_unlock_and_delete:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 1
-
title: NovaServers.boot_server_from_volume_and_delete tests
scenario:
NovaServers.boot_server_from_volume_and_delete:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
volume_size: 1
volume_type: {{volume_type}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: NovaServers.boot_server_from_volume tests
scenario:
NovaServers.boot_server_from_volume:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
volume_size: 1
volume_type: {{volume_type}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: NovaServers.snapshot_server tests
workloads:
-
scenario:
NovaServers.snapshot_server:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
scenario:
NovaServers.snapshot_server:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
api_versions:
glance:
version: 2
-
title: NovaServers.boot_server tests
workloads:
-
scenario:
NovaServers.boot_server:
flavor:
name: "^ram64$"
image:
name: {{image_name}}
auto_assign_nic: false
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
flavors:
-
name: "ram64"
ram: 64
disk: 1
-
scenario:
NovaServers.boot_server:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
scenario:
NovaServers.boot_server:
flavor:
name: {{flavor_name}}
image:
name: "rally-named-image-from-context"
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 1
users_per_tenant: 2
roles:
- admin
images:
image_url: "{{ cirros_image_url }}"
disk_format: "qcow2"
container_format: "bare"
images_per_tenant: 1
image_name: "rally-named-image-from-context"
visibility: "public"
-
title: NovaHypervisors.list_hypervisors tests
scenario:
NovaHypervisors.list_hypervisors:
detailed: True
runner:
constant:
times: 4
concurrency: 2
-
title: NovaHypervisors.statistics_hypervisors tests
scenario:
NovaHypervisors.statistics_hypervisors: {}
runner:
constant:
times: 5
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: NovaHypervisors.list_and_get_hypervisors tests
scenario:
NovaHypervisors.list_and_get_hypervisors:
detailed: True
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: NovaHypervisors.list_and_get_uptime_hypervisors tests
scenario:
NovaHypervisors.list_and_get_uptime_hypervisors:
detailed: True
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: NovaHypervisors.list_and_search_hypervisors tests
scenario:
NovaHypervisors.list_and_search_hypervisors:
detailed: True
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: NovaKeypair.create_and_delete_keypair tests
workloads:
-
scenario:
NovaKeypair.create_and_delete_keypair: {}
runner:
constant:
times: 4
concurrency: 4
contexts:
users:
tenants: 2
users_per_tenant: 2
-
scenario:
NovaKeypair.create_and_delete_keypair:
key_type: "x509"
runner:
constant:
times: 4
concurrency: 4
contexts:
users:
tenants: 2
users_per_tenant: 2
api_versions:
nova:
version: 2.2
-
title: NovaKeypair.create_and_list_keypairs tests
scenario:
NovaKeypair.create_and_list_keypairs: {}
runner:
constant:
times: 4
concurrency: 4
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: NovaKeypair.create_and_get_keypair tests
scenario:
NovaKeypair.create_and_get_keypair: {}
runner:
constant:
times: 4
concurrency: 4
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: NovaKeypair.create_and_get_keypair tests
workloads:
-
scenario:
NovaKeypair.boot_and_delete_server_with_keypair:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
network:
start_cidr: "10.2.0.0/24"
-
scenario:
NovaKeypair.boot_and_delete_server_with_keypair:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
key_type: "x509"
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
network:
start_cidr: "10.2.0.0/24"
api_versions:
nova:
version: 2.2
-
title: NovaServers.boot_and_delete_multiple_servers tests
scenario:
NovaServers.boot_and_delete_multiple_servers:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
count: 5
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: NovaFlavors.list_flavors tests
scenario:
NovaFlavors.list_flavors:
detailed: True
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: NovaAggregates.list_aggregates tests
scenario:
NovaAggregates.list_aggregates: {}
runner:
constant:
concurrency: 2
times : 4
-
title: NovaAggregates.create_aggregate_add_and_remove_host tests
scenario:
NovaAggregates.create_aggregate_add_and_remove_host:
availability_zone: "nova"
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: NovaAvailabilityZones.list_availability_zones tests
scenario:
NovaAvailabilityZones.list_availability_zones:
detailed: true
runner:
constant:
concurrency: 2
times: 4
-
title: NovaServices.list_services tests
scenario:
NovaServices.list_services: {}
runner:
constant:
times: 4
concurrency: 2
-
title: NovaFlavors.create_flavor tests
scenario:
NovaFlavors.create_flavor:
ram: 500
vcpus: 1
disk: 1
runner:
constant:
times: 4
concurrency: 2
-
title: NovaFlavors.create_flavor_and_set_keys tests
scenario:
NovaFlavors.create_flavor_and_set_keys:
ram: 500
vcpus : 1
disk: 1
extra_specs:
quota:disk_read_bytes_sec: 10240
runner:
constant:
concurrency: 2
times: 4
-
title: NovaFlavors.create_and_get_flavor tests
scenario:
NovaFlavors.create_and_get_flavor:
ram: 500
vcpus: 1
disk: 1
runner:
constant:
times: 4
concurrency: 2
-
title: NovaFlavors.create_and_delete_flavor tests
scenario:
NovaFlavors.create_and_delete_flavor:
ram: 500
vcpus : 1
disk: 1
runner:
constant:
concurrency: 2
times: 10
-
title: NovaFlavors.create_and_list_flavor_access tests
scenario:
NovaFlavors.create_and_list_flavor_access:
ram: 500
vcpus: 1
disk: 1
runner:
constant:
times: 4
concurrency: 2
-
title: NovaFlavors.create_flavor_and_add_tenant_access tests
scenario:
NovaFlavors.create_flavor_and_add_tenant_access:
ram: 500
vcpus : 1
disk: 1
runner:
constant:
concurrency: 2
times: 4
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: NovaServers.boot_and_update_server tests
scenario:
NovaServers.boot_and_update_server:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: NovaServers.boot_server_from_volume_snapshot tests
scenario:
NovaServers.boot_server_from_volume_snapshot:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
volume_size: 1
volume_type: {{volume_type}}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: NovaAggregates.create_and_list_aggregates tests
scenario:
NovaAggregates.create_and_list_aggregates:
availability_zone: "nova"
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: NovaAggregates.create_and_delete_aggregate tests
scenario:
NovaAggregates.create_and_delete_aggregate:
availability_zone: "nova"
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: NovaAggregates.create_and_update_aggregate tests
scenario:
NovaAggregates.create_and_update_aggregate:
availability_zone: "nova"
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: NovaAggregates.create_and_get_aggregate_details tests
scenario:
NovaAggregates.create_and_get_aggregate_details:
availability_zone: "nova"
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: NovaServers.boot_server_and_attach_interface tests
scenario:
NovaServers.boot_server_and_attach_interface:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
network_create_args: {}
subnet_create_args: {}
subnet_cidr_start: "1.1.0.0/30"
boot_server_args: {}
runner:
constant:
times: 2
concurrency: 2
contexts:
network: {}
users:
tenants: 2
users_per_tenant: 2
quotas:
neutron:
network: -1
subnet: -1
-
title: NovaAggregates.create_aggregate_add_host_and_boot_server tests
scenario:
NovaAggregates.create_aggregate_add_host_and_boot_server:
image:
name: {{image_name}}
metadata:
test_metadata: "true"
availability_zone: "nova"
ram: 512
vcpus: 1
disk: 1
boot_server_kwargs: {}
runner:
constant:
times: 4
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 2
-
title: NovaServers.boot_server_and_list_interfaces tests
scenario:
NovaServers.boot_server_and_list_interfaces:
flavor:
name: "{{flavor_name}}"
image:
name: {{image_name}}
runner:
constant:
times: 3
concurrency: 3
contexts:
users:
tenants: 2
users_per_tenant: 2
network:
start_cidr: "100.1.0.0/26"
-
title: NovaServers.boot_server_attach_volume_and_list_attachments tests
scenario:
NovaServers.boot_server_attach_volume_and_list_attachments:
flavor:
name: {{flavor_name}}
image:
name: {{image_name}}
volume_size: 1
volume_num: 2
boot_server_kwargs: {}
create_volume_kwargs: {}
runner:
constant:
times: 2
concurrency: 2
contexts:
users:
tenants: 1
users_per_tenant: 1