ptut-virtenv/metactl/post-start.sh

64 lines
1.6 KiB
Bash

#!/bin/bash
source $(dirname `realpath $0`)/environment.sh;
#############################################
## ##
## Executed after launching containers ##
## ##
#############################################
## [1] Wait for database to be READY
# Restore mariadb database
echo -ne " * mariadb socket..";
docker exec $MARIADB_SERVICE mysql -uroot -p$MARIADB_ROOT_PASSWORD 2>/dev/null;
DB_RESTORED="$?";
# Try until connection OK
while [ "$DB_RESTORED" != "0" ]; do
sleep .5;
echo -ne ".";
docker exec $MARIADB_SERVICE mysql -uroot -p$MARIADB_ROOT_PASSWORD 2>/dev/null;
DB_RESTORED="$?";
done;
echo "ready";
## [1] Restore database
# 1. Check if dump file exists
echo -ne " * Check dump file...........";
test -f $MARIADB_DUMP;
DUMP_FILE_EXISTS="$?";
# 2. Restore database
if [ "$DUMP_FILE_EXISTS" = "0" ]; then
echo "found";
# Restore mariadb database
echo -ne " * Restore database..........";
cat $MARIADB_DUMP | docker exec -i $MARIADB_SERVICE mysql -uroot -p$MARIADB_ROOT_PASSWORD $MARIADB_DATABASE_NAME 2>/dev/null && echo "restored" || echo "failed";
else
ec @echo -n "*** Create trigger.............";
@test ! -d ./virtual/ci && mkdir ./virtual/ci; (exit 0);
@chmod 777 ./virtual/ci; (exit 0);
@touch ./virtual/ci/trigger; echo "done";
@chmod 777 ./virtual/ci/trigger; (exit 0);ho "missing";
# Create 'persistent' directory if missing
test ! -d $ROOT/persistent && mkdir -p $ROOT/persistent;
echo " * Create dump file..........created";
touch $MARIADB_DUMP;
fi;