#!/bin/bash set -e set -x function clean { docker-compose stop docker-compose rm -f } function rundb { docker-compose exec db $@ } function runweb { docker-compose run --rm web $@ clean } function initdb { runweb python manage.py migrate runweb 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 rundb dropdb -U fedireads fedireads rundb createdb -U fedireads fedireads initdb clean ;; makemigrations) runweb python manage.py makemigrations ;; migrate) runweb python manage.py migrate ;; shell) runweb python manage.py shell ;; dbshell) rundb psql -U fedireads fedireads ;; restart_celery) docker-compose restart celery_worker ;; test) shift 1 runweb coverage run --source='.' --omit="*/test*,celerywyrm*,bookwyrm/migrations/*" manage.py test "$@" ;; test_report) runweb coverage report ;; collectstatic) runweb python manage.py collectstatic --no-input ;; build) docker-compose build ;; clean) clean ;; *) echo "Unrecognised command. Try: build, clean, up, initdb, resetdb, makemigrations, migrate, shell, dbshell, restart_celery, test, test_report" ;; esac