From 20d8daa11532805538dac36b3df9c467435812e6 Mon Sep 17 00:00:00 2001
From: Eliot Berriot <contact@eliotberriot.com>
Date: Tue, 6 Mar 2018 13:15:53 +0100
Subject: [PATCH] More generic entrypoint to work with non-compose setups

---
 api/compose/django/entrypoint.sh | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/api/compose/django/entrypoint.sh b/api/compose/django/entrypoint.sh
index 7e789968..ac85f116 100755
--- a/api/compose/django/entrypoint.sh
+++ b/api/compose/django/entrypoint.sh
@@ -4,16 +4,19 @@ set -e
 # Since docker-compose relies heavily on environment variables itself for configuration, we'd have to define multiple
 # environment variables just to support cookiecutter out of the box. That makes no sense, so this little entrypoint
 # does all this for us.
-export CACHE_URL=redis://redis:6379/0
+export CACHE_URL=${CACHE_URL:="redis://redis:6379/0"}
 
-# the official postgres image uses 'postgres' as default user if not set explictly.
-if [ -z "$POSTGRES_ENV_POSTGRES_USER" ]; then
+if [ -z "$DATABASE_URL" ]; then
+  # the official postgres image uses 'postgres' as default user if not set explictly.
+  if [ -z "$POSTGRES_ENV_POSTGRES_USER" ]; then
     export POSTGRES_ENV_POSTGRES_USER=postgres
+  fi
+  export DATABASE_URL=postgres://$POSTGRES_ENV_POSTGRES_USER:$POSTGRES_ENV_POSTGRES_PASSWORD@postgres:5432/$POSTGRES_ENV_POSTGRES_USER
 fi
 
-export DATABASE_URL=postgres://$POSTGRES_ENV_POSTGRES_USER:$POSTGRES_ENV_POSTGRES_PASSWORD@postgres:5432/$POSTGRES_ENV_POSTGRES_USER
-
-export CELERY_BROKER_URL=$CACHE_URL
+if [ -z "$CELERY_BROKER_URL" ]; then
+  export CELERY_BROKER_URL=$CACHE_URL
+fi
 
 # we copy the frontend files, if any so we can serve them from the outside
 if [ -d "frontend" ]; then
-- 
GitLab