mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-24 16:30:27 +08:00
Runs tests in a Dockerfile with pre-migrated databases and all testing dependencies (postgres, mysql, npm, casper, phantomjs, etc...). Hopefully this makes it easier to run more interesting tests - down the road I would like to add more options for things like condor, slurm, run as real user, etc....
39 lines
1.0 KiB
Bash
39 lines
1.0 KiB
Bash
#!/bin/bash
|
|
set -e
|
|
|
|
MYSQL_USER=galaxy
|
|
MYSQL_PASSWORD=galaxy
|
|
MYSQL_DATABASE=galaxy
|
|
|
|
mkdir -p /var/lib/mysql
|
|
chown -R mysql:mysql /var/lib/mysql
|
|
|
|
# Derived from
|
|
# https://github.com/docker-library/mysql/blob/master/5.7/docker-entrypoint.sh
|
|
|
|
DATADIR="$(mysqld --verbose --help 2>/dev/null | awk '$1 == "datadir" { print $2; exit }')"
|
|
|
|
tempSqlFile='/tmp/mysql-first-time.sql'
|
|
cat > "$tempSqlFile" <<-EOSQL
|
|
DELETE FROM mysql.user ;
|
|
CREATE USER 'root'@'%' IDENTIFIED BY '${MYSQL_ROOT_PASSWORD}' ;
|
|
GRANT ALL ON *.* TO 'root'@'%' WITH GRANT OPTION ;
|
|
DROP DATABASE IF EXISTS test ;
|
|
EOSQL
|
|
|
|
if [ "$MYSQL_DATABASE" ]; then
|
|
echo "CREATE DATABASE IF NOT EXISTS \`$MYSQL_DATABASE\` ;" >> "$tempSqlFile"
|
|
fi
|
|
|
|
if [ "$MYSQL_USER" -a "$MYSQL_PASSWORD" ]; then
|
|
echo "CREATE USER '$MYSQL_USER'@'%' IDENTIFIED BY '$MYSQL_PASSWORD' ;" >> "$tempSqlFile"
|
|
|
|
if [ "$MYSQL_DATABASE" ]; then
|
|
echo "GRANT ALL ON \`$MYSQL_DATABASE\`.* TO '$MYSQL_USER'@'%' ;" >> "$tempSqlFile"
|
|
fi
|
|
fi
|
|
|
|
echo 'FLUSH PRIVILEGES ;' >> "$tempSqlFile"
|
|
|
|
mysqld_safe --init-file="$tempSqlFile" &
|
|
sleep 5 |