config.go: trim trailing slash in ORIGIN and CDN_PREFIX

Fixes https://gitlab.com/commento/commento-ce/issues/59
This commit is contained in:
Adhityaa Chandrasekar 2018-08-08 10:47:20 +05:30
parent 62d8e0b1dd
commit 3ad5128cb9
2 changed files with 19 additions and 0 deletions

View File

@ -62,10 +62,14 @@ func configParse() error {
} }
} }
os.Setenv("ORIGIN", strings.TrimSuffix(os.Getenv("ORIGIN"), "/"))
if os.Getenv("CDN_PREFIX") == "" { if os.Getenv("CDN_PREFIX") == "" {
os.Setenv("CDN_PREFIX", os.Getenv("ORIGIN")) os.Setenv("CDN_PREFIX", os.Getenv("ORIGIN"))
} }
os.Setenv("CDN_PREFIX", strings.TrimSuffix(os.Getenv("ORIGIN"), "/"))
if os.Getenv("FORBID_NEW_OWNERS") != "true" && os.Getenv("FORBID_NEW_OWNERS") != "false" { if os.Getenv("FORBID_NEW_OWNERS") != "true" && os.Getenv("FORBID_NEW_OWNERS") != "false" {
logger.Errorf("COMMENTO_FORBID_NEW_OWNERS neither 'true' nor 'false'") logger.Errorf("COMMENTO_FORBID_NEW_OWNERS neither 'true' nor 'false'")
return errorInvalidConfigValue return errorInvalidConfigValue

View File

@ -110,3 +110,18 @@ func TestConfigParseStaticNotADirectory(t *testing.T) {
return return
} }
} }
func TestConfigOriginTrailingSlash(t *testing.T) {
os.Setenv("COMMENTO_ORIGIN", "https://commento.io/")
os.Setenv("COMMENTO_STATIC", "")
if err := configParse(); err != nil {
t.Errorf("unexpected error when parsing config: %v", err)
return
}
if os.Getenv("ORIGIN") != "https://commento.io" {
t.Errorf("expected ORIGIN=https://commento.io got ORIGIN=%s", os.Getenv("ORIGIN"))
return
}
}