From 80fa0bcb4c2edb45ef68e7162751a72226d56c3a Mon Sep 17 00:00:00 2001 From: Tommie Gannert Date: Fri, 27 May 2022 19:30:30 +0200 Subject: [PATCH] Enable SSO in CI. --- cmd/generate-config/main.go | 21 +++++++++++++++++++++ setup/config/config_clientapi.go | 12 +++++++----- 2 files changed, 28 insertions(+), 5 deletions(-) diff --git a/cmd/generate-config/main.go b/cmd/generate-config/main.go index 1c585d916..29695d114 100644 --- a/cmd/generate-config/main.go +++ b/cmd/generate-config/main.go @@ -82,6 +82,27 @@ func main() { if *defaultsForCI { cfg.AppServiceAPI.DisableTLSValidation = true cfg.ClientAPI.RateLimiting.Enabled = false + cfg.ClientAPI.Login.SSO.Enabled = true + cfg.ClientAPI.Login.SSO.Providers = []config.IdentityProvider{ + { + ID: "github", + Name: "Fake GitHub", + OIDC: config.OIDC{ + ClientID: "aclientid", + ClientSecret: "aclientsecret", + }, + }, + { + ID: "google", + Name: "Fake Google", + Type: "oidc", + OIDC: config.OIDC{ + ClientID: "aclientid", + ClientSecret: "aclientsecret", + DiscoveryURL: "https://accounts.google.com/.well-known/openid-configuration", + }, + }, + } cfg.FederationAPI.DisableTLSValidation = false // don't hit matrix.org when running tests!!! cfg.FederationAPI.KeyPerspectives = config.KeyPerspectives{} diff --git a/setup/config/config_clientapi.go b/setup/config/config_clientapi.go index 868732361..9780a2549 100644 --- a/setup/config/config_clientapi.go +++ b/setup/config/config_clientapi.go @@ -180,11 +180,13 @@ type IdentityProvider struct { Type IdentityProviderType `yaml:"type"` // OIDC contains settings for providers based on OpenID Connect (OAuth 2). - OIDC struct { - ClientID string `yaml:"client_id"` - ClientSecret string `yaml:"client_secret"` - DiscoveryURL string `yaml:"discovery_url"` - } `yaml:"oidc"` + OIDC OIDC `yaml:"oidc"` +} + +type OIDC struct { + ClientID string `yaml:"client_id"` + ClientSecret string `yaml:"client_secret"` + DiscoveryURL string `yaml:"discovery_url"` } func (idp *IdentityProvider) Verify(configErrs *ConfigErrors) {