Skip to content

Commit e4a7ace

Browse files
authored
fix: mailer links regression (#5166)
2 parents 893c284 + f6c1529 commit e4a7ace

2 files changed

Lines changed: 11 additions & 9 deletions

File tree

internal/start/start.go

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1283,6 +1283,7 @@ func buildGotrueEnv(dbConfig pgconn.Config) []string {
12831283
if len(utils.Config.Auth.Sms.TestOTP) > 0 {
12841284
formatMapForEnvConfig(utils.Config.Auth.Sms.TestOTP, &testOTP)
12851285
}
1286+
mailerVerifyURL := strings.TrimRight(utils.Config.AuthExternalURL(), "/") + "/verify"
12861287

12871288
return []string{
12881289
"API_EXTERNAL_URL=" + utils.Config.AuthExternalURL(),
@@ -1315,10 +1316,10 @@ func buildGotrueEnv(dbConfig pgconn.Config) []string {
13151316

13161317
fmt.Sprintf("GOTRUE_SMTP_MAX_FREQUENCY=%v", utils.Config.Auth.Email.MaxFrequency),
13171318

1318-
"GOTRUE_MAILER_URLPATHS_INVITE=/verify",
1319-
"GOTRUE_MAILER_URLPATHS_CONFIRMATION=/verify",
1320-
"GOTRUE_MAILER_URLPATHS_RECOVERY=/verify",
1321-
"GOTRUE_MAILER_URLPATHS_EMAIL_CHANGE=/verify",
1319+
"GOTRUE_MAILER_URLPATHS_INVITE=" + mailerVerifyURL,
1320+
"GOTRUE_MAILER_URLPATHS_CONFIRMATION=" + mailerVerifyURL,
1321+
"GOTRUE_MAILER_URLPATHS_RECOVERY=" + mailerVerifyURL,
1322+
"GOTRUE_MAILER_URLPATHS_EMAIL_CHANGE=" + mailerVerifyURL,
13221323
"GOTRUE_RATE_LIMIT_EMAIL_SENT=360000",
13231324

13241325
fmt.Sprintf("GOTRUE_EXTERNAL_PHONE_ENABLED=%v", utils.Config.Auth.Sms.EnableSignup),

internal/start/start_test.go

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -307,7 +307,7 @@ func TestBuildGotrueEnv(t *testing.T) {
307307
utils.Config = original
308308
})
309309

310-
t.Run("uses auth scoped external url and relative mailer paths", func(t *testing.T) {
310+
t.Run("uses auth scoped external url and absolute mailer verify urls", func(t *testing.T) {
311311
utils.Config = config.NewConfig()
312312
utils.Config.Api.ExternalUrl = "http://127.0.0.1:54321"
313313
utils.Config.Auth.ExternalUrl = "http://127.0.0.1:54321/auth/v1"
@@ -328,10 +328,10 @@ func TestBuildGotrueEnv(t *testing.T) {
328328

329329
assert.Equal(t, "http://127.0.0.1:54321/auth/v1", env["API_EXTERNAL_URL"])
330330
assert.Equal(t, "http://127.0.0.1:54321/auth/v1", env["GOTRUE_JWT_ISSUER"])
331-
assert.Equal(t, "/verify", env["GOTRUE_MAILER_URLPATHS_INVITE"])
332-
assert.Equal(t, "/verify", env["GOTRUE_MAILER_URLPATHS_CONFIRMATION"])
333-
assert.Equal(t, "/verify", env["GOTRUE_MAILER_URLPATHS_RECOVERY"])
334-
assert.Equal(t, "/verify", env["GOTRUE_MAILER_URLPATHS_EMAIL_CHANGE"])
331+
assert.Equal(t, "http://127.0.0.1:54321/auth/v1/verify", env["GOTRUE_MAILER_URLPATHS_INVITE"])
332+
assert.Equal(t, "http://127.0.0.1:54321/auth/v1/verify", env["GOTRUE_MAILER_URLPATHS_CONFIRMATION"])
333+
assert.Equal(t, "http://127.0.0.1:54321/auth/v1/verify", env["GOTRUE_MAILER_URLPATHS_RECOVERY"])
334+
assert.Equal(t, "http://127.0.0.1:54321/auth/v1/verify", env["GOTRUE_MAILER_URLPATHS_EMAIL_CHANGE"])
335335
assert.NotContains(t, env, "GOTRUE_EXTERNAL_GITHUB_REDIRECT_URI")
336336
})
337337

@@ -350,6 +350,7 @@ func TestBuildGotrueEnv(t *testing.T) {
350350

351351
assert.Equal(t, "http://127.0.0.1:54321/auth/v1", env["API_EXTERNAL_URL"])
352352
assert.Equal(t, "https://issuer.example.com/auth/v1", env["GOTRUE_JWT_ISSUER"])
353+
assert.Equal(t, "http://127.0.0.1:54321/auth/v1/verify", env["GOTRUE_MAILER_URLPATHS_INVITE"])
353354
assert.Equal(t, "https://example.com/custom/callback", env["GOTRUE_EXTERNAL_AZURE_REDIRECT_URI"])
354355
})
355356
}

0 commit comments

Comments
 (0)