mirror of
https://github.com/zitadel/zitadel.git
synced 2025-08-11 21:37:32 +00:00
fix: check existing idp (#809)
* fix: logs * Update Dockerfile * Fallback to old Docker file * fix: for loop * fix: for loop * fix: for loop * fix: remove logs * fix: remove logs Co-authored-by: Florian Forster <florian@caos.ch>
This commit is contained in:
@@ -2,7 +2,6 @@ package eventsourcing
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/caos/zitadel/internal/errors"
|
||||
es_models "github.com/caos/zitadel/internal/eventstore/models"
|
||||
"github.com/caos/zitadel/internal/iam/repository/eventsourcing/model"
|
||||
@@ -316,30 +315,44 @@ func checkExistingLoginPolicyIDPProviderValidation(idpConfigID string) func(...*
|
||||
switch event.Type {
|
||||
case model.IDPConfigAdded:
|
||||
config := new(model.IDPConfig)
|
||||
config.SetData(event)
|
||||
err := config.SetData(event)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
idpConfigs = append(idpConfigs, config)
|
||||
case model.IDPConfigRemoved:
|
||||
config := new(model.IDPConfig)
|
||||
config.SetData(event)
|
||||
for i, p := range idpConfigs {
|
||||
if p.IDPConfigID == config.IDPConfigID {
|
||||
err := config.SetData(event)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
for i := len(idpConfigs) - 1; i >= 0; i-- {
|
||||
if idpConfigs[i].IDPConfigID == config.IDPConfigID {
|
||||
idpConfigs[i] = idpConfigs[len(idpConfigs)-1]
|
||||
idpConfigs[len(idpConfigs)-1] = nil
|
||||
idpConfigs = idpConfigs[:len(idpConfigs)-1]
|
||||
break
|
||||
}
|
||||
}
|
||||
case model.LoginPolicyIDPProviderAdded:
|
||||
idp := new(model.IDPProvider)
|
||||
idp.SetData(event)
|
||||
err := idp.SetData(event)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
idps = append(idps, idp)
|
||||
case model.LoginPolicyIDPProviderRemoved:
|
||||
idp := new(model.IDPProvider)
|
||||
idp.SetData(event)
|
||||
for i, p := range idps {
|
||||
if p.IDPConfigID == idp.IDPConfigID {
|
||||
err := idp.SetData(event)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
for i := len(idps) - 1; i >= 0; i-- {
|
||||
if idps[i].IDPConfigID == idp.IDPConfigID {
|
||||
idps[i] = idps[len(idps)-1]
|
||||
idps[len(idps)-1] = nil
|
||||
idps = idps[:len(idps)-1]
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user