diff --git a/cloudbuild.yaml b/cloudbuild.yaml index 1a924471..e60d5f0f 100644 --- a/cloudbuild.yaml +++ b/cloudbuild.yaml @@ -25,7 +25,7 @@ steps: '--platform', 'managed', '--allow-unauthenticated', '--add-cloudsql-instances', '${_CLOUDSQL_INSTANCE_CONNECTION_NAME}', - '--update-env-vars', 'SENTRY_ENVIRONMENT=prod,COMPRESS_ENABLED=true,DJANGO_DEBUG=false,USE_DOCKER=yes,DJANGO_READ_DOT_ENV_FILE=False,DJANGO_SETTINGS_MODULE=config.settings.production,DJANGO_SECURE_SSL_REDIRECT=False,WEB_CONCURRENCY=4,DJANGO_EMAIL_SUBJECT_PREFIX=[mle],DJANGO_SESSION_COOKIE_SECURE=True,DJANGO_SESSION_COOKIE_HTTPONLY=True,DJANGO_SECURE_HSTS_INCLUDE_SUBDOMAINS=True,DJANGO_SECURE_SSL_REDIRECT=True,DJANGO_SECURE_BROWSER_XSS_FILTER=True,DJANGO_SECURE_CONTENT_TYPE_NOSNIFF=True,DJANGO_SECURE_FRAME_DENY=True,DJANGO_ACCOUNT_ALLOW_REGISTRATION=${_DJANGO_ACCOUNT_ALLOW_REGISTRATION},DJANGO_GCP_STORAGE_BUCKET_NAME=${_DJANGO_GCP_STORAGE_BUCKET_NAME},SENTRY_DSN=${_SENTRY_DSN},DJANGO_SECRET_KEY=${_DJANGO_SECRET_KEY},DJANGO_ADMIN_URL=${_DJANGO_ADMIN_URL},MAILGUN_API_KEY=${_MAILGUN_API_KEY},MAILGUN_DOMAIN=${_MAILGUN_DOMAIN},MAILGUN_API_URL=${_MAILGUN_API_URL},DJANGO_SERVER_EMAIL=${_DJANGO_SERVER_EMAIL},DJANGO_DEFAULT_FROM_EMAIL=${_DJANGO_DEFAULT_FROM_EMAIL},INSTANCE_CONNECTION_NAME=${_CLOUDSQL_INSTANCE_CONNECTION_NAME}:${COMMIT_SHA},POSTGRES_HOST=${_POSTGRES_HOST},POSTGRES_PORT=${_POSTGRES_PORT},POSTGRES_DB=${_POSTGRES_DB},POSTGRES_USER=${_POSTGRES_USER},POSTGRES_PASSWORD=${_POSTGRES_PASSWORD}' + '--update-env-vars', 'SENTRY_ENVIRONMENT=prod,COMPRESS_ENABLED=true,DJANGO_DEBUG=false,USE_DOCKER=yes,DJANGO_READ_DOT_ENV_FILE=False,DJANGO_SETTINGS_MODULE=config.settings.production,DJANGO_SECURE_SSL_REDIRECT=False,WEB_CONCURRENCY=4,DJANGO_EMAIL_SUBJECT_PREFIX=[mle],DJANGO_SESSION_COOKIE_SECURE=True,DJANGO_SESSION_COOKIE_HTTPONLY=True,DJANGO_SECURE_HSTS_INCLUDE_SUBDOMAINS=True,DJANGO_SECURE_SSL_REDIRECT=True,DJANGO_SECURE_BROWSER_XSS_FILTER=True,DJANGO_SECURE_CONTENT_TYPE_NOSNIFF=True,DJANGO_SECURE_FRAME_DENY=True,DJANGO_ACCOUNT_ALLOW_REGISTRATION=${_DJANGO_ACCOUNT_ALLOW_REGISTRATION},DJANGO_GCP_STORAGE_BUCKET_NAME=${_DJANGO_GCP_STORAGE_BUCKET_NAME},SENTRY_DSN=${_SENTRY_DSN},DJANGO_SECRET_KEY=${_DJANGO_SECRET_KEY},DJANGO_ADMIN_URL=${_DJANGO_ADMIN_URL},MAILGUN_API_KEY=${_MAILGUN_API_KEY},MAILGUN_DOMAIN=${_MAILGUN_DOMAIN},MAILGUN_API_URL=${_MAILGUN_API_URL},DJANGO_SERVER_EMAIL=${_DJANGO_SERVER_EMAIL},DJANGO_DEFAULT_FROM_EMAIL=${_DJANGO_DEFAULT_FROM_EMAIL},INSTANCE_CONNECTION_NAME=${_CLOUDSQL_INSTANCE_CONNECTION_NAME}:${COMMIT_SHA},POSTGRES_HOST=${_POSTGRES_HOST},POSTGRES_PORT=${_POSTGRES_PORT},POSTGRES_DB=${_POSTGRES_DB},POSTGRES_USER=${_POSTGRES_USER},POSTGRES_PASSWORD=${_POSTGRES_PASSWORD},CLOUD_SQL_PROXY_VERSION=${_CLOUD_SQL_PROXY_VERSION}' ] images: diff --git a/entrypoint b/entrypoint index a343f58c..e5a8a327 100644 --- a/entrypoint +++ b/entrypoint @@ -4,10 +4,20 @@ set -o errexit set -o pipefail set -o nounset +# set up Cloud SQL proxy +if [ -z "${CLOUD_SQL_PROXY_VERSION}" ]; then + export CLOUD_SQL_PROXY_VERSION=v1.23.0 # see https://github.com/GoogleCloudPlatform/cloudsql-proxy/releases +fi +wget "https://storage.googleapis.com/cloudsql-proxy/$VERSION/cloud_sql_proxy.linux.amd64" -O cloud_sql_proxy +chmod +x cloud_sql_proxy +cloud_sql_proxy -dir=/cloudsql -instances=$INSTANCE_CONNECTION_NAME & # run in the background! +echo "Created Cloud SQL Proxy at $INSTANCE_CONNECTION_NAME, running in the background" + if [ -z "${POSTGRES_USER}" ]; then base_postgres_image_default_user='postgres' export POSTGRES_USER="${base_postgres_image_default_user}" fi +echo "Set/checked POSTGRES_USER..." # omit the port when running on App Engine, Cloud Run etc if [ -z "${INSTANCE_CONNECTION_NAME}"]; then @@ -46,15 +56,15 @@ until postgres_ready; do done >&2 echo 'PostgreSQL is available' -python /app/manage.py collectstatic --noinput ->&2 echo 'Collected static files...' - python /app/manage.py migrate >&2 echo 'Ran database migrations...' python /app/manage.py createcachetable >&2 echo 'Created the cache table...' +python /app/manage.py collectstatic --noinput +>&2 echo 'Collected static files...' + compress_enabled() { python << END import sys