--- KeystoneBasic.create_user: - args: name_length: 10 runner: type: "constant" times: 10 concurrency: 10 sla: failure_rate: max: 0 KeystoneBasic.create_delete_user: - args: name_length: 10 runner: type: "constant" times: 10 concurrency: 10 sla: failure_rate: max: 0 KeystoneBasic.create_and_list_tenants: - args: name_length: 10 runner: type: "constant" times: 10 concurrency: 10 sla: failure_rate: max: 0 KeystoneBasic.get_entities: - runner: type: "constant" times: 20 concurrency: 10 sla: failure_rate: max: 0 KeystoneBasic.add_and_remove_user_role: - runner: type: "constant" times: 10 concurrency: 5 context: users: tenants: 1 users_per_tenant: 1 sla: failure_rate: max: 0 KeystoneBasic.create_and_delete_role: - runner: type: "constant" times: 10 concurrency: 5 sla: failure_rate: max: 0 KeystoneBasic.create_add_and_list_user_roles: - runner: type: "constant" times: 10 concurrency: 5 context: users: tenants: 1 users_per_tenant: 1 sla: failure_rate: max: 0 KeystoneBasic.create_and_list_users: - args: name_length: 10 runner: type: "constant" times: 10 concurrency: 10 sla: failure_rate: max: 0 KeystoneBasic.create_tenant: - args: name_length: 10 runner: type: "constant" times: 10 concurrency: 10 sla: failure_rate: max: 0 KeystoneBasic.create_tenant_with_users: - args: name_length: 10 users_per_tenant: 10 runner: type: "constant" times: 10 concurrency: 10 context: users: tenants: 3 sla: failure_rate: max: 0 KeystoneBasic.create_user_update_password: - args: name_length: 10 password_length: 10 runner: type: "constant" times: 10 concurrency: 5 sla: failure_rate: max: 0 KeystoneBasic.create_update_and_delete_tenant: - args: name_length: 10 runner: type: "constant" times: 10 concurrency: 5 sla: failure_rate: max: 0 KeystoneBasic.create_delete_user: - args: name_length: 10 runner: type: "constant" times: 10 concurrency: 10 sla: failure_rate: max: 0 KeystoneBasic.create_and_delete_service: - runner: type: "constant" times: 10 concurrency: 5 sla: failure_rate: max: 0 KeystoneBasic.create_and_list_services: - runner: type: "constant" times: 10 concurrency: 5 sla: failure_rate: max: 0 CeilometerAlarms.create_alarm: - args: meter_name: "ram_util" threshold: 10.0 type: "threshold" statistic: "avg" alarm_actions: ["http://localhost:8776/alarm"] ok_actions: ["http://localhost:8776/ok"] insufficient_data_actions: ["http://localhost:8776/notok"] runner: type: "constant" times: 10 concurrency: 10 context: users: tenants: 1 users_per_tenant: 1 sla: failure_rate: max: 0 CeilometerAlarms.create_and_delete_alarm: - args: meter_name: "ram_util" threshold: 10.0 type: "threshold" statistic: "avg" alarm_actions: ["http://localhost:8776/alarm"] ok_actions: ["http://localhost:8776/ok"] insufficient_data_actions: ["http://localhost:8776/notok"] runner: type: "constant" times: 10 concurrency: 10 context: users: tenants: 1 users_per_tenant: 1 sla: failure_rate: max: 0 CeilometerAlarms.create_and_list_alarm: - args: meter_name: "ram_util" threshold: 10.0 type: "threshold" statistic: "avg" alarm_actions: ["http://localhost:8776/alarm"] ok_actions: ["http://localhost:8776/ok"] insufficient_data_actions: ["http://localhost:8776/notok"] runner: type: "constant" times: 10 concurrency: 10 context: users: tenants: 1 users_per_tenant: 1 sla: failure_rate: max: 0 CeilometerAlarms.create_and_update_alarm: - args: meter_name: "ram_util" threshold: 10.0 type: "threshold" statistic: "avg" alarm_actions: ["http://localhost:8776/alarm"] ok_actions: ["http://localhost:8776/ok"] insufficient_data_actions: ["http://localhost:8776/notok"] runner: type: "constant" times: 10 concurrency: 10 context: users: tenants: 1 users_per_tenant: 1 sla: failure_rate: max: 0 CeilometerAlarms.create_alarm_and_get_history: - args: meter_name: "ram_util" threshold: 10.0 type: "threshold" state: "ok" statistic: "avg" alarm_actions: ["http://localhost:8776/alarm"] ok_actions: ["http://localhost:8776/ok"] insufficient_data_actions: ["http://localhost:8776/notok"] runner: type: "constant" times: 10 concurrency: 5 context: users: tenants: 2 users_per_tenant: 2 sla: failure_rate: max: 0 CeilometerAlarms.list_alarms: - runner: type: "constant" times: 10 concurrency: 10 context: users: tenants: 1 users_per_tenant: 1 sla: failure_rate: max: 0 CeilometerMeters.list_meters: - runner: type: "constant" times: 10 concurrency: 10 context: users: tenants: 1 users_per_tenant: 1 sla: failure_rate: max: 0 CeilometerResource.list_resources: - runner: type: "constant" times: 10 concurrency: 10 context: users: tenants: 1 users_per_tenant: 1 sla: failure_rate: max: 0 CeilometerResource.get_tenant_resources: - runner: type: "constant" times: 10 concurrency: 5 context: users: tenants: 2 users_per_tenant: 2 ceilometer: counter_name: "cpu_util" counter_type: "gauge" counter_volume: 1.0 counter_unit: "instance" resources_per_tenant: 3 sla: failure_rate: max: 0 CeilometerSamples.list_samples: - runner: type: "constant" times: 10 concurrency: 10 context: users: tenants: 1 users_per_tenant: 1 ceilometer: counter_name: "cpu_util" counter_type: "gauge" counter_unit: "instance" counter_volume: 1.0 resources_per_tenant: 3 samples_per_resource: 3 sla: failure_rate: max: 0 Dummy.dummy: - args: sleep: 0.25 runner: type: "constant" times: 20 concurrency: 5 sla: failure_rate: max: 0 max_seconds_per_iteration: 1.0 max_avg_duration: 0.5 outliers: max: 1 min_iterations: 10 sigmas: 10 - args: sleep: 0.25 runner: type: "constant" times: 20 concurrency: 5 max_cpu_count: 3 sla: failure_rate: max: 0 - args: sleep: 0.1 runner: type: "constant_for_duration" duration: 5 concurrency: 5 sla: failure_rate: max: 0 - args: sleep: 0.001 runner: type: "rps" times: 2000 rps: 200 sla: failure_rate: max: 0 - args: sleep: 0.1 runner: type: "rps" times: 5 rps: 0.5 sla: failure_rate: max: 0 - args: sleep: 0.1 runner: type: "rps" times: 5 rps: 0.2 sla: failure_rate: max: 0 - args: sleep: 0.001 runner: type: "rps" times: 200 rps: 20 max_concurrency: 10 max_cpu_count: 3 sla: failure_rate: max: 0 - args: sleep: 0.1 runner: type: "serial" times: 20 sla: failure_rate: max: 0 - args: sleep: 0.01 runner: type: "constant" times: 1 concurrency: 1 context: quotas: nova: instances: 200 cores: 200 ram: -1 floating_ips: 200 fixed_ips: 200 metadata_items: -1 injected_files: -1 injected_file_content_bytes: -1 injected_file_path_bytes: -1 key_pairs: 500 security_groups: 400 security_group_rules: 600 cinder: gigabytes: -1 snapshots: -1 volumes: -1 sla: failure_rate: max: 0 - args: sleep: 0.01 runner: type: "constant" times: 1 concurrency: 1 context: users: tenants: 30 users_per_tenant: 15 sla: failure_rate: max: 0 Dummy.dummy_exception: - args: size_of_message: 5 runner: type: "constant" times: 20 concurrency: 5 Dummy.dummy_exception_probability: - args: exception_probability: 0.5 runner: type: "constant" times: 100 concurrency: 1 - args: exception_probability: 0.05 runner: type: "constant" times: 2042 concurrency: 1 - args: exception_probability: 0.5 runner: type: "constant" times: 100 concurrency: 1 sla: failure_rate: min: 20 max: 80 Dummy.dummy_with_scenario_output: - runner: type: "constant" times: 20 concurrency: 10 sla: failure_rate: max: 0 Dummy.dummy_random_fail_in_atomic: - args: exception_probability: 0.5 runner: type: "constant" times: 50 concurrency: 10 FakePlugin.testplugin: - runner: type: "constant" times: 4 concurrency: 4 sla: failure_rate: max: 0 CeilometerStats.create_meter_and_get_stats: - args: user_id: "user-id" resource_id: "resource-id" counter_volume: 1.0 counter_unit: "" counter_type: "cumulative" runner: type: "constant" times: 20 concurrency: 10 context: users: tenants: 1 users_per_tenant: 1 sla: failure_rate: max: 0 CeilometerQueries.create_and_query_alarms: - args: filter: {"and": [{"!=": {"state": "dummy_state"}},{"=": {"type": "threshold"}}]} orderby: !!null limit: 10 meter_name: "ram_util" threshold: 10.0 type: "threshold" statistic: "avg" alarm_actions: ["http://localhost:8776/alarm"] ok_actions: ["http://localhost:8776/ok"] insufficient_data_actions: ["http://localhost:8776/notok"] runner: type: "constant" times: 20 concurrency: 10 context: users: tenants: 1 users_per_tenant: 1 sla: failure_rate: max: 0 CeilometerQueries.create_and_query_alarm_history: - args: orderby: !!null limit: !!null meter_name: "ram_util" threshold: 10.0 type: "threshold" statistic: "avg" alarm_actions: ["http://localhost:8776/alarm"] ok_actions: ["http://localhost:8776/ok"] insufficient_data_actions: ["http://localhost:8776/notok"] runner: type: "constant" times: 20 concurrency: 10 context: users: tenants: 1 users_per_tenant: 1 sla: failure_rate: max: 0 CeilometerQueries.create_and_query_samples: - args: filter: {"=": {"counter_unit": "instance"}} orderby: !!null limit: 10 counter_name: "cpu_util" counter_type: "gauge" counter_unit: "instance" counter_volume: "1.0" resource_id: "resource_id" runner: type: "constant" times: 20 concurrency: 10 context: users: tenants: 1 users_per_tenant: 1 sla: failure_rate: max: 0 HeatStacks.create_and_list_stack: - args: template_path: "/home/jenkins/.rally/extra/default.yaml.template" runner: type: "constant" times: 6 concurrency: 3 context: users: tenants: 1 users_per_tenant: 1 sla: failure_rate: max: 0 HeatStacks.create_and_delete_stack: - args: template_path: "/home/jenkins/.rally/extra/default.yaml.template" runner: type: "constant" times: 6 concurrency: 3 context: users: tenants: 2 users_per_tenant: 3 sla: failure_rate: max: 0 - args: template_path: "/home/jenkins/.rally/extra/server_with_volume.yaml.template" runner: type: "constant" times: 2 concurrency: 2 context: users: tenants: 2 users_per_tenant: 2 sla: failure_rate: max: 0 HeatStacks.create_check_delete_stack: - args: template_path: "/home/jenkins/.rally/extra/random_strings.yaml.template" runner: type: "constant" times: 6 concurrency: 2 context: users: tenants: 2 users_per_tenant: 2 sla: failure_rate: max: 0 HeatStacks.create_update_delete_stack: - args: template_path: "/home/jenkins/.rally/extra/random_strings.yaml.template" updated_template_path: "/home/jenkins/.rally/extra/updated_random_strings_add.yaml.template" runner: type: "constant" times: 6 concurrency: 3 context: users: tenants: 2 users_per_tenant: 3 sla: failure_rate: max: 0 - args: template_path: "/home/jenkins/.rally/extra/random_strings.yaml.template" updated_template_path: "/home/jenkins/.rally/extra/updated_random_strings_delete.yaml.template" runner: type: "constant" times: 6 concurrency: 3 context: users: tenants: 2 users_per_tenant: 3 sla: failure_rate: max: 0 - args: template_path: "/home/jenkins/.rally/extra/random_strings.yaml.template" updated_template_path: "/home/jenkins/.rally/extra/updated_random_strings_replace.yaml.template" runner: type: "constant" times: 6 concurrency: 3 context: users: tenants: 2 users_per_tenant: 3 sla: failure_rate: max: 0 - args: template_path: "/home/jenkins/.rally/extra/autoscaling_policy.yaml.template" updated_template_path: "/home/jenkins/.rally/extra/updated_autoscaling_policy_inplace.yaml.template" runner: type: "constant" times: 6 concurrency: 3 context: users: tenants: 2 users_per_tenant: 3 sla: failure_rate: max: 0 - args: template_path: "/home/jenkins/.rally/extra/resource_group.yaml.template" updated_template_path: "/home/jenkins/.rally/extra/updated_resource_group_increase.yaml.template" runner: type: "constant" times: 6 concurrency: 3 context: users: tenants: 2 users_per_tenant: 3 sla: failure_rate: max: 0 - args: template_path: "/home/jenkins/.rally/extra/resource_group.yaml.template" updated_template_path: "/home/jenkins/.rally/extra/updated_resource_group_reduce.yaml.template" runner: type: "constant" times: 6 concurrency: 3 context: users: tenants: 2 users_per_tenant: 3 sla: failure_rate: max: 0 HeatStacks.list_stacks_and_resources: - runner: type: "constant" times: 6 concurrency: 3 context: users: tenants: 2 users_per_tenant: 3 stacks: stacks_per_tenant: 2 resources_per_stack: 10 sla: failure_rate: max: 0 HeatStacks.create_suspend_resume_delete_stack: - args: template_path: "/home/jenkins/.rally/extra/random_strings.yaml.template" runner: type: "constant" times: 6 concurrency: 3 context: users: tenants: 2 users_per_tenant: 3 sla: failure_rate: max: 0 Authenticate.keystone: - runner: type: "constant" times: 40 concurrency: 20 context: users: tenants: 2 users_per_tenant: 10 sla: failure_rate: max: 0 SaharaNodeGroupTemplates.create_and_list_node_group_templates: - args: flavor: name: "m1.small" runner: type: "constant" times: 20 concurrency: 20 context: users: tenants: 1 users_per_tenant: 1 sla: failure_rate: max: 0 SaharaNodeGroupTemplates.create_delete_node_group_templates: - args: flavor: name: "m1.small" runner: type: "constant" times: 20 concurrency: 20 context: users: tenants: 1 users_per_tenant: 1 sla: failure_rate: max: 0 Authenticate.validate_cinder: - args: repetitions: 2 runner: type: "constant" times: 10 concurrency: 5 context: users: tenants: 3 users_per_tenant: 5 sla: failure_rate: max: 0 Authenticate.validate_glance: - args: repetitions: 2 runner: type: "constant" times: 10 concurrency: 5 context: users: tenants: 3 users_per_tenant: 5 sla: failure_rate: max: 0 Authenticate.validate_heat: - args: repetitions: 2 runner: type: "constant" times: 10 concurrency: 5 context: users: tenants: 3 users_per_tenant: 5 sla: failure_rate: max: 0 Authenticate.validate_nova: - args: repetitions: 2 runner: type: "constant" times: 10 concurrency: 5 context: users: tenants: 3 users_per_tenant: 5 sla: failure_rate: max: 0 Quotas.cinder_update_and_delete: - args: max_quota: 1024 runner: type: "constant" times: 4 concurrency: 1 context: users: tenants: 3 users_per_tenant: 2 sla: failure_rate: max: 0 Quotas.cinder_update: - args: max_quota: 1024 runner: type: "constant" times: 10 concurrency: 2 context: users: tenants: 3 users_per_tenant: 2 sla: failure_rate: max: 0 Quotas.nova_update_and_delete: - args: max_quota: 1024 runner: type: "constant" times: 4 concurrency: 1 context: users: tenants: 3 users_per_tenant: 2 sla: failure_rate: max: 0 Quotas.nova_update: - args: max_quota: 1024 runner: type: "constant" times: 10 concurrency: 2 context: users: tenants: 3 users_per_tenant: 2 sla: failure_rate: max: 0 NovaServers.boot_and_delete_server: - args: flavor: name: "m1.tiny" image: name: {{image_name}} runner: type: "constant" times: 3 concurrency: 3 context: users: tenants: 3 users_per_tenant: 2 sla: failure_rate: max: 0 - args: flavor: name: "m1.tiny" image: name: {{image_name}} runner: type: "constant" times: 3 concurrency: 3 context: users: tenants: 3 users_per_tenant: 2 network: start_cidr: "10.2.0.0/24" networks_per_tenant: 2 - args: flavor: name: "m1.tiny" image: name: {{image_name}} force_delete: true runner: type: "constant" times: 3 concurrency: 3 context: users: tenants: 3 users_per_tenant: 2 sla: failure_rate: max: 0 NovaServers.boot_and_list_server: - args: flavor: name: "m1.tiny" image: name: {{image_name}} detailed: True runner: type: "constant" times: 3 concurrency: 3 context: users: tenants: 3 users_per_tenant: 1 sla: failure_rate: max: 0 NovaServers.suspend_and_resume_server: - args: flavor: name: "m1.tiny" image: name: {{image_name}} runner: type: "constant" times: 3 concurrency: 3 context: users: tenants: 3 users_per_tenant: 1 sla: failure_rate: max: 0 NovaServers.pause_and_unpause_server: - args: flavor: name: "m1.tiny" image: name: {{image_name}} runner: type: "constant" times: 3 concurrency: 3 context: users: tenants: 3 users_per_tenant: 1 sla: failure_rate: max: 0 NovaServers.shelve_and_unshelve_server: - args: flavor: name: "m1.tiny" image: name: {{image_name}} runner: type: "constant" times: 3 concurrency: 3 context: users: tenants: 3 users_per_tenant: 1 sla: failure_rate: max: 0 NovaServers.boot_and_rebuild_server: - args: flavor: name: "m1.tiny" from_image: name: {{image_name}} to_image: name: {{image_name}} runner: type: "constant" times: 3 concurrency: 3 context: users: tenants: 3 users_per_tenant: 1 sla: failure_rate: max: 0 NovaServers.boot_and_associate_floating_ip: - args: flavor: name: "m1.tiny" image: name: {{image_name}} runner: type: "constant" times: 3 concurrency: 3 context: users: tenants: 3 users_per_tenant: 1 network: {} sla: failure_rate: max: 0 NovaServers.list_servers: - args: detailed: True runner: type: "constant" times: 3 concurrency: 3 context: users: tenants: 3 users_per_tenant: 1 servers: flavor: name: "m1.tiny" image: name: {{image_name}} servers_per_tenant: 2 sla: failure_rate: max: 0 NovaServers.resize_server: - args: flavor: name: "m1.tiny" image: name: {{image_name}} to_flavor: name: "m1.small" confirm: true runner: type: "constant" times: 2 concurrency: 2 context: users: tenants: 2 users_per_tenant: 1 sla: failure_rate: max: 0 NovaServers.boot_and_bounce_server: - args: flavor: name: "m1.tiny" image: name: {{image_name}} actions: - hard_reboot: 1 - stop_start: 1 - rescue_unrescue: 1 runner: type: "constant" times: 2 concurrency: 2 context: users: tenants: 2 users_per_tenant: 1 sla: failure_rate: max: 0 NovaServers.boot_lock_unlock_and_delete: - args: flavor: name: "m1.tiny" image: name: {{image_name}} runner: type: "constant" times: 4 concurrency: 4 context: users: tenants: 2 users_per_tenant: 1 sla: failure_rate: max: 0 NovaServers.boot_server_from_volume_and_delete: - args: flavor: name: "m1.tiny" image: name: {{image_name}} volume_size: 1 runner: type: "constant" times: 3 concurrency: 3 context: users: tenants: 3 users_per_tenant: 3 sla: failure_rate: max: 0 NovaServers.boot_server_from_volume: - args: flavor: name: "m1.tiny" image: name: {{image_name}} volume_size: 1 runner: type: "constant" times: 3 concurrency: 3 context: users: tenants: 2 users_per_tenant: 2 sla: failure_rate: max: 0 NovaServers.snapshot_server: - args: flavor: name: "m1.tiny" image: name: {{image_name}} runner: type: "constant" times: 2 concurrency: 2 context: users: tenants: 2 users_per_tenant: 2 sla: failure_rate: max: 0 NovaServers.boot_server: - args: flavor: name: "^ram64$" image: name: {{image_name}} auto_assign_nics: false runner: type: "constant" times: 3 concurrency: 3 context: users: tenants: 3 users_per_tenant: 2 flavors: - name: "ram64" ram: 64 sla: failure_rate: max: 0 - args: flavor: name: "m1.tiny" image: name: {{image_name}} runner: type: "constant" times: 3 concurrency: 3 context: users: tenants: 3 users_per_tenant: 2 sla: failure_rate: max: 0 NovaHypervisors.list_hypervisors: - args: detailed: True runner: type: "constant" times: 5 concurrency: 2 sla: failure_rate: max: 0 VMTasks.boot_runcommand_delete: - args: flavor: name: "m1.tiny" image: name: {{image_name}} floating_network: "public" use_floatingip: true script: "/home/jenkins/.rally/extra/instance_dd_test.sh" interpreter: "/bin/sh" username: "cirros" runner: type: "constant" times: 2 concurrency: 2 context: users: tenants: 1 users_per_tenant: 1 sla: failure_rate: max: 0 - args: flavor: name: "m1.tiny" image: name: {{image_name}} volume_args: size: 2 use_floatingip: true script: "/home/jenkins/.rally/extra/instance_dd_test.sh" interpreter: "/bin/sh" username: "cirros" runner: type: "constant" times: 2 concurrency: 2 context: users: tenants: 1 users_per_tenant: 1 sla: failure_rate: max: 0 - args: flavor: name: "m1.tiny" image: name: {{image_name}} use_floatingip: false script: "/home/jenkins/.rally/extra/instance_dd_test.sh" interpreter: "/bin/sh" username: "cirros" runner: type: "constant" times: 2 concurrency: 2 context: users: tenants: 1 users_per_tenant: 1 sla: failure_rate: max: 0 HttpRequests.check_request: - args: url: "http://www.example.com" method: "GET" status_code: 200 runner: type: "constant" times: 2 concurrency: 2 sla: failure_rate: max: 0 HttpRequests.check_random_request: - args: requests: - url: "http://www.example.com" method: "GET" - url: "http://www.openstack.org" method: "GET" status_code: 200 runner: type: "constant" times: 2 concurrency: 2 sla: failure_rate: max: 0 NovaSecGroup.create_and_delete_secgroups: - args: security_group_count: 5 rules_per_security_group: 5 runner: type: "constant" times: 4 concurrency: 4 context: users: tenants: 3 users_per_tenant: 2 quotas: nova: security_groups: -1 security_group_rules: -1 sla: failure_rate: max: 0 NovaSecGroup.create_and_list_secgroups: - args: security_group_count: 5 rules_per_security_group: 5 runner: type: "constant" times: 4 concurrency: 4 context: users: tenants: 3 users_per_tenant: 2 quotas: nova: security_groups: -1 security_group_rules: -1 sla: failure_rate: max: 0 NovaSecGroup.boot_and_delete_server_with_secgroups: - args: flavor: name: "m1.tiny" image: name: {{image_name}} security_group_count: 5 rules_per_security_group: 5 runner: type: "constant" times: 4 concurrency: 4 context: users: tenants: 3 users_per_tenant: 2 network: start_cidr: "10.2.0.0/24" quotas: nova: security_groups: -1 security_group_rules: -1 NovaKeypair.create_and_delete_keypair: - runner: type: "constant" times: 4 concurrency: 4 context: users: tenants: 3 users_per_tenant: 2 sla: failure_rate: max: 0 NovaKeypair.create_and_list_keypairs: - runner: type: "constant" times: 4 concurrency: 4 context: users: tenants: 3 users_per_tenant: 2 sla: failure_rate: max: 0 NovaKeypair.boot_and_delete_server_with_keypair: - args: flavor: name: "m1.tiny" image: name: {{image_name}} runner: type: "constant" times: 4 concurrency: 4 context: users: tenants: 3 users_per_tenant: 2 network: start_cidr: "10.2.0.0/24" sla: failure_rate: max: 0 EC2Servers.boot_server: - args: flavor: name: "m1.tiny" image: name: {{image_name}} runner: type: "constant" times: 3 concurrency: 3 context: users: tenants: 3 users_per_tenant: 1 sla: failure_rate: max: 0 HeatStacks.list_stacks_and_events: - runner: type: "constant" times: 6 concurrency: 3 context: users: tenants: 2 users_per_tenant: 3 stacks: stacks_per_tenant: 2 resources_per_stack: 10 sla: failure_rate: max: 0 NovaFloatingIpsBulk.create_and_list_floating_ips_bulk: - args: start_cidr: "10.2.0.0/27" runner: type: "constant" times: 4 concurrency: 2 context: users: tenants: 2 users_per_tenant: 2 sla: failure_rate: max: 0 NovaFloatingIpsBulk.create_and_delete_floating_ips_bulk: - args: start_cidr: "10.2.0.0/27" runner: type: "constant" times: 4 concurrency: 2 context: users: tenants: 2 users_per_tenant: 2 sla: failure_rate: max: 0