66 lines
1.2 KiB
YAML
66 lines
1.2 KiB
YAML
heat_template_version: 2015-10-15
|
|
|
|
description: |
|
|
App server that is a member of Neutron Pool.
|
|
|
|
parameters:
|
|
|
|
image:
|
|
type: string
|
|
|
|
flavor:
|
|
type: string
|
|
|
|
net:
|
|
type: string
|
|
|
|
sec_group:
|
|
type: string
|
|
|
|
pool_id:
|
|
type: string
|
|
|
|
app_port:
|
|
type: number
|
|
|
|
timeout:
|
|
type: number
|
|
|
|
resources:
|
|
|
|
config:
|
|
type: OS::Test::WebAppConfig
|
|
properties:
|
|
app_port: { get_param: app_port }
|
|
wc_curl_cli: { get_attr: [ handle, curl_cli ] }
|
|
|
|
server:
|
|
type: OS::Nova::Server
|
|
properties:
|
|
image: { get_param: image }
|
|
flavor: { get_param: flavor }
|
|
networks:
|
|
- network: { get_param: net }
|
|
security_groups:
|
|
- { get_param: sec_group }
|
|
user_data_format: RAW
|
|
user_data: { get_resource: config }
|
|
|
|
handle:
|
|
type: OS::Heat::WaitConditionHandle
|
|
|
|
waiter:
|
|
type: OS::Heat::WaitCondition
|
|
depends_on: server
|
|
properties:
|
|
timeout: { get_param: timeout }
|
|
handle: { get_resource: handle }
|
|
|
|
pool_member:
|
|
type: OS::Neutron::PoolMember
|
|
depends_on: waiter
|
|
properties:
|
|
address: { get_attr: [ server, networks, { get_param: net }, 0 ] }
|
|
pool_id: { get_param: pool_id }
|
|
protocol_port: { get_param: app_port }
|