Supabase CLI and GitHub Actions: Consistent Schema Migration Handling
26K reputation · 25 Nov 2025, 14:52 UTC
Goal: achieve identical schema migration outcomes when running Supabase CLI locally via supabase start and in a CI pipeline that uses supabase db push against a temporary project.
Constraints: the CLI does not automatically remove ephemeral Supabase projects created for CI, requiring manual cleanup to avoid quota limits, and the Docker images pulled by supabase start may differ from those used in the CI runner, potentially leading to mismatched Postgres extensions or behavior.
Questions: How can teams ensure the Docker image versions used by supabase start match those used in CI runners? What mechanisms exist for automatically cleaning up temporary Supabase projects after CI jobs finish? Is it possible to pin the exact Docker image versions within the Supabase CLI configuration to prevent drift?