From e38536861b0096a7b9f97d96960cfa67bc22471a Mon Sep 17 00:00:00 2001 From: kairat_kushaev Date: Wed, 29 Apr 2015 16:56:33 +0300 Subject: [PATCH] [Heat] Add rally template with Heat Resource Group The patch adds a rally template for Heat.create_and_delete_stack scenario that allows to test performance of creation and deletion of Heat Resource Groups. The template allows to create a stack that contain N instances and N volumes attached, where N - is num_instances parameter in rally template. Change-Id: If5c7c787c670b464eb3386635bcb1bfc5a218075 --- ...rce_group_server_with_volume.yaml.template | 44 +++++++++++++++++++ rally-jobs/heat.yaml | 18 ++++++++ 2 files changed, 62 insertions(+) create mode 100644 rally-jobs/extra/resource_group_server_with_volume.yaml.template diff --git a/rally-jobs/extra/resource_group_server_with_volume.yaml.template b/rally-jobs/extra/resource_group_server_with_volume.yaml.template new file mode 100644 index 00000000..5ce19f0f --- /dev/null +++ b/rally-jobs/extra/resource_group_server_with_volume.yaml.template @@ -0,0 +1,44 @@ +heat_template_version: 2014-10-16 + +description: > + Test template that creates a resource group with servers and volumes. + The template allows to create a lot of nested stacks with standard + configuration: nova instance, cinder volume attached to that instance + +parameters: + + num_instances: + type: number + description: number of instances that should be created in resource group + constraints: + - range: {min: 1} + instance_image: + type: string + default: cirros-0.3.4-x86_64-uec + instance_volume_size: + type: number + description: Size of volume to attach to instance + default: 1 + constraints: + - range: {min: 1, max: 1024} + instance_flavor: + type: string + description: Type of the instance to be created. + default: m1.tiny + instance_availability_zone: + type: string + description: The Availability Zone to launch the instance. + default: nova + +resources: + group_of_volumes: + type: OS::Heat::ResourceGroup + properties: + count: {get_param: num_instances} + resource_def: + type: /home/jenkins/.rally/extra/server_with_volume.yaml.template + properties: + image: {get_param: instance_image} + volume_size: {get_param: instance_volume_size} + flavor: {get_param: instance_flavor} + availability_zone: {get_param: instance_availability_zone} \ No newline at end of file diff --git a/rally-jobs/heat.yaml b/rally-jobs/heat.yaml index 9c1a759c..53fcb39b 100644 --- a/rally-jobs/heat.yaml +++ b/rally-jobs/heat.yaml @@ -46,6 +46,24 @@ failure_rate: max: 0 + - + args: + template_path: "/home/jenkins/.rally/extra/resource_group_server_with_volume.yaml.template" + parameters: + num_instances: 2 + files: ["/home/jenkins/.rally/extra/server_with_volume.yaml.template"] + runner: + type: "constant" + times: 2 + concurrency: 2 + context: + users: + tenants: 2 + users_per_tenant: 1 + sla: + failure_rate: + max: 0 + HeatStacks.create_check_delete_stack: - args: