mirror of
https://github.com/zitadel/zitadel.git
synced 2025-02-28 21:37:24 +00:00
fix: add sentry in ui, http and projection handlers (#1977)
* fix: add sentry in ui, http and projection handlers * fix test
This commit is contained in:
parent
9277928ef7
commit
0e472a347f
@ -40,6 +40,10 @@ const (
|
|||||||
customTextTable = "adminapi.custom_texts"
|
customTextTable = "adminapi.custom_texts"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
func (m *CustomText) Subscription() *v1.Subscription {
|
||||||
|
return m.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (m *CustomText) ViewModel() string {
|
func (m *CustomText) ViewModel() string {
|
||||||
return customTextTable
|
return customTextTable
|
||||||
}
|
}
|
||||||
|
@ -47,6 +47,10 @@ func (p *Features) subscribe() {
|
|||||||
}()
|
}()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *Features) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (p *Features) ViewModel() string {
|
func (p *Features) ViewModel() string {
|
||||||
return featuresTable
|
return featuresTable
|
||||||
}
|
}
|
||||||
|
@ -49,7 +49,6 @@ func (m *IAMMember) subscribe() {
|
|||||||
|
|
||||||
go func() {
|
go func() {
|
||||||
for event := range m.subscription.Events {
|
for event := range m.subscription.Events {
|
||||||
|
|
||||||
query.ReduceEvent(m, event)
|
query.ReduceEvent(m, event)
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
@ -67,6 +66,10 @@ func (m *IAMMember) ViewModel() string {
|
|||||||
return iamMemberTable
|
return iamMemberTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *IAMMember) Subscription() *v1.Subscription {
|
||||||
|
return m.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (m *IAMMember) AggregateTypes() []es_models.AggregateType {
|
func (m *IAMMember) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.IAMAggregate, usr_es_model.UserAggregate}
|
return []es_models.AggregateType{model.IAMAggregate, usr_es_model.UserAggregate}
|
||||||
}
|
}
|
||||||
|
@ -39,6 +39,10 @@ func (i *IDPConfig) subscribe() {
|
|||||||
}()
|
}()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (i *IDPConfig) Subscription() *v1.Subscription {
|
||||||
|
return i.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (i *IDPConfig) ViewModel() string {
|
func (i *IDPConfig) ViewModel() string {
|
||||||
return idpConfigTable
|
return idpConfigTable
|
||||||
}
|
}
|
||||||
|
@ -54,6 +54,10 @@ func (i *IDPProvider) subscribe() {
|
|||||||
}()
|
}()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (i *IDPProvider) Subscription() *v1.Subscription {
|
||||||
|
return i.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (i *IDPProvider) ViewModel() string {
|
func (i *IDPProvider) ViewModel() string {
|
||||||
return idpProviderTable
|
return idpProviderTable
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,10 @@ func (p *LabelPolicy) ViewModel() string {
|
|||||||
return labelPolicyTable
|
return labelPolicyTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *LabelPolicy) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (p *LabelPolicy) AggregateTypes() []es_models.AggregateType {
|
func (p *LabelPolicy) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.IAMAggregate}
|
return []es_models.AggregateType{model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -2,7 +2,9 @@ package handler
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
|
|
||||||
"github.com/caos/logging"
|
"github.com/caos/logging"
|
||||||
|
|
||||||
"github.com/caos/zitadel/internal/domain"
|
"github.com/caos/zitadel/internal/domain"
|
||||||
caos_errs "github.com/caos/zitadel/internal/errors"
|
caos_errs "github.com/caos/zitadel/internal/errors"
|
||||||
"github.com/caos/zitadel/internal/eventstore/v1"
|
"github.com/caos/zitadel/internal/eventstore/v1"
|
||||||
@ -12,7 +14,7 @@ import (
|
|||||||
"github.com/caos/zitadel/internal/iam/repository/eventsourcing"
|
"github.com/caos/zitadel/internal/iam/repository/eventsourcing"
|
||||||
iam_es_model "github.com/caos/zitadel/internal/iam/repository/eventsourcing/model"
|
iam_es_model "github.com/caos/zitadel/internal/iam/repository/eventsourcing/model"
|
||||||
iam_model "github.com/caos/zitadel/internal/iam/repository/view/model"
|
iam_model "github.com/caos/zitadel/internal/iam/repository/view/model"
|
||||||
model "github.com/caos/zitadel/internal/org/repository/eventsourcing/model"
|
"github.com/caos/zitadel/internal/org/repository/eventsourcing/model"
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
@ -47,6 +49,10 @@ func (p *LoginPolicy) ViewModel() string {
|
|||||||
return loginPolicyTable
|
return loginPolicyTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *LoginPolicy) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (p *LoginPolicy) AggregateTypes() []es_models.AggregateType {
|
func (p *LoginPolicy) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{iam_es_model.IAMAggregate, model.OrgAggregate}
|
return []es_models.AggregateType{iam_es_model.IAMAggregate, model.OrgAggregate}
|
||||||
}
|
}
|
||||||
|
@ -44,12 +44,16 @@ func (m *MailTemplate) ViewModel() string {
|
|||||||
return mailTemplateTable
|
return mailTemplateTable
|
||||||
}
|
}
|
||||||
|
|
||||||
func (_ *MailTemplate) AggregateTypes() []es_models.AggregateType {
|
func (m *MailTemplate) Subscription() *v1.Subscription {
|
||||||
|
return m.subscription
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *MailTemplate) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *MailTemplate) CurrentSequence() (uint64, error) {
|
func (m *MailTemplate) CurrentSequence() (uint64, error) {
|
||||||
sequence, err := p.view.GetLatestMailTemplateSequence()
|
sequence, err := m.view.GetLatestMailTemplateSequence()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return 0, err
|
return 0, err
|
||||||
}
|
}
|
||||||
@ -99,6 +103,6 @@ func (m *MailTemplate) OnError(event *es_models.Event, err error) error {
|
|||||||
return spooler.HandleError(event, err, m.view.GetLatestMailTemplateFailedEvent, m.view.ProcessedMailTemplateFailedEvent, m.view.ProcessedMailTemplateSequence, m.errorCountUntilSkip)
|
return spooler.HandleError(event, err, m.view.GetLatestMailTemplateFailedEvent, m.view.ProcessedMailTemplateFailedEvent, m.view.ProcessedMailTemplateSequence, m.errorCountUntilSkip)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (o *MailTemplate) OnSuccess() error {
|
func (m *MailTemplate) OnSuccess() error {
|
||||||
return spooler.HandleSuccess(o.view.UpdateMailTemplateSpoolerRunTimestamp)
|
return spooler.HandleSuccess(m.view.UpdateMailTemplateSpoolerRunTimestamp)
|
||||||
}
|
}
|
||||||
|
@ -2,6 +2,7 @@ package handler
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"github.com/caos/logging"
|
"github.com/caos/logging"
|
||||||
|
|
||||||
caos_errs "github.com/caos/zitadel/internal/errors"
|
caos_errs "github.com/caos/zitadel/internal/errors"
|
||||||
"github.com/caos/zitadel/internal/eventstore/v1"
|
"github.com/caos/zitadel/internal/eventstore/v1"
|
||||||
|
|
||||||
@ -45,6 +46,10 @@ func (m *MessageText) ViewModel() string {
|
|||||||
return mailTextTable
|
return mailTextTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *MessageText) Subscription() *v1.Subscription {
|
||||||
|
return m.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *MessageText) AggregateTypes() []es_models.AggregateType {
|
func (_ *MessageText) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,10 @@ func (o *Org) ViewModel() string {
|
|||||||
return orgTable
|
return orgTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (o *Org) Subscription() *v1.Subscription {
|
||||||
|
return o.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (o *Org) AggregateTypes() []es_models.AggregateType {
|
func (o *Org) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate}
|
return []es_models.AggregateType{model.OrgAggregate}
|
||||||
}
|
}
|
||||||
|
@ -2,6 +2,7 @@ package handler
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"github.com/caos/logging"
|
"github.com/caos/logging"
|
||||||
|
|
||||||
"github.com/caos/zitadel/internal/eventstore/v1"
|
"github.com/caos/zitadel/internal/eventstore/v1"
|
||||||
es_models "github.com/caos/zitadel/internal/eventstore/v1/models"
|
es_models "github.com/caos/zitadel/internal/eventstore/v1/models"
|
||||||
"github.com/caos/zitadel/internal/eventstore/v1/query"
|
"github.com/caos/zitadel/internal/eventstore/v1/query"
|
||||||
@ -43,6 +44,10 @@ func (p *OrgIAMPolicy) ViewModel() string {
|
|||||||
return orgIAMPolicyTable
|
return orgIAMPolicyTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *OrgIAMPolicy) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (p *OrgIAMPolicy) AggregateTypes() []es_models.AggregateType {
|
func (p *OrgIAMPolicy) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -2,6 +2,7 @@ package handler
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"github.com/caos/logging"
|
"github.com/caos/logging"
|
||||||
|
|
||||||
"github.com/caos/zitadel/internal/eventstore/v1"
|
"github.com/caos/zitadel/internal/eventstore/v1"
|
||||||
iam_es_model "github.com/caos/zitadel/internal/iam/repository/eventsourcing/model"
|
iam_es_model "github.com/caos/zitadel/internal/iam/repository/eventsourcing/model"
|
||||||
|
|
||||||
@ -44,6 +45,10 @@ func (p *PasswordAgePolicy) ViewModel() string {
|
|||||||
return passwordAgePolicyTable
|
return passwordAgePolicyTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *PasswordAgePolicy) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (p *PasswordAgePolicy) AggregateTypes() []es_models.AggregateType {
|
func (p *PasswordAgePolicy) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -2,6 +2,7 @@ package handler
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"github.com/caos/logging"
|
"github.com/caos/logging"
|
||||||
|
|
||||||
"github.com/caos/zitadel/internal/eventstore/v1"
|
"github.com/caos/zitadel/internal/eventstore/v1"
|
||||||
iam_es_model "github.com/caos/zitadel/internal/iam/repository/eventsourcing/model"
|
iam_es_model "github.com/caos/zitadel/internal/iam/repository/eventsourcing/model"
|
||||||
|
|
||||||
@ -44,6 +45,10 @@ func (p *PasswordComplexityPolicy) ViewModel() string {
|
|||||||
return passwordComplexityPolicyTable
|
return passwordComplexityPolicyTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *PasswordComplexityPolicy) Subscription() *v1.Subscription {
|
||||||
|
return m.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (p *PasswordComplexityPolicy) AggregateTypes() []es_models.AggregateType {
|
func (p *PasswordComplexityPolicy) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,10 @@ func (p *PasswordLockoutPolicy) ViewModel() string {
|
|||||||
return passwordLockoutPolicyTable
|
return passwordLockoutPolicyTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *PasswordLockoutPolicy) Subscription() *v1.Subscription {
|
||||||
|
return m.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (p *PasswordLockoutPolicy) AggregateTypes() []es_models.AggregateType {
|
func (p *PasswordLockoutPolicy) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,10 @@ func (p *PrivacyPolicy) ViewModel() string {
|
|||||||
return privacyPolicyTable
|
return privacyPolicyTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *PrivacyPolicy) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (p *PrivacyPolicy) AggregateTypes() []es_models.AggregateType {
|
func (p *PrivacyPolicy) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -63,6 +63,10 @@ func (m *Styling) ViewModel() string {
|
|||||||
return stylingTable
|
return stylingTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *Styling) Subscription() *v1.Subscription {
|
||||||
|
return m.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *Styling) AggregateTypes() []es_models.AggregateType {
|
func (_ *Styling) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -60,6 +60,10 @@ func (u *User) ViewModel() string {
|
|||||||
return userTable
|
return userTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (u *User) Subscription() *v1.Subscription {
|
||||||
|
return u.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (u *User) AggregateTypes() []es_models.AggregateType {
|
func (u *User) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{es_model.UserAggregate, org_es_model.OrgAggregate}
|
return []es_models.AggregateType{es_model.UserAggregate, org_es_model.OrgAggregate}
|
||||||
}
|
}
|
||||||
|
@ -59,6 +59,10 @@ func (i *ExternalIDP) ViewModel() string {
|
|||||||
return externalIDPTable
|
return externalIDPTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (i *ExternalIDP) Subscription() *v1.Subscription {
|
||||||
|
return i.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (i *ExternalIDP) AggregateTypes() []es_models.AggregateType {
|
func (i *ExternalIDP) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.UserAggregate, iam_es_model.IAMAggregate, org_es_model.OrgAggregate}
|
return []es_models.AggregateType{model.UserAggregate, iam_es_model.IAMAggregate, org_es_model.OrgAggregate}
|
||||||
}
|
}
|
||||||
|
@ -8,6 +8,7 @@ import (
|
|||||||
"github.com/caos/zitadel/internal/telemetry/metrics"
|
"github.com/caos/zitadel/internal/telemetry/metrics"
|
||||||
"github.com/caos/zitadel/internal/telemetry/metrics/otel"
|
"github.com/caos/zitadel/internal/telemetry/metrics/otel"
|
||||||
view_model "github.com/caos/zitadel/internal/view/model"
|
view_model "github.com/caos/zitadel/internal/view/model"
|
||||||
|
sentryhttp "github.com/getsentry/sentry-go/http"
|
||||||
"go.opentelemetry.io/otel/api/metric"
|
"go.opentelemetry.io/otel/api/metric"
|
||||||
"net/http"
|
"net/http"
|
||||||
|
|
||||||
@ -78,7 +79,8 @@ func (a *API) RegisterServer(ctx context.Context, server server.Server) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (a *API) RegisterHandler(prefix string, handler http.Handler) {
|
func (a *API) RegisterHandler(prefix string, handler http.Handler) {
|
||||||
a.gatewayHandler.RegisterHandler(prefix, handler)
|
sentryHandler := sentryhttp.New(sentryhttp.Options{})
|
||||||
|
a.gatewayHandler.RegisterHandler(prefix, sentryHandler.Handle(handler))
|
||||||
}
|
}
|
||||||
|
|
||||||
func (a *API) Start(ctx context.Context) {
|
func (a *API) Start(ctx context.Context) {
|
||||||
|
@ -49,6 +49,10 @@ func (a *Application) ViewModel() string {
|
|||||||
return applicationTable
|
return applicationTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (a *Application) Subscription() *v1.Subscription {
|
||||||
|
return a.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *Application) AggregateTypes() []models.AggregateType {
|
func (_ *Application) AggregateTypes() []models.AggregateType {
|
||||||
return []models.AggregateType{es_model.ProjectAggregate}
|
return []models.AggregateType{es_model.ProjectAggregate}
|
||||||
}
|
}
|
||||||
|
@ -46,6 +46,10 @@ func (k *AuthNKeys) ViewModel() string {
|
|||||||
return authnKeysTable
|
return authnKeysTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (k *AuthNKeys) Subscription() *v1.Subscription {
|
||||||
|
return k.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *AuthNKeys) AggregateTypes() []es_models.AggregateType {
|
func (_ *AuthNKeys) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{user_model.UserAggregate, proj_model.ProjectAggregate}
|
return []es_models.AggregateType{user_model.UserAggregate, proj_model.ProjectAggregate}
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,10 @@ func (m *CustomText) ViewModel() string {
|
|||||||
return customTextTable
|
return customTextTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *CustomText) Subscription() *v1.Subscription {
|
||||||
|
return m.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *CustomText) AggregateTypes() []es_models.AggregateType {
|
func (_ *CustomText) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -51,6 +51,10 @@ func (p *Features) ViewModel() string {
|
|||||||
return featuresTable
|
return featuresTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *Features) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (p *Features) AggregateTypes() []es_models.AggregateType {
|
func (p *Features) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{iam_es_model.IAMAggregate, org_es_model.OrgAggregate}
|
return []es_models.AggregateType{iam_es_model.IAMAggregate, org_es_model.OrgAggregate}
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,10 @@ func (i *IDPConfig) ViewModel() string {
|
|||||||
return idpConfigTable
|
return idpConfigTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (i *IDPConfig) Subscription() *v1.Subscription {
|
||||||
|
return i.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *IDPConfig) AggregateTypes() []es_models.AggregateType {
|
func (_ *IDPConfig) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -59,6 +59,10 @@ func (i *IDPProvider) ViewModel() string {
|
|||||||
return idpProviderTable
|
return idpProviderTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (i *IDPProvider) Subscription() *v1.Subscription {
|
||||||
|
return i.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *IDPProvider) AggregateTypes() []es_models.AggregateType {
|
func (_ *IDPProvider) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.IAMAggregate, org_es_model.OrgAggregate}
|
return []es_models.AggregateType{model.IAMAggregate, org_es_model.OrgAggregate}
|
||||||
}
|
}
|
||||||
|
@ -49,6 +49,10 @@ func (k *Key) ViewModel() string {
|
|||||||
return keyTable
|
return keyTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (k *Key) Subscription() *v1.Subscription {
|
||||||
|
return k.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *Key) AggregateTypes() []models.AggregateType {
|
func (_ *Key) AggregateTypes() []models.AggregateType {
|
||||||
return []models.AggregateType{es_model.KeyPairAggregate}
|
return []models.AggregateType{es_model.KeyPairAggregate}
|
||||||
}
|
}
|
||||||
|
@ -46,6 +46,10 @@ func (m *LabelPolicy) ViewModel() string {
|
|||||||
return labelPolicyTable
|
return labelPolicyTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *LabelPolicy) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *LabelPolicy) AggregateTypes() []models.AggregateType {
|
func (_ *LabelPolicy) AggregateTypes() []models.AggregateType {
|
||||||
return []models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -48,6 +48,10 @@ func (p *LoginPolicy) ViewModel() string {
|
|||||||
return loginPolicyTable
|
return loginPolicyTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *LoginPolicy) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *LoginPolicy) AggregateTypes() []es_models.AggregateType {
|
func (_ *LoginPolicy) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,10 @@ func (o *Org) ViewModel() string {
|
|||||||
return orgTable
|
return orgTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (o *Org) Subscription() *v1.Subscription {
|
||||||
|
return o.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *Org) AggregateTypes() []es_models.AggregateType {
|
func (_ *Org) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate}
|
return []es_models.AggregateType{model.OrgAggregate}
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,10 @@ func (p *OrgIAMPolicy) ViewModel() string {
|
|||||||
return orgIAMPolicyTable
|
return orgIAMPolicyTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *OrgIAMPolicy) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *OrgIAMPolicy) AggregateTypes() []es_models.AggregateType {
|
func (_ *OrgIAMPolicy) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{org_es_model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{org_es_model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,10 @@ func (p *PasswordComplexityPolicy) ViewModel() string {
|
|||||||
return passwordComplexityPolicyTable
|
return passwordComplexityPolicyTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *PasswordComplexityPolicy) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *PasswordComplexityPolicy) AggregateTypes() []es_models.AggregateType {
|
func (_ *PasswordComplexityPolicy) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{org_es_model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{org_es_model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,10 @@ func (p *PrivacyPolicy) ViewModel() string {
|
|||||||
return privacyPolicyTable
|
return privacyPolicyTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *PrivacyPolicy) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (p *PrivacyPolicy) AggregateTypes() []es_models.AggregateType {
|
func (p *PrivacyPolicy) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -46,6 +46,10 @@ func (p *ProjectRole) ViewModel() string {
|
|||||||
return projectRoleTable
|
return projectRoleTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *ProjectRole) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *ProjectRole) AggregateTypes() []es_models.AggregateType {
|
func (_ *ProjectRole) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.ProjectAggregate}
|
return []es_models.AggregateType{model.ProjectAggregate}
|
||||||
}
|
}
|
||||||
|
@ -51,6 +51,10 @@ func (t *RefreshToken) ViewModel() string {
|
|||||||
return refreshTokenTable
|
return refreshTokenTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (t *RefreshToken) Subscription() *v1.Subscription {
|
||||||
|
return t.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (t *RefreshToken) AggregateTypes() []es_models.AggregateType {
|
func (t *RefreshToken) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{user_es_model.UserAggregate, project_es_model.ProjectAggregate}
|
return []es_models.AggregateType{user_es_model.UserAggregate, project_es_model.ProjectAggregate}
|
||||||
}
|
}
|
||||||
|
@ -53,6 +53,10 @@ func (t *Token) ViewModel() string {
|
|||||||
return tokenTable
|
return tokenTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (t *Token) Subscription() *v1.Subscription {
|
||||||
|
return t.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *Token) AggregateTypes() []es_models.AggregateType {
|
func (_ *Token) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{user_es_model.UserAggregate, project_es_model.ProjectAggregate}
|
return []es_models.AggregateType{user_es_model.UserAggregate, project_es_model.ProjectAggregate}
|
||||||
}
|
}
|
||||||
|
@ -57,6 +57,9 @@ func (u *User) ViewModel() string {
|
|||||||
return userTable
|
return userTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (u *User) Subscription() *v1.Subscription {
|
||||||
|
return u.subscription
|
||||||
|
}
|
||||||
func (_ *User) AggregateTypes() []es_models.AggregateType {
|
func (_ *User) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{es_model.UserAggregate, org_es_model.OrgAggregate}
|
return []es_models.AggregateType{es_model.UserAggregate, org_es_model.OrgAggregate}
|
||||||
}
|
}
|
||||||
|
@ -59,6 +59,10 @@ func (i *ExternalIDP) ViewModel() string {
|
|||||||
return externalIDPTable
|
return externalIDPTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (i *ExternalIDP) Subscription() *v1.Subscription {
|
||||||
|
return i.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *ExternalIDP) AggregateTypes() []es_models.AggregateType {
|
func (_ *ExternalIDP) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.UserAggregate, iam_es_model.IAMAggregate, org_es_model.OrgAggregate}
|
return []es_models.AggregateType{model.UserAggregate, iam_es_model.IAMAggregate, org_es_model.OrgAggregate}
|
||||||
}
|
}
|
||||||
|
@ -71,6 +71,10 @@ func (u *UserGrant) ViewModel() string {
|
|||||||
return userGrantTable
|
return userGrantTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (u *UserGrant) Subscription() *v1.Subscription {
|
||||||
|
return u.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *UserGrant) AggregateTypes() []es_models.AggregateType {
|
func (_ *UserGrant) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{grant_es_model.UserGrantAggregate, iam_es_model.IAMAggregate, org_es_model.OrgAggregate, usr_es_model.UserAggregate, proj_es_model.ProjectAggregate}
|
return []es_models.AggregateType{grant_es_model.UserGrantAggregate, iam_es_model.IAMAggregate, org_es_model.OrgAggregate, usr_es_model.UserAggregate, proj_es_model.ProjectAggregate}
|
||||||
}
|
}
|
||||||
|
@ -57,6 +57,10 @@ func (m *UserMembership) ViewModel() string {
|
|||||||
return userMembershipTable
|
return userMembershipTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *UserMembership) Subscription() *v1.Subscription {
|
||||||
|
return m.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *UserMembership) AggregateTypes() []es_models.AggregateType {
|
func (_ *UserMembership) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{iam_es_model.IAMAggregate, org_es_model.OrgAggregate, proj_es_model.ProjectAggregate, model.UserAggregate}
|
return []es_models.AggregateType{iam_es_model.IAMAggregate, org_es_model.OrgAggregate, proj_es_model.ProjectAggregate, model.UserAggregate}
|
||||||
}
|
}
|
||||||
|
@ -47,6 +47,10 @@ func (u *UserSession) ViewModel() string {
|
|||||||
return userSessionTable
|
return userSessionTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (u *UserSession) Subscription() *v1.Subscription {
|
||||||
|
return u.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *UserSession) AggregateTypes() []models.AggregateType {
|
func (_ *UserSession) AggregateTypes() []models.AggregateType {
|
||||||
return []models.AggregateType{es_model.UserAggregate}
|
return []models.AggregateType{es_model.UserAggregate}
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,10 @@ func (a *Application) ViewModel() string {
|
|||||||
return applicationTable
|
return applicationTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *Application) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (a *Application) AggregateTypes() []models.AggregateType {
|
func (a *Application) AggregateTypes() []models.AggregateType {
|
||||||
return []models.AggregateType{es_model.ProjectAggregate}
|
return []models.AggregateType{es_model.ProjectAggregate}
|
||||||
}
|
}
|
||||||
|
@ -51,6 +51,10 @@ func (p *Features) ViewModel() string {
|
|||||||
return featuresTable
|
return featuresTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *Features) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (p *Features) AggregateTypes() []es_models.AggregateType {
|
func (p *Features) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{iam_es_model.IAMAggregate, org_es_model.OrgAggregate}
|
return []es_models.AggregateType{iam_es_model.IAMAggregate, org_es_model.OrgAggregate}
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,10 @@ func (o *Org) ViewModel() string {
|
|||||||
return orgTable
|
return orgTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (o *Org) Subscription() *v1.Subscription {
|
||||||
|
return o.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *Org) AggregateTypes() []es_models.AggregateType {
|
func (_ *Org) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate}
|
return []es_models.AggregateType{model.OrgAggregate}
|
||||||
}
|
}
|
||||||
|
@ -60,6 +60,10 @@ func (u *UserGrant) ViewModel() string {
|
|||||||
return userGrantTable
|
return userGrantTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (u *UserGrant) Subscription() *v1.Subscription {
|
||||||
|
return u.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *UserGrant) AggregateTypes() []es_models.AggregateType {
|
func (_ *UserGrant) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{iam_es_model.IAMAggregate, org_es_model.OrgAggregate, proj_es_model.ProjectAggregate}
|
return []es_models.AggregateType{iam_es_model.IAMAggregate, org_es_model.OrgAggregate, proj_es_model.ProjectAggregate}
|
||||||
}
|
}
|
||||||
|
@ -57,6 +57,10 @@ func (m *UserMembership) ViewModel() string {
|
|||||||
return userMembershipTable
|
return userMembershipTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *UserMembership) Subscription() *v1.Subscription {
|
||||||
|
return m.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *UserMembership) AggregateTypes() []es_models.AggregateType {
|
func (_ *UserMembership) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{iam_es_model.IAMAggregate, org_es_model.OrgAggregate, proj_es_model.ProjectAggregate, model.UserAggregate}
|
return []es_models.AggregateType{iam_es_model.IAMAggregate, org_es_model.OrgAggregate, proj_es_model.ProjectAggregate, model.UserAggregate}
|
||||||
}
|
}
|
||||||
|
@ -2,9 +2,12 @@ package query
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
"github.com/caos/zitadel/internal/eventstore/v1"
|
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
|
"github.com/getsentry/sentry-go"
|
||||||
|
|
||||||
|
"github.com/caos/zitadel/internal/eventstore/v1"
|
||||||
|
|
||||||
"github.com/caos/logging"
|
"github.com/caos/logging"
|
||||||
|
|
||||||
"github.com/caos/zitadel/internal/eventstore/v1/models"
|
"github.com/caos/zitadel/internal/eventstore/v1/models"
|
||||||
@ -27,9 +30,19 @@ type Handler interface {
|
|||||||
AggregateTypes() []models.AggregateType
|
AggregateTypes() []models.AggregateType
|
||||||
CurrentSequence() (uint64, error)
|
CurrentSequence() (uint64, error)
|
||||||
Eventstore() v1.Eventstore
|
Eventstore() v1.Eventstore
|
||||||
|
|
||||||
|
Subscription() *v1.Subscription
|
||||||
}
|
}
|
||||||
|
|
||||||
func ReduceEvent(handler Handler, event *models.Event) {
|
func ReduceEvent(handler Handler, event *models.Event) {
|
||||||
|
defer func() {
|
||||||
|
err := recover()
|
||||||
|
|
||||||
|
if err != nil {
|
||||||
|
sentry.CurrentHub().Recover(err)
|
||||||
|
handler.Subscription().Unsubscribe()
|
||||||
|
}
|
||||||
|
}()
|
||||||
currentSequence, err := handler.CurrentSequence()
|
currentSequence, err := handler.CurrentSequence()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logging.Log("HANDL-BmpkC").WithError(err).Warn("unable to get current sequence")
|
logging.Log("HANDL-BmpkC").WithError(err).Warn("unable to get current sequence")
|
||||||
|
@ -2,6 +2,9 @@ package spooler
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
|
|
||||||
|
"github.com/getsentry/sentry-go"
|
||||||
|
|
||||||
"github.com/caos/zitadel/internal/eventstore/v1"
|
"github.com/caos/zitadel/internal/eventstore/v1"
|
||||||
"strconv"
|
"strconv"
|
||||||
"sync"
|
"sync"
|
||||||
@ -64,7 +67,14 @@ func requeueTask(task *spooledHandler, queue chan<- *spooledHandler) {
|
|||||||
|
|
||||||
func (s *spooledHandler) load(workerID string) {
|
func (s *spooledHandler) load(workerID string) {
|
||||||
errs := make(chan error)
|
errs := make(chan error)
|
||||||
defer close(errs)
|
defer func() {
|
||||||
|
close(errs)
|
||||||
|
err := recover()
|
||||||
|
|
||||||
|
if err != nil {
|
||||||
|
sentry.CurrentHub().Recover(err)
|
||||||
|
}
|
||||||
|
}()
|
||||||
ctx, cancel := context.WithCancel(context.Background())
|
ctx, cancel := context.WithCancel(context.Background())
|
||||||
go s.awaitError(cancel, errs, workerID)
|
go s.awaitError(cancel, errs, workerID)
|
||||||
hasLocked := s.lock(ctx, errs, workerID)
|
hasLocked := s.lock(ctx, errs, workerID)
|
||||||
|
@ -42,6 +42,10 @@ func (h *testHandler) ViewModel() string {
|
|||||||
return h.viewModel
|
return h.viewModel
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (h *testHandler) Subscription() *v1.Subscription {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
func (h *testHandler) EventQuery() (*models.SearchQuery, error) {
|
func (h *testHandler) EventQuery() (*models.SearchQuery, error) {
|
||||||
if h.queryError != nil {
|
if h.queryError != nil {
|
||||||
return nil, h.queryError
|
return nil, h.queryError
|
||||||
|
@ -51,6 +51,10 @@ func (a *Application) ViewModel() string {
|
|||||||
return applicationTable
|
return applicationTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (a *Application) Subscription() *v1.Subscription {
|
||||||
|
return a.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *Application) AggregateTypes() []models.AggregateType {
|
func (_ *Application) AggregateTypes() []models.AggregateType {
|
||||||
return []models.AggregateType{es_model.ProjectAggregate}
|
return []models.AggregateType{es_model.ProjectAggregate}
|
||||||
}
|
}
|
||||||
|
@ -46,6 +46,10 @@ func (k *AuthNKeys) ViewModel() string {
|
|||||||
return authnKeysTable
|
return authnKeysTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (k *AuthNKeys) Subscription() *v1.Subscription {
|
||||||
|
return k.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *AuthNKeys) AggregateTypes() []es_models.AggregateType {
|
func (_ *AuthNKeys) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{user_model.UserAggregate, proj_model.ProjectAggregate}
|
return []es_models.AggregateType{user_model.UserAggregate, proj_model.ProjectAggregate}
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,10 @@ func (m *CustomText) ViewModel() string {
|
|||||||
return customTextTable
|
return customTextTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *CustomText) Subscription() *v1.Subscription {
|
||||||
|
return m.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *CustomText) AggregateTypes() []es_models.AggregateType {
|
func (_ *CustomText) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -51,6 +51,10 @@ func (p *Features) ViewModel() string {
|
|||||||
return featuresTable
|
return featuresTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *Features) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (p *Features) AggregateTypes() []es_models.AggregateType {
|
func (p *Features) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{iam_es_model.IAMAggregate, org_es_model.OrgAggregate}
|
return []es_models.AggregateType{iam_es_model.IAMAggregate, org_es_model.OrgAggregate}
|
||||||
}
|
}
|
||||||
|
@ -45,6 +45,10 @@ func (m *IDPConfig) ViewModel() string {
|
|||||||
return idpConfigTable
|
return idpConfigTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *IDPConfig) Subscription() *v1.Subscription {
|
||||||
|
return m.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *IDPConfig) AggregateTypes() []es_models.AggregateType {
|
func (_ *IDPConfig) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -57,6 +57,10 @@ func (m *IDPProvider) ViewModel() string {
|
|||||||
return idpProviderTable
|
return idpProviderTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *IDPProvider) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *IDPProvider) AggregateTypes() []es_models.AggregateType {
|
func (_ *IDPProvider) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.IAMAggregate, org_es_model.OrgAggregate}
|
return []es_models.AggregateType{model.IAMAggregate, org_es_model.OrgAggregate}
|
||||||
}
|
}
|
||||||
|
@ -50,6 +50,10 @@ func (m *LabelPolicy) ViewModel() string {
|
|||||||
return labelPolicyTable
|
return labelPolicyTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *LabelPolicy) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *LabelPolicy) AggregateTypes() []es_models.AggregateType {
|
func (_ *LabelPolicy) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -47,6 +47,10 @@ func (m *LoginPolicy) ViewModel() string {
|
|||||||
return loginPolicyTable
|
return loginPolicyTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *LoginPolicy) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *LoginPolicy) AggregateTypes() []es_models.AggregateType {
|
func (_ *LoginPolicy) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,10 @@ func (m *MailTemplate) ViewModel() string {
|
|||||||
return mailTemplateTable
|
return mailTemplateTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *MailTemplate) Subscription() *v1.Subscription {
|
||||||
|
return m.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *MailTemplate) AggregateTypes() []es_models.AggregateType {
|
func (_ *MailTemplate) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,10 @@ func (m *MessageText) ViewModel() string {
|
|||||||
return messageTextTable
|
return messageTextTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *MessageText) Subscription() *v1.Subscription {
|
||||||
|
return m.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *MessageText) AggregateTypes() []es_models.AggregateType {
|
func (_ *MessageText) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,10 @@ func (o *Org) ViewModel() string {
|
|||||||
return orgTable
|
return orgTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (o *Org) Subscription() *v1.Subscription {
|
||||||
|
return o.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *Org) AggregateTypes() []es_models.AggregateType {
|
func (_ *Org) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate}
|
return []es_models.AggregateType{model.OrgAggregate}
|
||||||
}
|
}
|
||||||
|
@ -42,6 +42,10 @@ func (d *OrgDomain) ViewModel() string {
|
|||||||
return orgDomainTable
|
return orgDomainTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (d *OrgDomain) Subscription() *v1.Subscription {
|
||||||
|
return d.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *OrgDomain) AggregateTypes() []es_models.AggregateType {
|
func (_ *OrgDomain) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate}
|
return []es_models.AggregateType{model.OrgAggregate}
|
||||||
}
|
}
|
||||||
|
@ -43,6 +43,10 @@ func (m *OrgIAMPolicy) ViewModel() string {
|
|||||||
return orgIAMPolicyTable
|
return orgIAMPolicyTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *OrgIAMPolicy) Subscription() *v1.Subscription {
|
||||||
|
return m.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *OrgIAMPolicy) AggregateTypes() []es_models.AggregateType {
|
func (_ *OrgIAMPolicy) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -58,6 +58,10 @@ func (m *OrgMember) ViewModel() string {
|
|||||||
return orgMemberTable
|
return orgMemberTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *OrgMember) Subscription() *v1.Subscription {
|
||||||
|
return m.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *OrgMember) AggregateTypes() []es_models.AggregateType {
|
func (_ *OrgMember) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate, usr_es_model.UserAggregate}
|
return []es_models.AggregateType{model.OrgAggregate, usr_es_model.UserAggregate}
|
||||||
}
|
}
|
||||||
|
@ -43,6 +43,10 @@ func (m *PasswordAgePolicy) ViewModel() string {
|
|||||||
return passwordAgePolicyTable
|
return passwordAgePolicyTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *PasswordAgePolicy) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *PasswordAgePolicy) AggregateTypes() []es_models.AggregateType {
|
func (_ *PasswordAgePolicy) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -43,6 +43,10 @@ func (p *PasswordComplexityPolicy) ViewModel() string {
|
|||||||
return passwordComplexityPolicyTable
|
return passwordComplexityPolicyTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *PasswordComplexityPolicy) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *PasswordComplexityPolicy) AggregateTypes() []es_models.AggregateType {
|
func (_ *PasswordComplexityPolicy) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,10 @@ func (p *PasswordLockoutPolicy) ViewModel() string {
|
|||||||
return passwordLockoutPolicyTable
|
return passwordLockoutPolicyTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *PasswordLockoutPolicy) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *PasswordLockoutPolicy) AggregateTypes() []es_models.AggregateType {
|
func (_ *PasswordLockoutPolicy) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,10 @@ func (p *PrivacyPolicy) ViewModel() string {
|
|||||||
return privacyPolicyTable
|
return privacyPolicyTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *PrivacyPolicy) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (p *PrivacyPolicy) AggregateTypes() []es_models.AggregateType {
|
func (p *PrivacyPolicy) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
return []es_models.AggregateType{model.OrgAggregate, iam_es_model.IAMAggregate}
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,10 @@ func (p *Project) ViewModel() string {
|
|||||||
return projectTable
|
return projectTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *Project) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *Project) AggregateTypes() []models.AggregateType {
|
func (_ *Project) AggregateTypes() []models.AggregateType {
|
||||||
return []models.AggregateType{es_model.ProjectAggregate}
|
return []models.AggregateType{es_model.ProjectAggregate}
|
||||||
}
|
}
|
||||||
|
@ -54,6 +54,10 @@ func (p *ProjectGrant) ViewModel() string {
|
|||||||
return grantedProjectTable
|
return grantedProjectTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *ProjectGrant) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *ProjectGrant) AggregateTypes() []models.AggregateType {
|
func (_ *ProjectGrant) AggregateTypes() []models.AggregateType {
|
||||||
return []models.AggregateType{es_model.ProjectAggregate}
|
return []models.AggregateType{es_model.ProjectAggregate}
|
||||||
}
|
}
|
||||||
|
@ -61,6 +61,10 @@ func (p *ProjectGrantMember) ViewModel() string {
|
|||||||
return projectGrantMemberTable
|
return projectGrantMemberTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *ProjectGrantMember) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *ProjectGrantMember) AggregateTypes() []es_models.AggregateType {
|
func (_ *ProjectGrantMember) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{proj_es_model.ProjectAggregate, usr_es_model.UserAggregate}
|
return []es_models.AggregateType{proj_es_model.ProjectAggregate, usr_es_model.UserAggregate}
|
||||||
}
|
}
|
||||||
|
@ -61,6 +61,10 @@ func (p *ProjectMember) ViewModel() string {
|
|||||||
return projectMemberTable
|
return projectMemberTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *ProjectMember) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *ProjectMember) AggregateTypes() []es_models.AggregateType {
|
func (_ *ProjectMember) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{proj_es_model.ProjectAggregate, usr_es_model.UserAggregate}
|
return []es_models.AggregateType{proj_es_model.ProjectAggregate, usr_es_model.UserAggregate}
|
||||||
}
|
}
|
||||||
|
@ -46,6 +46,10 @@ func (p *ProjectRole) ViewModel() string {
|
|||||||
return projectRoleTable
|
return projectRoleTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *ProjectRole) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *ProjectRole) AggregateTypes() []models.AggregateType {
|
func (_ *ProjectRole) AggregateTypes() []models.AggregateType {
|
||||||
return []models.AggregateType{es_model.ProjectAggregate}
|
return []models.AggregateType{es_model.ProjectAggregate}
|
||||||
}
|
}
|
||||||
|
@ -57,6 +57,10 @@ func (u *User) ViewModel() string {
|
|||||||
return userTable
|
return userTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (u *User) Subscription() *v1.Subscription {
|
||||||
|
return u.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *User) AggregateTypes() []es_models.AggregateType {
|
func (_ *User) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{es_model.UserAggregate, org_es_model.OrgAggregate}
|
return []es_models.AggregateType{es_model.UserAggregate, org_es_model.OrgAggregate}
|
||||||
}
|
}
|
||||||
|
@ -61,6 +61,10 @@ func (i *ExternalIDP) ViewModel() string {
|
|||||||
return externalIDPTable
|
return externalIDPTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (i *ExternalIDP) Subscription() *v1.Subscription {
|
||||||
|
return i.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *ExternalIDP) AggregateTypes() []es_models.AggregateType {
|
func (_ *ExternalIDP) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{model.UserAggregate, iam_es_model.IAMAggregate, org_es_model.OrgAggregate}
|
return []es_models.AggregateType{model.UserAggregate, iam_es_model.IAMAggregate, org_es_model.OrgAggregate}
|
||||||
}
|
}
|
||||||
|
@ -58,6 +58,10 @@ func (u *UserGrant) ViewModel() string {
|
|||||||
return userGrantTable
|
return userGrantTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (u *UserGrant) Subscription() *v1.Subscription {
|
||||||
|
return u.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *UserGrant) AggregateTypes() []es_models.AggregateType {
|
func (_ *UserGrant) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{grant_es_model.UserGrantAggregate, usr_es_model.UserAggregate, proj_es_model.ProjectAggregate, org_es_model.OrgAggregate}
|
return []es_models.AggregateType{grant_es_model.UserGrantAggregate, usr_es_model.UserAggregate, proj_es_model.ProjectAggregate, org_es_model.OrgAggregate}
|
||||||
}
|
}
|
||||||
|
@ -56,6 +56,10 @@ func (m *UserMembership) ViewModel() string {
|
|||||||
return userMembershipTable
|
return userMembershipTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *UserMembership) Subscription() *v1.Subscription {
|
||||||
|
return m.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *UserMembership) AggregateTypes() []es_models.AggregateType {
|
func (_ *UserMembership) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{iam_es_model.IAMAggregate, org_es_model.OrgAggregate, proj_es_model.ProjectAggregate, model.UserAggregate}
|
return []es_models.AggregateType{iam_es_model.IAMAggregate, org_es_model.OrgAggregate, proj_es_model.ProjectAggregate, model.UserAggregate}
|
||||||
}
|
}
|
||||||
|
@ -92,6 +92,10 @@ func (n *Notification) ViewModel() string {
|
|||||||
return notificationTable
|
return notificationTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (n *Notification) Subscription() *v1.Subscription {
|
||||||
|
return n.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *Notification) AggregateTypes() []models.AggregateType {
|
func (_ *Notification) AggregateTypes() []models.AggregateType {
|
||||||
return []models.AggregateType{es_model.UserAggregate}
|
return []models.AggregateType{es_model.UserAggregate}
|
||||||
}
|
}
|
||||||
|
@ -60,6 +60,10 @@ func (p *NotifyUser) ViewModel() string {
|
|||||||
return userTable
|
return userTable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *NotifyUser) Subscription() *v1.Subscription {
|
||||||
|
return p.subscription
|
||||||
|
}
|
||||||
|
|
||||||
func (_ *NotifyUser) AggregateTypes() []es_models.AggregateType {
|
func (_ *NotifyUser) AggregateTypes() []es_models.AggregateType {
|
||||||
return []es_models.AggregateType{es_model.UserAggregate, org_es_model.OrgAggregate}
|
return []es_models.AggregateType{es_model.UserAggregate, org_es_model.OrgAggregate}
|
||||||
}
|
}
|
||||||
|
@ -4,6 +4,8 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
"net/http"
|
"net/http"
|
||||||
|
|
||||||
|
sentryhttp "github.com/getsentry/sentry-go/http"
|
||||||
|
|
||||||
http_util "github.com/caos/zitadel/internal/api/http"
|
http_util "github.com/caos/zitadel/internal/api/http"
|
||||||
"github.com/caos/zitadel/internal/ui/console"
|
"github.com/caos/zitadel/internal/ui/console"
|
||||||
"github.com/caos/zitadel/internal/ui/login"
|
"github.com/caos/zitadel/internal/ui/login"
|
||||||
@ -32,7 +34,8 @@ func Create(config Config) *UI {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (u *UI) RegisterHandler(prefix string, handler http.Handler) {
|
func (u *UI) RegisterHandler(prefix string, handler http.Handler) {
|
||||||
http_util.RegisterHandler(u.mux, prefix, handler)
|
sentryHandler := sentryhttp.New(sentryhttp.Options{})
|
||||||
|
http_util.RegisterHandler(u.mux, prefix, sentryHandler.Handle(handler))
|
||||||
}
|
}
|
||||||
|
|
||||||
func (u *UI) Start(ctx context.Context) {
|
func (u *UI) Start(ctx context.Context) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user