partkeepr

fork of partkeepr
git clone https://git.e1e0.net/partkeepr.git
Log | Files | Refs | Submodules | README | LICENSE

command.sh (878B)


      1 #! /bin/bash
      2 
      3 if [ ! "x$RESET_DATABASE" = "xyes" ]; then
      4 	echo "No reset of database was requested. Skpping."
      5 	exit 0
      6 fi
      7 
      8 if [ -z "$DB_HOST" ]; then
      9 	DB_HOST=db
     10 fi
     11 
     12 if [ -z "$DB_PORT" ]; then
     13 	DB_PORT=3306
     14 fi
     15 
     16 while ! nc -z "$DB_HOST" "$DB_PORT"
     17 do
     18 	echo "sleeping..."
     19 	sleep 1
     20 done
     21 
     22 echo "MySQL server should now be reachable"
     23 
     24 function sql () {
     25 	mysql -u "root" -p"$MYSQL_ROOT_PASSWORD" -h "$DB_HOST" "$@"
     26 }
     27 
     28 echo "Dropping old database tables (housekeeping)"
     29 
     30 echo "DROP DATABASE $MYSQL_DATABASE;" | sql
     31 
     32 echo "CREATE DATABASE $MYSQL_DATABASE;" | sql
     33 echo "GRANT ALL ON $MYSQL_DATABASE.* TO $MYSQL_USER;" | sql
     34 
     35 echo "SHOW TABLES;" | sql "$MYSQL_DATABASE"
     36 
     37 sql "$MYSQL_DATABASE" < /dump.sql
     38 
     39 echo "Dumping completed"
     40 
     41 echo "Resetting data folder"
     42 mkdir /tmp/data
     43 cd /tmp/data
     44 
     45 tar xzf /data.tar.gz
     46 
     47 chown "$GITHUB_DEBUG_UID" -R .
     48 
     49 cp -a . /data
     50 
     51 echo "Data folder was reset"