tree f0034d1766a7dc263e90a21491eb932af21f90ad
parent 457a45475e15d697535a24b205c1ae9c7e415e34
author Steve Baker <sbaker@redhat.com> 1426647895 +1300
committer Steve Baker <sbaker@redhat.com> 1427055753 +1300

iniset heat_integrationtests.conf

This change adds a prepare_test_env.sh script which builds a
heat_integrationtests.conf using the iniset function from devstack.

prepare_test_env.sh can be run locally with appropriate credentials
and a valid $DEST. In the gate post_test_hook.sh runs prepare_test_env.sh
with sudo so it has the required permissions to write
heat_integrationtests.conf.

Instead of adding more environment variables which are used as default
config options, replace those by actually writing out a
heat_integrationtests.conf file with the required values. This was always
the original intention - it just hadn't been done yet.

The exception to this is the sourced auth environment variables which
are very convenient to not have to state explicitly in the config file.

Change-Id: Ibdba20172964cb5c9e33071cf346d7e0315aea6c
