heat-tempest-plugin/heat_tempest_plugin/tests/scenario/templates/app_server_neutron.yaml
Pavlo Shchelokovskyy ab1725eb6b Allow to pass --insecure options into VMs
currently Heat tests have troubles running when self-signed SSL CA is
used on public Heat API and standard upstream images (Cirros, Ubuntu)
are used as those lack trust to those CA - example is DevStack
with tls-proxy service enabled.

A workaround is to set [clients_heat]insecure=True, but that is
not really a production-ready setting, and does not work for CFN-style
signaling, only for WaitConditions.

Instead, this patch adds an extra config option
`vm_to_heat_api_insecure` (defaults to False), and when enabled tests will
pass the correct option to the curl or cfn-signal commands running from
instance's user data via new parameters that test templates are now
accepting.

Change-Id: I94a82caf1fcb6999151ff1e6fbbe1e2ba211bbb9
2019-10-05 16:23:38 +08:00

73 lines
1.3 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
wc_extra_args:
type: string
default: ""
resources:
config:
type: OS::Test::WebAppConfig
properties:
app_port: { get_param: app_port }
wc_curl_cli:
list_join:
- " "
- [ get_attr: [ handle, curl_cli ], get_param: wc_extra_args ]
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 }