mirror of
https://github.com/zitadel/zitadel.git
synced 2025-01-10 17:33:41 +00:00
b89e8a6037
# Which Problems Are Solved setup step 41 cannot handle downgrades at the moment. This step writes the instance domain to the fields table. If there are new instances created during the downgraded version is running there would be domain missing in the fields afterwards. # How the Problems Are Solved Make step 41 repeatable for each version
45 lines
1.1 KiB
Go
45 lines
1.1 KiB
Go
package setup
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/zitadel/zitadel/internal/api/authz"
|
|
"github.com/zitadel/zitadel/internal/eventstore"
|
|
"github.com/zitadel/zitadel/internal/query/projection"
|
|
"github.com/zitadel/zitadel/internal/repository/instance"
|
|
)
|
|
|
|
type FillFieldsForInstanceDomains struct {
|
|
eventstore *eventstore.Eventstore
|
|
}
|
|
|
|
func (mig *FillFieldsForInstanceDomains) Execute(ctx context.Context, _ eventstore.Event) error {
|
|
instances, err := mig.eventstore.InstanceIDs(
|
|
ctx,
|
|
eventstore.NewSearchQueryBuilder(eventstore.ColumnsInstanceIDs).
|
|
OrderDesc().
|
|
AddQuery().
|
|
AggregateTypes("instance").
|
|
EventTypes(instance.InstanceAddedEventType).
|
|
Builder(),
|
|
)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
for _, instance := range instances {
|
|
ctx := authz.WithInstanceID(ctx, instance)
|
|
if err := projection.InstanceDomainFields.Trigger(ctx); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (mig *FillFieldsForInstanceDomains) String() string {
|
|
return "repeatable_fill_fields_for_instance_domains"
|
|
}
|
|
|
|
func (f *FillFieldsForInstanceDomains) Check(lastRun map[string]interface{}) bool {
|
|
return true
|
|
}
|