Move database setup to bifrost

Move openstack_citest database setup from project-config to bifrost.
The code is conditional on running in OpenStack CI - developers can
set up the database with setting ZUUL_BRANCH. This is the same logic
as used elsewhere in bifrost testing.

OpenStack CI will not setup databases anymore in project-config,
this needs to be done by the projects themselves now.

Change-Id: I8485751eda745841c1436ecd766c9bb95446f407
Needed-By: I339d2a301a76ad34ea4bcbfb26c13a21ecd86b6f
This commit is contained in:
Andreas Jaeger 2017-02-17 19:53:55 +01:00
parent 419db33b83
commit afa9951dd9

View File

@ -42,6 +42,41 @@ ENABLE_KEYSTONE=false
CLOUD_CONFIG="" CLOUD_CONFIG=""
WAIT_FOR_DEPLOY=true WAIT_FOR_DEPLOY=true
# This sets up the MySQL database like it's done for all OpenStack
# projects for CI testing.
mysql_setup() {
# The root password for the MySQL database; pass it in via
# MYSQL_ROOT_PW.
local DB_ROOT_PW=${MYSQL_ROOT_PW:-insecure_slave}
# This user and its password are used by the tests, if you change it,
# your tests might fail.
local DB_USER=openstack_citest
local DB_PW=openstack_citest
sudo -H mysqladmin -u root password $DB_ROOT_PW
# It's best practice to remove anonymous users from the database. If
# an anonymous user exists, then it matches first for connections and
# other connections from that host will not work.
sudo -H mysql -u root -p$DB_ROOT_PW -h localhost -e "
DELETE FROM mysql.user WHERE User='';
FLUSH PRIVILEGES;
GRANT ALL PRIVILEGES ON *.*
TO '$DB_USER'@'%' identified by '$DB_PW' WITH GRANT OPTION;"
# Now create our database.
mysql -u $DB_USER -p$DB_PW -h 127.0.0.1 -e "
SET default_storage_engine=MYISAM;
DROP DATABASE IF EXISTS openstack_citest;
CREATE DATABASE openstack_citest CHARACTER SET utf8;"
}
# Setup openstack_citest database if run in OpenStack CI.
if [ "$ZUUL_BRANCH" != "" ] ; then
mysql_setup
fi
# NOTE(cinerama): We could remove this if we change the CI job to use # NOTE(cinerama): We could remove this if we change the CI job to use
# USE_DHCP, BUILD_IMAGE, etc. # USE_DHCP, BUILD_IMAGE, etc.
SOURCE=$(basename ${BASH_SOURCE[0]}) SOURCE=$(basename ${BASH_SOURCE[0]})