From cb12b31ff8dd36c431ce9a768b2ccb1cb46b16e6 Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Mon, 23 Sep 2024 19:47:00 +0200 Subject: [PATCH] Expose option to skip database migrations (ENABLE_DATABASE_MIGRATIONS) --- .../services/configuration/configuration.service.ts | 1 + .../src/services/interfaces/environment.interface.ts | 1 + docker/entrypoint.sh | 12 ++++++++---- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/apps/api/src/services/configuration/configuration.service.ts b/apps/api/src/services/configuration/configuration.service.ts index cca393a2a..b995ef6d1 100644 --- a/apps/api/src/services/configuration/configuration.service.ts +++ b/apps/api/src/services/configuration/configuration.service.ts @@ -34,6 +34,7 @@ export class ConfigurationService { DATA_SOURCES: json({ default: [DataSource.COINGECKO, DataSource.MANUAL, DataSource.YAHOO] }), + ENABLE_DATABASE_MIGRATIONS: bool({ default: true }), ENABLE_FEATURE_FEAR_AND_GREED_INDEX: bool({ default: false }), ENABLE_FEATURE_READ_ONLY_MODE: bool({ default: false }), ENABLE_FEATURE_SOCIAL_LOGIN: bool({ default: false }), diff --git a/apps/api/src/services/interfaces/environment.interface.ts b/apps/api/src/services/interfaces/environment.interface.ts index d07937787..28a0da7c7 100644 --- a/apps/api/src/services/interfaces/environment.interface.ts +++ b/apps/api/src/services/interfaces/environment.interface.ts @@ -15,6 +15,7 @@ export interface Environment extends CleanedEnvAccessors { DATA_SOURCE_EXCHANGE_RATES: string; DATA_SOURCE_IMPORT: string; DATA_SOURCES: string[]; + ENABLE_DATABASE_MIGRATIONS: boolean; ENABLE_FEATURE_FEAR_AND_GREED_INDEX: boolean; ENABLE_FEATURE_READ_ONLY_MODE: boolean; ENABLE_FEATURE_SOCIAL_LOGIN: boolean; diff --git a/docker/entrypoint.sh b/docker/entrypoint.sh index 71cf6f2dc..824d8b068 100755 --- a/docker/entrypoint.sh +++ b/docker/entrypoint.sh @@ -2,11 +2,15 @@ set -ex -echo "Running database migrations" -npx prisma migrate deploy +if [ "$ENABLE_DATABASE_MIGRATIONS" = "false" ]; then + echo "Skipping database migrations and seeding" +else + echo "Running database migrations" + npx prisma migrate deploy -echo "Seeding the database" -npx prisma db seed + echo "Seeding the database" + npx prisma db seed +fi echo "Starting the server" node main