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 }