Added --down option to db.sh to stop database containers without deleting volumes.
This commit is contained in:
parent
8794a8a193
commit
9dca1e8abb
1 changed files with 27 additions and 9 deletions
24
db.sh
24
db.sh
|
|
@ -7,12 +7,13 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||||
cd "$SCRIPT_DIR"
|
cd "$SCRIPT_DIR"
|
||||||
|
|
||||||
usage() {
|
usage() {
|
||||||
echo "Usage: $0 <mysql|mssql> [--clean] [--users]"
|
echo "Usage: $0 <mysql|mssql> [--clean] [--users] [--down]"
|
||||||
echo ""
|
echo ""
|
||||||
echo "Options:"
|
echo "Options:"
|
||||||
echo " mysql|mssql Which database to start"
|
echo " mysql|mssql Which database to start"
|
||||||
echo " --clean Delete volumes and start fresh"
|
echo " --clean Delete volumes and start fresh"
|
||||||
echo " --users Only import test users (database must be running)"
|
echo " --users Only import test users (database must be running)"
|
||||||
|
echo " --down Stop the database container"
|
||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -20,6 +21,7 @@ usage() {
|
||||||
DB=""
|
DB=""
|
||||||
CLEAN=false
|
CLEAN=false
|
||||||
USERS_ONLY=false
|
USERS_ONLY=false
|
||||||
|
DOWN_ONLY=false
|
||||||
|
|
||||||
for arg in "$@"; do
|
for arg in "$@"; do
|
||||||
case $arg in
|
case $arg in
|
||||||
|
|
@ -32,6 +34,9 @@ for arg in "$@"; do
|
||||||
--users)
|
--users)
|
||||||
USERS_ONLY=true
|
USERS_ONLY=true
|
||||||
;;
|
;;
|
||||||
|
--down)
|
||||||
|
DOWN_ONLY=true
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
usage
|
usage
|
||||||
;;
|
;;
|
||||||
|
|
@ -40,6 +45,19 @@ done
|
||||||
|
|
||||||
[ -z "$DB" ] && usage
|
[ -z "$DB" ] && usage
|
||||||
|
|
||||||
|
# Stop container only
|
||||||
|
if [ "$DOWN_ONLY" = true ]; then
|
||||||
|
if [ "$DB" = "mysql" ]; then
|
||||||
|
echo "==> Stopping MySQL..."
|
||||||
|
podman-compose down 2>/dev/null || true
|
||||||
|
elif [ "$DB" = "mssql" ]; then
|
||||||
|
echo "==> Stopping MSSQL..."
|
||||||
|
podman-compose --profile mssql down 2>/dev/null || true
|
||||||
|
fi
|
||||||
|
echo "==> Done!"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
# Import users only
|
# Import users only
|
||||||
if [ "$USERS_ONLY" = true ]; then
|
if [ "$USERS_ONLY" = true ]; then
|
||||||
if [ "$DB" = "mysql" ]; then
|
if [ "$DB" = "mysql" ]; then
|
||||||
|
|
@ -49,14 +67,14 @@ if [ "$USERS_ONLY" = true ]; then
|
||||||
podman exec -i lcc-mysql-local mysql -u"${DB_USER}" -p"${DB_PASS}" lcc \
|
podman exec -i lcc-mysql-local mysql -u"${DB_USER}" -p"${DB_PASS}" lcc \
|
||||||
< src/test/resources/master_data/users.sql
|
< src/test/resources/master_data/users.sql
|
||||||
echo "==> Users imported!"
|
echo "==> Users imported!"
|
||||||
elif [ "$DB" = "mssql" ]; then
|
elif [ "$DB" = "mssql" ]; then
|
||||||
echo "==> Importing users into MSSQL..."
|
echo "==> Importing users into MSSQL..."
|
||||||
DB_PASS=$(grep DB_ROOT_PASSWORD .env.mssql | cut -d= -f2)
|
DB_PASS=$(grep DB_ROOT_PASSWORD .env.mssql | cut -d= -f2)
|
||||||
podman exec -e "SQLCMDPASSWORD=${DB_PASS}" lcc-mssql-local /opt/mssql-tools18/bin/sqlcmd \
|
podman exec -e "SQLCMDPASSWORD=${DB_PASS}" lcc-mssql-local /opt/mssql-tools18/bin/sqlcmd \
|
||||||
-S localhost -U sa -d lcc -C \
|
-S localhost -U sa -d lcc -C \
|
||||||
-i /dev/stdin < src/test/resources/master_data/users_mssql.sql
|
-i /dev/stdin < src/test/resources/master_data/users_mssql.sql
|
||||||
echo "==> Users imported!"
|
echo "==> Users imported!"
|
||||||
fi
|
fi
|
||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue