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
This commit is contained in:
Steve Baker 2015-03-18 16:04:55 +13:00
parent 8e55d1fd6e
commit 5a1c30e4c3
3 changed files with 38 additions and 11 deletions

View File

@ -36,17 +36,14 @@ IntegrationTestGroup = [
default=os.environ.get('OS_REGION_NAME'), default=os.environ.get('OS_REGION_NAME'),
help="The region name to us"), help="The region name to us"),
cfg.StrOpt('instance_type', cfg.StrOpt('instance_type',
default=os.environ.get('HEAT_TEST_INSTANCE_TYPE'),
help="Instance type for tests. Needs to be big enough for a " help="Instance type for tests. Needs to be big enough for a "
"full OS plus the test workload"), "full OS plus the test workload"),
cfg.StrOpt('image_ref', cfg.StrOpt('image_ref',
default=os.environ.get('HEAT_TEST_IMAGE_REF'),
help="Name of image to use for tests which boot servers."), help="Name of image to use for tests which boot servers."),
cfg.StrOpt('keypair_name', cfg.StrOpt('keypair_name',
default=None, default=None,
help="Name of existing keypair to launch servers with."), help="Name of existing keypair to launch servers with."),
cfg.StrOpt('minimal_image_ref', cfg.StrOpt('minimal_image_ref',
default=os.environ.get('HEAT_TEST_MINIMAL_IMAGE_REF'),
help="Name of minimal (e.g cirros) image to use when " help="Name of minimal (e.g cirros) image to use when "
"launching test instances."), "launching test instances."),
cfg.StrOpt('auth_version', cfg.StrOpt('auth_version',

View File

@ -14,14 +14,10 @@
# This script is executed inside post_test_hook function in devstack gate. # This script is executed inside post_test_hook function in devstack gate.
# Register the flavor for booting test servers set -x
export DEST=${DEST:-/opt/stack/new}
source /opt/stack/new/devstack/accrc/admin/admin source /opt/stack/new/devstack/accrc/admin/admin
export HEAT_TEST_INSTANCE_TYPE=m1.heat_int sudo -E $DEST/heat/heat_integrationtests/prepare_test_env.sh
nova flavor-create $HEAT_TEST_INSTANCE_TYPE 452 512 0 1
export HEAT_TEST_IMAGE_REF=Fedora-x86_64-20-20140618-sda
export HEAT_TEST_MINIMAL_IMAGE_REF=cirros-0.3.2-x86_64-uec
source /opt/stack/new/devstack/accrc/demo/demo source /opt/stack/new/devstack/accrc/demo/demo
cd /opt/stack/new/heat
sudo -E tox -eintegration sudo -E tox -eintegration

View File

@ -0,0 +1,34 @@
#!/bin/bash
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
# This script creates required cloud resources and sets test options
# in heat_integrationtests.conf.
# Credentials are required for creating nova flavors and glance images.
set -x
DEST=${DEST:-/opt/stack/new}
source $DEST/devstack/inc/ini-config
cd $DEST/heat/heat_integrationtests
# Register the flavor for booting test servers
iniset heat_integrationtests.conf DEFAULT instance_type m1.heat_int
nova flavor-create m1.heat_int 452 512 0 1
iniset heat_integrationtests.conf DEFAULT image_ref Fedora-x86_64-20-20140618-sda
iniset heat_integrationtests.conf DEFAULT minimal_image_ref cirros-0.3.2-x86_64-uec
cat heat_integrationtests.conf