From e1ca6f649b0e6ec95ce8f4a96136fc2eb23d7ca6 Mon Sep 17 00:00:00 2001 From: Joseph Schorr Date: Fri, 3 Apr 2020 11:34:48 -0400 Subject: [PATCH] Add an option for running Quay without running database migrations (#312) --- conf/init/data_migration.py | 5 +++++ quay-entrypoint.sh | 10 ++++++++++ 2 files changed, 15 insertions(+) diff --git a/conf/init/data_migration.py b/conf/init/data_migration.py index c261138f6..dc2e9da31 100644 --- a/conf/init/data_migration.py +++ b/conf/init/data_migration.py @@ -1,8 +1,13 @@ +import os + from app import app from active_migration import ActiveDataMigration def current_migration(): + if os.getenv("ENSURE_NO_MIGRATION", "").lower() == "true": + raise Exception("Cannot call migration when ENSURE_NO_MIGRATION is true") + if not app.config.get("SETUP_COMPLETE", False): return "head" else: diff --git a/quay-entrypoint.sh b/quay-entrypoint.sh index e66bbe35e..0d68b3c36 100755 --- a/quay-entrypoint.sh +++ b/quay-entrypoint.sh @@ -71,6 +71,16 @@ case "$QUAYENTRY" in echo "Entering repository mirroring mode" export QUAY_SERVICES="${QUAY_SERVICES}${QUAY_SERVICES:+,}repomirrorworker,pushgateway" ;& + "registry-nomigrate") + echo "Running all default registry services without migration" + for f in "${QUAYCONF}"/init/*.sh; do + if [ "$f" != "/quay-registry/conf/init/runmigration.sh" ]; then + echo "Running init script '$f'" + ENSURE_NO_MIGRATION=true "$f" || exit + fi + done + exec supervisord -c "${QUAYCONF}/supervisord.conf" 2>&1 + ;; "registry") if [ -z "${QUAY_SERVICES}" ]; then echo "Running all default registry services"