From 4b87b8c971726e073654e12fd1a5c71b38d6ffc1 Mon Sep 17 00:00:00 2001 From: Aryan Srivastava <118872531+distroaryan@users.noreply.github.com> Date: Tue, 12 May 2026 04:01:16 +0530 Subject: [PATCH] fix: add automated db migrations to docker-compose using an outpost-migrate service (#898) * fix: add automated db migrations to docker-compose using an outpost-migrate service * chore:changed the name of migration service from 'outpost-migrate' to 'migrate' and added the service in awssqs compose file. Cleaned up some of the trailing whitespaces as well --- examples/docker-compose/compose-awssqs.yml | 9 +++++++++ examples/docker-compose/compose-postgres.yml | 6 ++++++ examples/docker-compose/compose-rabbitmq.yml | 6 ++++++ examples/docker-compose/compose.yml | 15 +++++++++++++++ 4 files changed, 36 insertions(+) diff --git a/examples/docker-compose/compose-awssqs.yml b/examples/docker-compose/compose-awssqs.yml index e65246743..aa7710052 100644 --- a/examples/docker-compose/compose-awssqs.yml +++ b/examples/docker-compose/compose-awssqs.yml @@ -12,6 +12,15 @@ services: timeout: 1s retries: 30 + migrate: + depends_on: + aws: + condition: service_healthy + environment: + - AWS_SQS_ENDPOINT=http://aws:4566 + - AWS_SQS_REGION=us-east-1 + - AWS_SQS_ACCESS_KEY_ID=test + - AWS_SQS_SECRET_ACCESS_KEY=test api: depends_on: aws: diff --git a/examples/docker-compose/compose-postgres.yml b/examples/docker-compose/compose-postgres.yml index b558f9cf5..6f38d587b 100644 --- a/examples/docker-compose/compose-postgres.yml +++ b/examples/docker-compose/compose-postgres.yml @@ -15,6 +15,12 @@ services: timeout: 1s retries: 30 + migrate: + depends_on: + postgres: + condition: service_healthy + environment: + - POSTGRES_URL=postgres://outpost:outpost@postgres:5432/outpost?sslmode=disable api: depends_on: postgres: diff --git a/examples/docker-compose/compose-rabbitmq.yml b/examples/docker-compose/compose-rabbitmq.yml index 731223435..e39a6c924 100644 --- a/examples/docker-compose/compose-rabbitmq.yml +++ b/examples/docker-compose/compose-rabbitmq.yml @@ -12,6 +12,12 @@ services: timeout: 1s retries: 30 + migrate: + depends_on: + rabbitmq: + condition: service_healthy + environment: + - "RABBITMQ_SERVER_URL=amqp://guest:guest@rabbitmq:5672" api: depends_on: rabbitmq: diff --git a/examples/docker-compose/compose.yml b/examples/docker-compose/compose.yml index dfd2d4905..b48e55835 100644 --- a/examples/docker-compose/compose.yml +++ b/examples/docker-compose/compose.yml @@ -1,9 +1,20 @@ name: outpost-example services: + migrate: + image: hookdeck/outpost:v1.0.2 + command: migrate apply --yes + env_file: .env + depends_on: + redis: + condition: service_started + restart: "no" + api: image: hookdeck/outpost:v1.0.2 env_file: .env depends_on: + migrate: + condition: service_completed_successfully redis: condition: service_started volumes: @@ -17,6 +28,8 @@ services: image: hookdeck/outpost:v1.0.2 env_file: .env depends_on: + migrate: + condition: service_completed_successfully redis: condition: service_started volumes: @@ -28,6 +41,8 @@ services: image: hookdeck/outpost:v1.0.2 env_file: .env depends_on: + migrate: + condition: service_completed_successfully redis: condition: service_started volumes: