forked from mirrors/bookwyrm
92 lines
1.8 KiB
Text
92 lines
1.8 KiB
Text
|
#!/bin/bash
|
||
|
|
||
|
# import our ENV variables
|
||
|
source .env
|
||
|
|
||
|
set -e
|
||
|
set -x
|
||
|
|
||
|
function clean {
|
||
|
docker-compose stop
|
||
|
docker-compose rm -f
|
||
|
}
|
||
|
|
||
|
function runweb {
|
||
|
docker-compose run --rm web "$@"
|
||
|
clean
|
||
|
}
|
||
|
|
||
|
function execdb {
|
||
|
docker-compose exec db $@
|
||
|
}
|
||
|
|
||
|
function execweb {
|
||
|
docker-compose exec web "$@"
|
||
|
}
|
||
|
|
||
|
function initdb {
|
||
|
execweb python manage.py migrate
|
||
|
execweb python manage.py initdb
|
||
|
}
|
||
|
|
||
|
case "$1" in
|
||
|
up)
|
||
|
docker-compose up --build
|
||
|
;;
|
||
|
run)
|
||
|
docker-compose run --rm --service-ports web
|
||
|
;;
|
||
|
initdb)
|
||
|
initdb
|
||
|
;;
|
||
|
resetdb)
|
||
|
clean
|
||
|
docker-compose up --build -d
|
||
|
execdb dropdb -U ${POSTGRES_USER} ${POSTGRES_DB}
|
||
|
execdb createdb -U ${POSTGRES_USER} ${POSTGRES_DB}
|
||
|
initdb
|
||
|
clean
|
||
|
;;
|
||
|
makemigrations)
|
||
|
execweb python manage.py makemigrations
|
||
|
;;
|
||
|
migrate)
|
||
|
execweb python manage.py migrate
|
||
|
;;
|
||
|
bash)
|
||
|
execweb bash
|
||
|
;;
|
||
|
shell)
|
||
|
execweb python manage.py shell
|
||
|
;;
|
||
|
dbshell)
|
||
|
execdb psql -U ${POSTGRES_USER} ${POSTGRES_DB}
|
||
|
;;
|
||
|
restart_celery)
|
||
|
docker-compose restart celery_worker
|
||
|
;;
|
||
|
test)
|
||
|
shift 1
|
||
|
execweb coverage run --source='.' --omit="*/test*,celerywyrm*,bookwyrm/migrations/*" manage.py test "$@"
|
||
|
;;
|
||
|
pytest)
|
||
|
shift 1
|
||
|
execweb pytest "$@"
|
||
|
;;
|
||
|
test_report)
|
||
|
execweb coverage report
|
||
|
;;
|
||
|
collectstatic)
|
||
|
execweb python manage.py collectstatic --no-input
|
||
|
;;
|
||
|
build)
|
||
|
docker-compose build
|
||
|
;;
|
||
|
clean)
|
||
|
clean
|
||
|
;;
|
||
|
*)
|
||
|
echo "Unrecognised command. Try: build, clean, up, initdb, resetdb, makemigrations, migrate, bash, shell, dbshell, restart_celery, test, pytest, test_report"
|
||
|
;;
|
||
|
esac
|