fix: smtp provider (#8610)

There were some problems after changing from SMTP providers to email
providers (https://github.com/zitadel/zitadel/pull/8545):
- panic (nil pointer) on SMTP provider retrieval for HTTP configs
- old SMTP configuration created before the multi SMTP configurations
(without id)
  - were not projected / listed
  - could not be always be activated
- Console treated HTTP configs as SMTP

---------

Co-authored-by: Livio Spring <livio.a@gmail.com>
This commit is contained in:
Stefan Benz
2024-09-13 15:22:25 +02:00
committed by GitHub
parent 3d87220180
commit 289378713e
8 changed files with 132 additions and 60 deletions

View File

@@ -20,17 +20,20 @@ func listSMTPConfigsToModel(req *admin_pb.ListSMTPConfigsRequest) (*query.SMTPCo
}
func SMTPConfigToProviderPb(config *query.SMTPConfig) *settings_pb.SMTPConfig {
return &settings_pb.SMTPConfig{
Details: object.ToViewDetailsPb(config.Sequence, config.CreationDate, config.ChangeDate, config.ResourceOwner),
Id: config.ID,
Description: config.Description,
Tls: config.SMTPConfig.TLS,
Host: config.SMTPConfig.Host,
User: config.SMTPConfig.User,
State: SMTPConfigStateToPb(config.State),
SenderAddress: config.SMTPConfig.SenderAddress,
SenderName: config.SMTPConfig.SenderName,
ret := &settings_pb.SMTPConfig{
Details: object.ToViewDetailsPb(config.Sequence, config.CreationDate, config.ChangeDate, config.ResourceOwner),
Id: config.ID,
Description: config.Description,
State: SMTPConfigStateToPb(config.State),
}
if config.SMTPConfig != nil {
ret.Tls = config.SMTPConfig.TLS
ret.Host = config.SMTPConfig.Host
ret.User = config.SMTPConfig.User
ret.SenderAddress = config.SMTPConfig.SenderAddress
ret.SenderName = config.SMTPConfig.SenderName
}
return ret
}
func SMTPConfigsToPb(configs []*query.SMTPConfig) []*settings_pb.SMTPConfig {