heat-templates/hot/resource_group/server_with_volumes.yaml
Steven Hardy c5e1c001bb Add a server with volumes ResourceGroup example
Adds an example in response to a ML question, shows how you can
create a resource group containing a number of nested stacks containing
identical volumes and volume attachment resources, then pass in the
server ID to have the volumes attached to one server.

Also moves the current basic example into a resource_group subdirectory,
so we can collect related examples, and make more obvious that the
volume_with_attachment template is part of another example rather than
a standalone example template.

Change-Id: I1ffc1656286a981b6dc219038e03adbb8d5af775
2014-09-12 11:59:50 +01:00

53 lines
1.3 KiB
YAML

heat_template_version: 2013-05-23
description: >
Example of using ResourceGroup to attach multiple volumes to an instance
parameters:
key_name:
type: string
description: keypair to enable SSH access to the instance.
default: stack_key
image_id:
type: string
description: ID of the image to use for the instance to be created.
default: cirros-0.3.2-x86_64-disk
volume_size:
type: number
description: Size of volume to attach to instance
default: 1
constraints:
- range: {min: 1, max: 10}
num_volumes:
type: number
description: Number of volumes to attach to instance
default: 2
constraints:
- range: {min: 1, max: 10}
instance_type:
type: string
description: Type of the instance to be created.
default: m1.nano
resources:
instance:
type: OS::Nova::Server
properties:
image: { get_param: image_id }
flavor: { get_param: instance_type }
key_name: { get_param: key_name }
group_of_volumes:
type: OS::Heat::ResourceGroup
properties:
count: {get_param: num_volumes}
resource_def:
type: volume_with_attachment.yaml
properties:
instance_id: {get_resource: instance}
volume_size: {get_param: volume_size}