Files
prowler/docker-entrypoint.sh
T
Víctor Fernández Poyatos c3346ff605 fix(Docker): #PRWLR-4781 fix docker environment issues and celery worker container connection (#37)
* build(Dockerfile): PRWLR-4781 remove versions from dockerfile deps

* fix(Docker): PRWLR-4781 fix celery worker container and apply dev fixtures by default

* build(docker-compose): PRWLR-4781 set default django settings to production in worker service
2024-09-09 09:52:06 -04:00

52 lines
1.0 KiB
Bash
Executable File

#!/bin/sh
apply_migrations() {
echo "Applying database migrations..."
poetry run python manage.py migrate --database admin
}
apply_fixtures() {
echo "Applying Django fixtures..."
for fixture in api/fixtures/*.json; do
if [ -f "$fixture" ]; then
echo "Loading $fixture"
poetry run python manage.py loaddata "$fixture" --database admin
fi
done
}
start_dev_server() {
echo "Starting the development server..."
poetry run python manage.py runserver 0.0.0.0:"${DJANGO_PORT:-8080}"
}
start_prod_server() {
echo "Starting the Gunicorn server..."
poetry run gunicorn -c config/guniconf.py config.wsgi:application
}
start_worker() {
echo "Starting the worker..."
poetry run python -m celery -A config.celery worker -l "${DJANGO_LOGGING_LEVEL:-info}" -E
}
case "$1" in
dev)
apply_migrations
apply_fixtures
start_dev_server
;;
prod)
apply_migrations
start_prod_server
;;
worker)
start_worker
;;
*)
echo "Usage: $0 {dev|prod|worker}"
exit 1
;;
esac