1 heat_template_version: 2013-05-23
4 HOT template to created resources deployed by scenario003.
8 description: Name of keypair to assign to servers
9 default: 'pingtest_key'
12 description: Name of image to use for servers
13 default: 'pingtest_image'
18 ID or name of public network for which floating IP addresses will be allocated
21 description: Name of private network to be created
22 default: 'default-net'
25 description: Private network address (CIDR notation)
26 default: '192.168.2.0/24'
29 description: Private network gateway address
30 default: '192.168.2.1'
31 private_net_pool_start:
33 description: Start of private network IP address allocation pool
34 default: '192.168.2.100'
37 default: '192.168.2.200'
38 description: End of private network IP address allocation pool
43 type: OS::Nova::KeyPair
45 save_private_key: true
46 name: {get_param: key_name }
49 type: OS::Neutron::Net
51 name: { get_param: private_net_name }
54 type: OS::Neutron::Subnet
56 network_id: { get_resource: private_net }
57 cidr: { get_param: private_net_cidr }
58 gateway_ip: { get_param: private_net_gateway }
60 - start: { get_param: private_net_pool_start }
61 end: { get_param: private_net_pool_end }
64 type: OS::Neutron::Router
66 external_gateway_info:
67 network: { get_param: public_net_name }
70 type: OS::Neutron::RouterInterface
72 router_id: { get_resource: router }
73 subnet_id: { get_resource: private_subnet }
76 type: OS::Nova::Server
79 flavor: { get_resource: test_flavor }
80 image: { get_param: image }
81 key_name: { get_resource: key_pair }
83 - port: { get_resource: server1_port }
86 type: OS::Neutron::Port
88 network_id: { get_resource: private_net }
90 - subnet_id: { get_resource: private_subnet }
91 security_groups: [{ get_resource: server_security_group }]
94 type: OS::Neutron::FloatingIP
95 # TODO: investigate why we need this depends_on and if we could
96 # replace it by router_id with get_resource: router_interface
97 depends_on: router_interface
99 floating_network: { get_param: public_net_name }
100 port_id: { get_resource: server1_port }
102 server_security_group:
103 type: OS::Neutron::SecurityGroup
105 description: Add security group rules for server
106 name: pingtest-security-group
108 - remote_ip_prefix: 0.0.0.0/0
112 - remote_ip_prefix: 0.0.0.0/0
116 type: OS::Nova::Flavor
122 type: OS::Sahara::ImageRegistry
124 image: { get_param: image }
130 type: OS::Mistral::Workflow
134 description: Just testing workflow resource.
141 action: std.echo output=<% $.phrase %>
147 description: IP address of server1 in private network
148 value: { get_attr: [ server1, first_address ] }
150 description: Floating IP address of server1 in public network
151 value: { get_attr: [ server1_floating_ip, floating_ip_address ] }
153 description: Mistral output verifying execution
154 value: { get_attr: [mistral_workflow, executions]}