mirror of
https://github.com/hasura/graphql-engine.git
synced 2024-12-15 09:22:43 +03:00
47 lines
1.4 KiB
Plaintext
47 lines
1.4 KiB
Plaintext
|
### This file is not meant to be run directly, but to be sourced from
|
||
|
### the dev script. It defines all the functions required to run an
|
||
|
### MSSQL docker container.
|
||
|
|
||
|
|
||
|
######################
|
||
|
# Configuration #
|
||
|
######################
|
||
|
|
||
|
if [ "$MODE" = "test" ]; then
|
||
|
MSSQL_PORT=31433
|
||
|
else
|
||
|
MSSQL_PORT=21433
|
||
|
fi
|
||
|
|
||
|
MSSQL_PASSWORD=hasuraMSSQL1
|
||
|
MSSQL_CONTAINER_NAME="hasura-dev-mssql-$MSSQL_PORT"
|
||
|
MSSQL_DB_URL="DRIVER={ODBC Driver 17 for SQL Server};SERVER=127.0.0.1,$MSSQL_PORT;Uid=sa;Pwd=$MSSQL_PASSWORD;"
|
||
|
MSSQL_DOCKER="docker exec -it $MSSQL_CONTAINER_NAME /opt/mssql-tools/bin/sqlcmd -S localhost -U sa -P $MSSQL_PASSWORD"
|
||
|
|
||
|
|
||
|
######################
|
||
|
# Functions #
|
||
|
######################
|
||
|
|
||
|
function mssql_launch_container(){
|
||
|
echo_pretty "Launching MSSQL container: $MSSQL_CONTAINER_NAME"
|
||
|
docker run --name $MSSQL_CONTAINER_NAME -e 'ACCEPT_EULA=Y' -e "SA_PASSWORD=$MSSQL_PASSWORD" \
|
||
|
-p 127.0.0.1:"$MSSQL_PORT":1433 -d mcr.microsoft.com/mssql/server:2019-CU8-ubuntu-16.04
|
||
|
}
|
||
|
|
||
|
function mssql_wait {
|
||
|
echo -n "Waiting for mssql to come up"
|
||
|
until ( $MSSQL_DOCKER -Q 'SELECT 1' ) &>/dev/null; do
|
||
|
echo -n '.' && sleep 0.2
|
||
|
done
|
||
|
echo " Ok"
|
||
|
}
|
||
|
|
||
|
function mssql_cleanup(){
|
||
|
echo_pretty "Removing $MSSQL_CONTAINER_NAME and its volumes in 5 seconds!"
|
||
|
echo_pretty " PRESS CTRL-C TO ABORT removal of all containers, or ENTER to clean up right away"
|
||
|
read -t5 || true
|
||
|
docker stop "$MSSQL_CONTAINER_NAME"
|
||
|
docker rm -v "$MSSQL_CONTAINER_NAME"
|
||
|
}
|