From 966e3850ed83a088882d4c7292505f6538de2a71 Mon Sep 17 00:00:00 2001 From: Silvan Date: Thu, 12 Nov 2020 17:01:30 +0100 Subject: [PATCH] fix(changes): decide if human or machine modifier (#953) --- .../repository/eventsourcing/eventstore/user.go | 7 ++++++- .../repository/eventsourcing/eventstore/org.go | 10 ++++++++-- .../repository/eventsourcing/eventstore/project.go | 14 ++++++++++++-- .../repository/eventsourcing/eventstore/user.go | 8 +++++++- .../user/repository/eventsourcing/eventstore.go | 2 +- 5 files changed, 34 insertions(+), 7 deletions(-) diff --git a/internal/auth/repository/eventsourcing/eventstore/user.go b/internal/auth/repository/eventsourcing/eventstore/user.go index d2be7892a..fa116e243 100644 --- a/internal/auth/repository/eventsourcing/eventstore/user.go +++ b/internal/auth/repository/eventsourcing/eventstore/user.go @@ -394,7 +394,12 @@ func (repo *UserRepo) MyUserChanges(ctx context.Context, lastSequence uint64, li change.ModifierName = change.ModifierID user, _ := repo.UserEvents.UserByID(ctx, change.ModifierID) if user != nil { - change.ModifierName = user.DisplayName + if user.Human != nil { + change.ModifierName = user.DisplayName + } + if user.Machine != nil { + change.ModifierName = user.Machine.Name + } } } return changes, nil diff --git a/internal/management/repository/eventsourcing/eventstore/org.go b/internal/management/repository/eventsourcing/eventstore/org.go index b7e564f29..c6c7ab224 100644 --- a/internal/management/repository/eventsourcing/eventstore/org.go +++ b/internal/management/repository/eventsourcing/eventstore/org.go @@ -2,9 +2,10 @@ package eventstore import ( "context" - iam_es "github.com/caos/zitadel/internal/iam/repository/eventsourcing" "strings" + iam_es "github.com/caos/zitadel/internal/iam/repository/eventsourcing" + "github.com/caos/logging" "github.com/caos/zitadel/internal/api/authz" "github.com/caos/zitadel/internal/config/systemdefaults" @@ -166,7 +167,12 @@ func (repo *OrgRepository) OrgChanges(ctx context.Context, id string, lastSequen change.ModifierName = change.ModifierId user, _ := repo.UserEvents.UserByID(ctx, change.ModifierId) if user != nil { - change.ModifierName = user.DisplayName + if user.Human != nil { + change.ModifierName = user.DisplayName + } + if user.Machine != nil { + change.ModifierName = user.Machine.Name + } } } return changes, nil diff --git a/internal/management/repository/eventsourcing/eventstore/project.go b/internal/management/repository/eventsourcing/eventstore/project.go index b79d1ed69..432bee10d 100644 --- a/internal/management/repository/eventsourcing/eventstore/project.go +++ b/internal/management/repository/eventsourcing/eventstore/project.go @@ -299,7 +299,12 @@ func (repo *ProjectRepo) ProjectChanges(ctx context.Context, id string, lastSequ change.ModifierName = change.ModifierId user, _ := repo.UserEvents.UserByID(ctx, change.ModifierId) if user != nil { - change.ModifierName = user.DisplayName + if user.Human != nil { + change.ModifierName = user.DisplayName + } + if user.Machine != nil { + change.ModifierName = user.Machine.Name + } } } return changes, nil @@ -389,7 +394,12 @@ func (repo *ProjectRepo) ApplicationChanges(ctx context.Context, id string, appI change.ModifierName = change.ModifierId user, _ := repo.UserEvents.UserByID(ctx, change.ModifierId) if user != nil { - change.ModifierName = user.DisplayName + if user.Human != nil { + change.ModifierName = user.DisplayName + } + if user.Machine != nil { + change.ModifierName = user.Machine.Name + } } } return changes, nil diff --git a/internal/management/repository/eventsourcing/eventstore/user.go b/internal/management/repository/eventsourcing/eventstore/user.go index 335b8ab02..f35fa09a1 100644 --- a/internal/management/repository/eventsourcing/eventstore/user.go +++ b/internal/management/repository/eventsourcing/eventstore/user.go @@ -2,6 +2,7 @@ package eventstore import ( "context" + es_int "github.com/caos/zitadel/internal/eventstore" es_models "github.com/caos/zitadel/internal/eventstore/models" es_sdk "github.com/caos/zitadel/internal/eventstore/sdk" @@ -184,7 +185,12 @@ func (repo *UserRepo) UserChanges(ctx context.Context, id string, lastSequence u change.ModifierName = change.ModifierID user, _ := repo.UserEvents.UserByID(ctx, change.ModifierID) if user != nil { - change.ModifierName = user.DisplayName + if user.Human != nil { + change.ModifierName = user.DisplayName + } + if user.Machine != nil { + change.ModifierName = user.Machine.Name + } } } return changes, nil diff --git a/internal/user/repository/eventsourcing/eventstore.go b/internal/user/repository/eventsourcing/eventstore.go index 72bb8cbbf..623acc209 100644 --- a/internal/user/repository/eventsourcing/eventstore.go +++ b/internal/user/repository/eventsourcing/eventstore.go @@ -349,7 +349,7 @@ func (es *UserEventstore) RemoveUser(ctx context.Context, id string, orgIamPolic func (es *UserEventstore) UserChanges(ctx context.Context, id string, lastSequence uint64, limit uint64, sortAscending bool) (*usr_model.UserChanges, error) { query := ChangesQuery(id, lastSequence, limit, sortAscending) - events, err := es.Eventstore.FilterEvents(context.Background(), query) + events, err := es.Eventstore.FilterEvents(ctx, query) if err != nil { logging.Log("EVENT-g9HCv").WithError(err).Warn("eventstore unavailable") return nil, errors.ThrowInternal(err, "EVENT-htuG9", "Errors.Internal")