feat: project view (#90)

* init for views (spooler, handler)

* init for views (spooler, handler)

* start view in management

* granted project

* implement granted project view

* search granted projects

* fix search column

* update all projects on project change

* search roles

* filter org

* project members

* project grant members

* fix tests

* application view

* project grant search

* mock

* test appendevents

* test appendevents

* Update internal/view/query.go

Co-authored-by: Livio Amstutz <livio.a@gmail.com>

* Update internal/eventstore/spooler/spooler.go

Co-authored-by: Livio Amstutz <livio.a@gmail.com>

* Update internal/view/query.go

Co-authored-by: Livio Amstutz <livio.a@gmail.com>

* merge request changes

* Update internal/project/repository/view/model/application.go

Co-authored-by: Livio Amstutz <livio.a@gmail.com>

* merge request changes

* Project view sql (#92)

* sql and configs

* error handling

* sql start in eventstore

* on error handling, config

* read user on members

* Update internal/project/repository/view/application_view.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update internal/project/repository/view/model/application.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update internal/project/repository/view/model/application.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update internal/project/repository/view/model/application.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update internal/project/repository/view/model/application.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update internal/project/repository/view/model/application.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update internal/project/repository/view/model/application_query.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update pkg/management/api/grpc/project_grant_converter.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update pkg/management/api/grpc/project_grant_member_converter.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update pkg/management/api/grpc/project_grant_member_converter.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update pkg/management/api/grpc/project_member_converter.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update pkg/management/api/grpc/project_member_converter.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update internal/project/repository/view/model/granted_project.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* return caos errors

* Update internal/project/repository/view/model/granted_project_query.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update internal/project/repository/view/model/project_grant_member.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update internal/project/repository/view/model/project_grant_member_query.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update internal/project/repository/view/model/project_member.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update internal/project/repository/view/model/project_member_query.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update internal/project/repository/view/model/project_role.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update internal/project/repository/view/model/project_role_query.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update pkg/management/api/grpc/application_converter.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update pkg/management/api/grpc/application_converter.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update pkg/management/api/grpc/project_converter.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update pkg/management/api/grpc/project_converter.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update pkg/management/api/grpc/project_converter.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* Update pkg/management/api/grpc/project_converter.go

Co-authored-by: Silvan <silvan.reusser@gmail.com>

* converter fix

Co-authored-by: Livio Amstutz <livio.a@gmail.com>
Co-authored-by: Silvan <silvan.reusser@gmail.com>
This commit is contained in:
Fabi
2020-05-11 12:16:29 +02:00
committed by GitHub
parent 49d86fdabb
commit 6e105f662e
92 changed files with 8354 additions and 3423 deletions

View File

@@ -6,7 +6,6 @@ import (
"github.com/caos/zitadel/internal/errors"
"github.com/caos/zitadel/internal/eventstore/models"
es_models "github.com/caos/zitadel/internal/eventstore/models"
proj_model "github.com/caos/zitadel/internal/project/model"
"github.com/caos/zitadel/internal/project/repository/eventsourcing/model"
)
@@ -20,7 +19,7 @@ func ProjectByIDQuery(id string, latestSequence uint64) (*es_models.SearchQuery,
func ProjectQuery(latestSequence uint64) *es_models.SearchQuery {
return es_models.NewSearchQuery().
AggregateTypeFilter(proj_model.ProjectAggregate).
AggregateTypeFilter(model.ProjectAggregate).
LatestSequenceFilter(latestSequence)
}
@@ -28,7 +27,7 @@ func ProjectAggregate(ctx context.Context, aggCreator *es_models.AggregateCreato
if project == nil {
return nil, errors.ThrowPreconditionFailed(nil, "EVENT-doe93", "existing project should not be nil")
}
return aggCreator.NewAggregate(ctx, project.AggregateID, proj_model.ProjectAggregate, model.ProjectVersion, project.Sequence)
return aggCreator.NewAggregate(ctx, project.AggregateID, model.ProjectAggregate, model.ProjectVersion, project.Sequence)
}
func ProjectCreateAggregate(aggCreator *es_models.AggregateCreator, project *model.Project) func(ctx context.Context) (*es_models.Aggregate, error) {
@@ -42,7 +41,7 @@ func ProjectCreateAggregate(aggCreator *es_models.AggregateCreator, project *mod
return nil, err
}
return agg.AppendEvent(proj_model.ProjectAdded, project)
return agg.AppendEvent(model.ProjectAdded, project)
}
}
@@ -56,16 +55,16 @@ func ProjectUpdateAggregate(aggCreator *es_models.AggregateCreator, existing *mo
return nil, err
}
changes := existing.Changes(new)
return agg.AppendEvent(proj_model.ProjectChanged, changes)
return agg.AppendEvent(model.ProjectChanged, changes)
}
}
func ProjectDeactivateAggregate(aggCreator *es_models.AggregateCreator, project *model.Project) func(ctx context.Context) (*es_models.Aggregate, error) {
return projectStateAggregate(aggCreator, project, proj_model.ProjectDeactivated)
return projectStateAggregate(aggCreator, project, model.ProjectDeactivated)
}
func ProjectReactivateAggregate(aggCreator *es_models.AggregateCreator, project *model.Project) func(ctx context.Context) (*es_models.Aggregate, error) {
return projectStateAggregate(aggCreator, project, proj_model.ProjectReactivated)
return projectStateAggregate(aggCreator, project, model.ProjectReactivated)
}
func projectStateAggregate(aggCreator *es_models.AggregateCreator, project *model.Project, state models.EventType) func(ctx context.Context) (*es_models.Aggregate, error) {
@@ -87,7 +86,7 @@ func ProjectMemberAddedAggregate(aggCreator *es_models.AggregateCreator, existin
if err != nil {
return nil, err
}
return agg.AppendEvent(proj_model.ProjectMemberAdded, member)
return agg.AppendEvent(model.ProjectMemberAdded, member)
}
}
@@ -101,7 +100,7 @@ func ProjectMemberChangedAggregate(aggCreator *es_models.AggregateCreator, exist
if err != nil {
return nil, err
}
return agg.AppendEvent(proj_model.ProjectMemberChanged, member)
return agg.AppendEvent(model.ProjectMemberChanged, member)
}
}
@@ -114,7 +113,7 @@ func ProjectMemberRemovedAggregate(aggCreator *es_models.AggregateCreator, exist
if err != nil {
return nil, err
}
return agg.AppendEvent(proj_model.ProjectMemberRemoved, member)
return agg.AppendEvent(model.ProjectMemberRemoved, member)
}
}
@@ -127,7 +126,7 @@ func ProjectRoleAddedAggregate(aggCreator *es_models.AggregateCreator, existing
if err != nil {
return nil, err
}
return agg.AppendEvent(proj_model.ProjectRoleAdded, role)
return agg.AppendEvent(model.ProjectRoleAdded, role)
}
}
@@ -140,7 +139,7 @@ func ProjectRoleChangedAggregate(aggCreator *es_models.AggregateCreator, existin
if err != nil {
return nil, err
}
return agg.AppendEvent(proj_model.ProjectRoleChanged, role)
return agg.AppendEvent(model.ProjectRoleChanged, role)
}
}
@@ -153,7 +152,7 @@ func ProjectRoleRemovedAggregate(aggCreator *es_models.AggregateCreator, existin
if err != nil {
return nil, err
}
return agg.AppendEvent(proj_model.ProjectRoleRemoved, role)
return agg.AppendEvent(model.ProjectRoleRemoved, role)
}
}
@@ -166,9 +165,9 @@ func ApplicationAddedAggregate(aggCreator *es_models.AggregateCreator, existing
if err != nil {
return nil, err
}
agg.AppendEvent(proj_model.ApplicationAdded, app)
agg.AppendEvent(model.ApplicationAdded, app)
if app.OIDCConfig != nil {
agg.AppendEvent(proj_model.OIDCConfigAdded, app.OIDCConfig)
agg.AppendEvent(model.OIDCConfigAdded, app.OIDCConfig)
}
return agg, nil
}
@@ -189,7 +188,7 @@ func ApplicationChangedAggregate(aggCreator *es_models.AggregateCreator, existin
changes = a.Changes(app)
}
}
agg.AppendEvent(proj_model.ApplicationChanged, changes)
agg.AppendEvent(model.ApplicationChanged, changes)
return agg, nil
}
@@ -204,7 +203,7 @@ func ApplicationRemovedAggregate(aggCreator *es_models.AggregateCreator, existin
if err != nil {
return nil, err
}
agg.AppendEvent(proj_model.ApplicationRemoved, &model.ApplicationID{AppID: app.AppID})
agg.AppendEvent(model.ApplicationRemoved, &model.ApplicationID{AppID: app.AppID})
return agg, nil
}
@@ -219,7 +218,7 @@ func ApplicationDeactivatedAggregate(aggCreator *es_models.AggregateCreator, exi
if err != nil {
return nil, err
}
agg.AppendEvent(proj_model.ApplicationDeactivated, &model.ApplicationID{AppID: app.AppID})
agg.AppendEvent(model.ApplicationDeactivated, &model.ApplicationID{AppID: app.AppID})
return agg, nil
}
@@ -234,7 +233,7 @@ func ApplicationReactivatedAggregate(aggCreator *es_models.AggregateCreator, exi
if err != nil {
return nil, err
}
agg.AppendEvent(proj_model.ApplicationReactivated, &model.ApplicationID{AppID: app.AppID})
agg.AppendEvent(model.ApplicationReactivated, &model.ApplicationID{AppID: app.AppID})
return agg, nil
}
@@ -257,7 +256,7 @@ func OIDCConfigChangedAggregate(aggCreator *es_models.AggregateCreator, existing
}
}
}
agg.AppendEvent(proj_model.OIDCConfigChanged, changes)
agg.AppendEvent(model.OIDCConfigChanged, changes)
return agg, nil
}
@@ -273,7 +272,7 @@ func OIDCConfigSecretChangedAggregate(aggCreator *es_models.AggregateCreator, ex
changes["appId"] = appID
changes["clientSecret"] = secret
agg.AppendEvent(proj_model.OIDCConfigSecretChanged, changes)
agg.AppendEvent(model.OIDCConfigSecretChanged, changes)
return agg, nil
}
@@ -288,7 +287,7 @@ func ProjectGrantAddedAggregate(aggCreator *es_models.AggregateCreator, existing
if err != nil {
return nil, err
}
agg.AppendEvent(proj_model.ProjectGrantAdded, grant)
agg.AppendEvent(model.ProjectGrantAdded, grant)
return agg, nil
}
}
@@ -308,7 +307,7 @@ func ProjectGrantChangedAggregate(aggCreator *es_models.AggregateCreator, existi
changes = g.Changes(grant)
}
}
agg.AppendEvent(proj_model.ProjectGrantChanged, changes)
agg.AppendEvent(model.ProjectGrantChanged, changes)
return agg, nil
}
@@ -323,7 +322,7 @@ func ProjectGrantRemovedAggregate(aggCreator *es_models.AggregateCreator, existi
if err != nil {
return nil, err
}
agg.AppendEvent(proj_model.ProjectGrantRemoved, &model.ProjectGrantID{GrantID: grant.GrantID})
agg.AppendEvent(model.ProjectGrantRemoved, &model.ProjectGrantID{GrantID: grant.GrantID})
return agg, nil
}
@@ -338,7 +337,7 @@ func ProjectGrantDeactivatedAggregate(aggCreator *es_models.AggregateCreator, ex
if err != nil {
return nil, err
}
agg.AppendEvent(proj_model.ProjectGrantDeactivated, &model.ProjectGrantID{GrantID: grant.GrantID})
agg.AppendEvent(model.ProjectGrantDeactivated, &model.ProjectGrantID{GrantID: grant.GrantID})
return agg, nil
}
@@ -353,7 +352,7 @@ func ProjectGrantReactivatedAggregate(aggCreator *es_models.AggregateCreator, ex
if err != nil {
return nil, err
}
agg.AppendEvent(proj_model.ProjectGrantReactivated, &model.ProjectGrantID{GrantID: grant.GrantID})
agg.AppendEvent(model.ProjectGrantReactivated, &model.ProjectGrantID{GrantID: grant.GrantID})
return agg, nil
}
@@ -368,7 +367,7 @@ func ProjectGrantMemberAddedAggregate(aggCreator *es_models.AggregateCreator, ex
if err != nil {
return nil, err
}
agg.AppendEvent(proj_model.ProjectGrantMemberAdded, member)
agg.AppendEvent(model.ProjectGrantMemberAdded, member)
return agg, nil
}
}
@@ -388,7 +387,7 @@ func ProjectGrantMemberChangedAggregate(aggCreator *es_models.AggregateCreator,
changes["userId"] = member.UserID
changes["roles"] = member.Roles
return agg.AppendEvent(proj_model.ProjectGrantMemberChanged, changes)
return agg.AppendEvent(model.ProjectGrantMemberChanged, changes)
}
}
@@ -401,6 +400,6 @@ func ProjectGrantMemberRemovedAggregate(aggCreator *es_models.AggregateCreator,
if err != nil {
return nil, err
}
return agg.AppendEvent(proj_model.ProjectGrantMemberRemoved, member)
return agg.AppendEvent(model.ProjectGrantMemberRemoved, member)
}
}