Docker: Improve mariadb init

Signed-off-by: Kevin Morris <kevr@0cost.org>
This commit is contained in:
Kevin Morris 2021-06-29 21:33:47 -07:00
parent 4442ba6703
commit 6c7bb04b93
5 changed files with 39 additions and 30 deletions

View file

@ -1,26 +0,0 @@
#!/bin/bash
mysqld_safe --datadir=/var/lib/mysql --skip-networking &
until mysqladmin ping --silent; do
sleep 1s
done
# Create test database.
mysql -u root -e "CREATE USER 'aur'@'%' IDENTIFIED BY 'aur'" \
2>/dev/null || /bin/true
# Create a brand new 'aurweb_test' DB.
mysql -u root -e "DROP DATABASE aurweb_test" 2>/dev/null || /bin/true
mysql -u root -e "CREATE DATABASE aurweb_test"
mysql -u root -e "GRANT ALL PRIVILEGES ON aurweb_test.* TO 'aur'@'%'"
# Create the 'aurweb' DB if it does not yet exist.
mysql -u root -e "CREATE DATABASE aurweb" 2>/dev/null || /bin/true
mysql -u root -e "GRANT ALL PRIVILEGES ON aurweb.* TO 'aur'@'%'"
mysql -u root -e "FLUSH PRIVILEGES"
# Shutdown mariadb.
mysqladmin -uroot shutdown
exec "$@"

View file

@ -23,7 +23,8 @@ while [ $# -ne 0 ]; do
done
# Initialize the new database; ignore errors.
python -m aurweb.initdb 2>/dev/null || /bin/true
python -m aurweb.initdb 2>/dev/null || \
(echo "Error: aurweb.initdb failed; already initialized?" && /bin/true)
# Run pytest with optional targets in front of it.
make -C test "${PARAMS[@]}" pytest