Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
🔍 Overview
This PR introduces a more robust Django database migration strategy for multi-container deployments by separating migrations into a dedicated job. This change addresses potential race conditions that can occur when multiple Django containers attempt to run migrations simultaneously during deployment. This also maintains the support for legacy (self-hosted) deployment migrations.
Docs: phasehq/docs#127
💡 Proposed Changes
EXTERNAL_MIGRATION
: Controls whether migrations are handled externally📝 Release Notes
Added
EXTERNAL_MIGRATION
to control migration behaviorChanged
Migration Steps
EXTERNAL_MIGRATION=true
in environment variables🧪 Testing
🎯 Reviewer Focus
EXTERNAL_MIGRATION
flags works as expected➕ Additional Context
This change is based on Django deployment best practices for handling migrations in containerized environments. It prevents potential database corruption that could occur when multiple containers attempt migrations simultaneously.
✨ How to Test the Changes Locally
💚 Did You...