Wire provider defaults at connector registration time

Compute the OAuth2 redirect URI from the base URL using the
CallbackPath constant and apply provider defaults before
registering each connector.

Signed-off-by: Aurélien Sibiril <81782+aureliensibiril@users.noreply.github.com>
This commit is contained in:
Aurélien Sibiril
2026-04-06 20:21:01 +02:00
parent 152713b7e0
commit a4c15c6fb6

View File

@@ -318,9 +318,13 @@ func (impl *Implm) Run(
return fmt.Errorf("cannot create hashing profile: %w", err)
}
redirectURI := baseURL.WithPath(connector.CallbackPath).MustString()
defaultConnectorRegistry := connector.NewConnectorRegistry()
for _, connector := range impl.cfg.Connectors {
if err := defaultConnectorRegistry.Register(connector.Provider, connector.Config); err != nil {
for _, connectorCfg := range impl.cfg.Connectors {
if oauth2c, ok := connectorCfg.Config.(*connector.OAuth2Connector); ok {
connector.ApplyProviderDefaults(connectorCfg.Provider, redirectURI, oauth2c)
}
if err := defaultConnectorRegistry.Register(connectorCfg.Provider, connectorCfg.Config); err != nil {
return fmt.Errorf("cannot register connector: %w", err)
}
}