fix(docker): separate auth provider enabled from signup settings #363
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.
Correction
Updated to Documentation-Only
After reviewer feedback, this is now a documentation improvement rather than code change.
What Changed
Updated
[auth.email].enable_signupand[auth.sms].enable_signupcomments across all config.toml files to clarify:false= provider disabled (no login/invites/OTP/signup)true= provider enabled (signup requires[auth].enable_signup=true)Issue: supabase#40582
Companion PR: supabase/cli#4469 (CLI fix for the same issue)
Original PR
Fixes supabase#40582
Problem
Email and phone auth providers are incorrectly disabled when
ENABLE_EMAIL_SIGNUP=falseorENABLE_PHONE_SIGNUP=false, breaking invite-only authentication.Current behavior:
ENABLE_EMAIL_SIGNUP→GOTRUE_EXTERNAL_EMAIL_ENABLED(controls if provider exists)falsedisables the entire provider, preventing invites, OTP, and password authImpact:
email_provider_disablederrorSolution
Introduce separate variables for provider existence vs signup control:
ENABLE_EMAIL_PROVIDER→GOTRUE_EXTERNAL_EMAIL_ENABLED(defaults totrue)ENABLE_PHONE_PROVIDER→GOTRUE_EXTERNAL_PHONE_ENABLED(defaults totrue)DISABLE_SIGNUPfor global signup controlChanges
docker-compose.yml: Change env var mapping with backward-compatible defaults.env.example: Add new provider variablesBackward Compatibility
✅ Defaults to
true- existing setups without new variables continue to work✅ No breaking changes
Testing
Verified locally that invite-only setup now works correctly:
.envconfiguration:Result: Users can accept invites and use OTP/magic links while self-signup remains disabled ✅
Companion PR: supabase/cli#4469 (CLI fix for the same issue)
Summary by CodeRabbit
Documentation
New Features
✏️ Tip: You can customize this high-level summary in your review settings.
Test data recreated from supabase#40575
Target state: open