diff --git a/doc/samples/tasks/scenarios/heat/create-and-delete-stack_with_neutron.json b/doc/samples/tasks/scenarios/heat/create-and-delete-stack_with_neutron.json new file mode 100644 index 0000000000..0a85dbb3a8 --- /dev/null +++ b/doc/samples/tasks/scenarios/heat/create-and-delete-stack_with_neutron.json @@ -0,0 +1,20 @@ +{ + "HeatStacks.create_and_delete_stack": [ + { + "args": { + "template_path": "server_with_ports.yaml.template" + }, + "runner": { + "type": "constant", + "times": 10, + "concurrency": 2 + }, + "context": { + "users": { + "tenants": 2, + "users_per_tenant": 3 + } + } + } + ] +} diff --git a/doc/samples/tasks/scenarios/heat/create-and-delete-stack_with_neutron.yaml b/doc/samples/tasks/scenarios/heat/create-and-delete-stack_with_neutron.yaml new file mode 100644 index 0000000000..c6a09abf35 --- /dev/null +++ b/doc/samples/tasks/scenarios/heat/create-and-delete-stack_with_neutron.yaml @@ -0,0 +1,13 @@ +--- + HeatStacks.create_and_delete_stack: + - + args: + template_path: 'server_with_ports.yaml.template' + runner: + type: "constant" + times: 10 + concurrency: 2 + context: + users: + tenants: 2 + users_per_tenant: 3 diff --git a/doc/samples/tasks/scenarios/heat/create-and-delete-stack_with_volume.json b/doc/samples/tasks/scenarios/heat/create-and-delete-stack_with_volume.json new file mode 100644 index 0000000000..01f87715ee --- /dev/null +++ b/doc/samples/tasks/scenarios/heat/create-and-delete-stack_with_volume.json @@ -0,0 +1,20 @@ +{ + "HeatStacks.create_and_delete_stack": [ + { + "args": { + "template_path": "server_with_volume.yaml.template" + }, + "runner": { + "type": "constant", + "times": 10, + "concurrency": 2 + }, + "context": { + "users": { + "tenants": 2, + "users_per_tenant": 3 + } + } + } + ] +} diff --git a/doc/samples/tasks/scenarios/heat/create-and-delete-stack_with_volume.yaml b/doc/samples/tasks/scenarios/heat/create-and-delete-stack_with_volume.yaml new file mode 100644 index 0000000000..f4f340ce79 --- /dev/null +++ b/doc/samples/tasks/scenarios/heat/create-and-delete-stack_with_volume.yaml @@ -0,0 +1,13 @@ +--- + HeatStacks.create_and_delete_stack: + - + args: + template_path: 'server_with_volume.yaml.template' + runner: + type: "constant" + times: 10 + concurrency: 2 + context: + users: + tenants: 2 + users_per_tenant: 3 diff --git a/doc/samples/tasks/scenarios/heat/templates/server_with_ports.yaml.template b/doc/samples/tasks/scenarios/heat/templates/server_with_ports.yaml.template new file mode 100644 index 0000000000..da0bbf9727 --- /dev/null +++ b/doc/samples/tasks/scenarios/heat/templates/server_with_ports.yaml.template @@ -0,0 +1,53 @@ +heat_template_version: 2013-05-23 + +parameters: + # set all correct defaults for parameters before launch test + public_net: + type: string + default: public + image: + type: string + default: cirros-0.3.2-x86_64-uec + flavor: + type: string + default: m1.tiny + cidr: + type: string + default: 11.11.11.0/24 + +resources: + server: + type: OS::Nova::Server + properties: + image: {get_param: image} + flavor: {get_param: flavor} + networks: + - port: { get_resource: server_port } + + router: + type: OS::Neutron::Router + properties: + external_gateway_info: + network: {get_param: public_net} + + router_interface: + type: OS::Neutron::RouterInterface + properties: + router_id: { get_resource: router } + subnet_id: { get_resource: private_subnet } + + private_net: + type: OS::Neutron::Net + + private_subnet: + type: OS::Neutron::Subnet + properties: + network: { get_resource: private_net } + cidr: {get_param: cidr} + + server_port: + type: OS::Neutron::Port + properties: + network: {get_resource: private_net} + fixed_ips: + - subnet_id: { get_resource: private_subnet } diff --git a/doc/samples/tasks/scenarios/heat/templates/server_with_volume.yaml.template b/doc/samples/tasks/scenarios/heat/templates/server_with_volume.yaml.template new file mode 100644 index 0000000000..a0b235d3df --- /dev/null +++ b/doc/samples/tasks/scenarios/heat/templates/server_with_volume.yaml.template @@ -0,0 +1,39 @@ +heat_template_version: 2013-05-23 + +parameters: + # set all correct defaults for parameters before launch test + image: + type: string + default: cirros-0.3.2-x86_64-uec + flavor: + type: string + default: m1.tiny + availability_zone: + type: string + description: The Availability Zone to launch the instance. + default: nova + volume_size: + type: number + description: Size of the volume to be created. + default: 1 + constraints: + - range: { min: 1, max: 1024 } + description: must be between 1 and 1024 Gb. + +resources: + server: + type: OS::Nova::Server + properties: + image: {get_param: image} + flavor: {get_param: flavor} + cinder_volume: + type: OS::Cinder::Volume + properties: + size: { get_param: volume_size } + availability_zone: { get_param: availability_zone } + volume_attachment: + type: OS::Cinder::VolumeAttachment + properties: + volume_id: { get_resource: cinder_volume } + instance_uuid: { get_resource: server} + mountpoint: /dev/vdc diff --git a/rally-scenarios/extra/server_with_ports.yaml.template b/rally-scenarios/extra/server_with_ports.yaml.template new file mode 100644 index 0000000000..da0bbf9727 --- /dev/null +++ b/rally-scenarios/extra/server_with_ports.yaml.template @@ -0,0 +1,53 @@ +heat_template_version: 2013-05-23 + +parameters: + # set all correct defaults for parameters before launch test + public_net: + type: string + default: public + image: + type: string + default: cirros-0.3.2-x86_64-uec + flavor: + type: string + default: m1.tiny + cidr: + type: string + default: 11.11.11.0/24 + +resources: + server: + type: OS::Nova::Server + properties: + image: {get_param: image} + flavor: {get_param: flavor} + networks: + - port: { get_resource: server_port } + + router: + type: OS::Neutron::Router + properties: + external_gateway_info: + network: {get_param: public_net} + + router_interface: + type: OS::Neutron::RouterInterface + properties: + router_id: { get_resource: router } + subnet_id: { get_resource: private_subnet } + + private_net: + type: OS::Neutron::Net + + private_subnet: + type: OS::Neutron::Subnet + properties: + network: { get_resource: private_net } + cidr: {get_param: cidr} + + server_port: + type: OS::Neutron::Port + properties: + network: {get_resource: private_net} + fixed_ips: + - subnet_id: { get_resource: private_subnet } diff --git a/rally-scenarios/extra/server_with_volume.yaml.template b/rally-scenarios/extra/server_with_volume.yaml.template new file mode 100644 index 0000000000..a0b235d3df --- /dev/null +++ b/rally-scenarios/extra/server_with_volume.yaml.template @@ -0,0 +1,39 @@ +heat_template_version: 2013-05-23 + +parameters: + # set all correct defaults for parameters before launch test + image: + type: string + default: cirros-0.3.2-x86_64-uec + flavor: + type: string + default: m1.tiny + availability_zone: + type: string + description: The Availability Zone to launch the instance. + default: nova + volume_size: + type: number + description: Size of the volume to be created. + default: 1 + constraints: + - range: { min: 1, max: 1024 } + description: must be between 1 and 1024 Gb. + +resources: + server: + type: OS::Nova::Server + properties: + image: {get_param: image} + flavor: {get_param: flavor} + cinder_volume: + type: OS::Cinder::Volume + properties: + size: { get_param: volume_size } + availability_zone: { get_param: availability_zone } + volume_attachment: + type: OS::Cinder::VolumeAttachment + properties: + volume_id: { get_resource: cinder_volume } + instance_uuid: { get_resource: server} + mountpoint: /dev/vdc diff --git a/rally-scenarios/rally-neutron.yaml b/rally-scenarios/rally-neutron.yaml index 647d644345..c77300c529 100644 --- a/rally-scenarios/rally-neutron.yaml +++ b/rally-scenarios/rally-neutron.yaml @@ -442,3 +442,18 @@ users_per_tenant: 2 sla: max_failure_percent: 0 + + HeatStacks.create_and_delete_stack: + - + args: + template_path: '/home/jenkins/.rally/extra/server_with_ports.yaml.template' + runner: + type: "constant" + times: 4 + concurrency: 2 + context: + users: + tenants: 2 + users_per_tenant: 2 + sla: + max_failure_percent: 0 diff --git a/rally-scenarios/rally.yaml b/rally-scenarios/rally.yaml index f5b4860131..8c5bee6197 100644 --- a/rally-scenarios/rally.yaml +++ b/rally-scenarios/rally.yaml @@ -421,6 +421,20 @@ sla: max_failure_percent: 0 + - + args: + template_path: '/home/jenkins/.rally/extra/server_with_volume.yaml.template' + runner: + type: "constant" + times: 4 + concurrency: 2 + context: + users: + tenants: 2 + users_per_tenant: 2 + sla: + max_failure_percent: 0 + Authenticate.keystone: - runner: