feat: remove org (#4148)

* feat(command): remove org

* refactor: imports, unused code, error handling

* reduce org removed in action

* add org deletion to projections

* add org removal to projections

* add org removal to projections

* org removed projection

* lint import

* projections

* fix: table names in tests

* fix: table names in tests

* logging

* add org state

* fix(domain): add Owner removed to object details

* feat(ListQuery): add with owner removed

* fix(org-delete): add bool to functions to select with owner removed

* fix(org-delete): add bools to user grants with events to determine if dependencies lost owner

* fix(org-delete): add unit tests for owner removed and org removed events

* fix(org-delete): add handling of org remove for grants and members

* fix(org-delete): correction of unit tests for owner removed

* fix(org-delete): update projections, unit tests and get functions

* fix(org-delete): add change date to authnkeys and owner removed to org metadata

* fix(org-delete): include owner removed for login names

* fix(org-delete): some column fixes in projections and build for queries with owner removed

* indexes

* fix(org-delete): include review changes

* fix(org-delete): change user projection name after merge

* fix(org-delete): include review changes for project grant where no project owner is necessary

* fix(org-delete): include auth and adminapi tables with owner removed information

* fix(org-delete): cleanup username and orgdomain uniqueconstraints when org is removed

* fix(org-delete): add permissions for org.remove

* remove unnecessary unique constraints

* fix column order in primary keys

* fix(org-delete): include review changes

* fix(org-delete): add owner removed indexes and chang setup step to create tables

* fix(org-delete): move PK order of instance_id and change added user_grant from review

* fix(org-delete): no params for prepareUserQuery

* change to step 6

* merge main

* fix(org-delete): OldUserName rename to private

* fix linting

* cleanup

* fix: remove org test

* create prerelease

* chore: delete org-delete as prerelease

Co-authored-by: Stefan Benz <stefan@caos.ch>
Co-authored-by: Livio Spring <livio.a@gmail.com>
Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>
Co-authored-by: Stefan Benz <46600784+stebenz@users.noreply.github.com>
This commit is contained in:
Silvan
2022-11-30 17:01:17 +01:00
committed by GitHub
parent 21a4e73bb6
commit f3e6f3b23b
304 changed files with 7293 additions and 3286 deletions

View File

@@ -44,19 +44,19 @@ func Test_ProjectPrepares(t *testing.T) {
prepare: prepareProjectsQuery,
want: want{
sqlExpectations: mockQueries(
regexp.QuoteMeta(`SELECT projections.projects2.id,`+
` projections.projects2.creation_date,`+
` projections.projects2.change_date,`+
` projections.projects2.resource_owner,`+
` projections.projects2.state,`+
` projections.projects2.sequence,`+
` projections.projects2.name,`+
` projections.projects2.project_role_assertion,`+
` projections.projects2.project_role_check,`+
` projections.projects2.has_project_check,`+
` projections.projects2.private_labeling_setting,`+
regexp.QuoteMeta(`SELECT projections.projects3.id,`+
` projections.projects3.creation_date,`+
` projections.projects3.change_date,`+
` projections.projects3.resource_owner,`+
` projections.projects3.state,`+
` projections.projects3.sequence,`+
` projections.projects3.name,`+
` projections.projects3.project_role_assertion,`+
` projections.projects3.project_role_check,`+
` projections.projects3.has_project_check,`+
` projections.projects3.private_labeling_setting,`+
` COUNT(*) OVER ()`+
` FROM projections.projects2`),
` FROM projections.projects3`),
nil,
nil,
),
@@ -68,19 +68,19 @@ func Test_ProjectPrepares(t *testing.T) {
prepare: prepareProjectsQuery,
want: want{
sqlExpectations: mockQueries(
regexp.QuoteMeta(`SELECT projections.projects2.id,`+
` projections.projects2.creation_date,`+
` projections.projects2.change_date,`+
` projections.projects2.resource_owner,`+
` projections.projects2.state,`+
` projections.projects2.sequence,`+
` projections.projects2.name,`+
` projections.projects2.project_role_assertion,`+
` projections.projects2.project_role_check,`+
` projections.projects2.has_project_check,`+
` projections.projects2.private_labeling_setting,`+
regexp.QuoteMeta(`SELECT projections.projects3.id,`+
` projections.projects3.creation_date,`+
` projections.projects3.change_date,`+
` projections.projects3.resource_owner,`+
` projections.projects3.state,`+
` projections.projects3.sequence,`+
` projections.projects3.name,`+
` projections.projects3.project_role_assertion,`+
` projections.projects3.project_role_check,`+
` projections.projects3.has_project_check,`+
` projections.projects3.private_labeling_setting,`+
` COUNT(*) OVER ()`+
` FROM projections.projects2`),
` FROM projections.projects3`),
[]string{
"id",
"creation_date",
@@ -138,19 +138,19 @@ func Test_ProjectPrepares(t *testing.T) {
prepare: prepareProjectsQuery,
want: want{
sqlExpectations: mockQueries(
regexp.QuoteMeta(`SELECT projections.projects2.id,`+
` projections.projects2.creation_date,`+
` projections.projects2.change_date,`+
` projections.projects2.resource_owner,`+
` projections.projects2.state,`+
` projections.projects2.sequence,`+
` projections.projects2.name,`+
` projections.projects2.project_role_assertion,`+
` projections.projects2.project_role_check,`+
` projections.projects2.has_project_check,`+
` projections.projects2.private_labeling_setting,`+
regexp.QuoteMeta(`SELECT projections.projects3.id,`+
` projections.projects3.creation_date,`+
` projections.projects3.change_date,`+
` projections.projects3.resource_owner,`+
` projections.projects3.state,`+
` projections.projects3.sequence,`+
` projections.projects3.name,`+
` projections.projects3.project_role_assertion,`+
` projections.projects3.project_role_check,`+
` projections.projects3.has_project_check,`+
` projections.projects3.private_labeling_setting,`+
` COUNT(*) OVER ()`+
` FROM projections.projects2`),
` FROM projections.projects3`),
[]string{
"id",
"creation_date",
@@ -234,19 +234,19 @@ func Test_ProjectPrepares(t *testing.T) {
prepare: prepareProjectsQuery,
want: want{
sqlExpectations: mockQueryErr(
regexp.QuoteMeta(`SELECT projections.projects2.id,`+
` projections.projects2.creation_date,`+
` projections.projects2.change_date,`+
` projections.projects2.resource_owner,`+
` projections.projects2.state,`+
` projections.projects2.sequence,`+
` projections.projects2.name,`+
` projections.projects2.project_role_assertion,`+
` projections.projects2.project_role_check,`+
` projections.projects2.has_project_check,`+
` projections.projects2.private_labeling_setting,`+
regexp.QuoteMeta(`SELECT projections.projects3.id,`+
` projections.projects3.creation_date,`+
` projections.projects3.change_date,`+
` projections.projects3.resource_owner,`+
` projections.projects3.state,`+
` projections.projects3.sequence,`+
` projections.projects3.name,`+
` projections.projects3.project_role_assertion,`+
` projections.projects3.project_role_check,`+
` projections.projects3.has_project_check,`+
` projections.projects3.private_labeling_setting,`+
` COUNT(*) OVER ()`+
` FROM projections.projects2`),
` FROM projections.projects3`),
sql.ErrConnDone,
),
err: func(err error) (error, bool) {
@@ -263,18 +263,18 @@ func Test_ProjectPrepares(t *testing.T) {
prepare: prepareProjectQuery,
want: want{
sqlExpectations: mockQueries(
`SELECT projections.projects2.id,`+
` projections.projects2.creation_date,`+
` projections.projects2.change_date,`+
` projections.projects2.resource_owner,`+
` projections.projects2.state,`+
` projections.projects2.sequence,`+
` projections.projects2.name,`+
` projections.projects2.project_role_assertion,`+
` projections.projects2.project_role_check,`+
` projections.projects2.has_project_check,`+
` projections.projects2.private_labeling_setting`+
` FROM projections.projects2`,
`SELECT projections.projects3.id,`+
` projections.projects3.creation_date,`+
` projections.projects3.change_date,`+
` projections.projects3.resource_owner,`+
` projections.projects3.state,`+
` projections.projects3.sequence,`+
` projections.projects3.name,`+
` projections.projects3.project_role_assertion,`+
` projections.projects3.project_role_check,`+
` projections.projects3.has_project_check,`+
` projections.projects3.private_labeling_setting`+
` FROM projections.projects3`,
nil,
nil,
),
@@ -292,18 +292,18 @@ func Test_ProjectPrepares(t *testing.T) {
prepare: prepareProjectQuery,
want: want{
sqlExpectations: mockQuery(
regexp.QuoteMeta(`SELECT projections.projects2.id,`+
` projections.projects2.creation_date,`+
` projections.projects2.change_date,`+
` projections.projects2.resource_owner,`+
` projections.projects2.state,`+
` projections.projects2.sequence,`+
` projections.projects2.name,`+
` projections.projects2.project_role_assertion,`+
` projections.projects2.project_role_check,`+
` projections.projects2.has_project_check,`+
` projections.projects2.private_labeling_setting`+
` FROM projections.projects2`),
regexp.QuoteMeta(`SELECT projections.projects3.id,`+
` projections.projects3.creation_date,`+
` projections.projects3.change_date,`+
` projections.projects3.resource_owner,`+
` projections.projects3.state,`+
` projections.projects3.sequence,`+
` projections.projects3.name,`+
` projections.projects3.project_role_assertion,`+
` projections.projects3.project_role_check,`+
` projections.projects3.has_project_check,`+
` projections.projects3.private_labeling_setting`+
` FROM projections.projects3`),
[]string{
"id",
"creation_date",
@@ -351,18 +351,18 @@ func Test_ProjectPrepares(t *testing.T) {
prepare: prepareProjectQuery,
want: want{
sqlExpectations: mockQueryErr(
regexp.QuoteMeta(`SELECT projections.projects2.id,`+
` projections.projects2.creation_date,`+
` projections.projects2.change_date,`+
` projections.projects2.resource_owner,`+
` projections.projects2.state,`+
` projections.projects2.sequence,`+
` projections.projects2.name,`+
` projections.projects2.project_role_assertion,`+
` projections.projects2.project_role_check,`+
` projections.projects2.has_project_check,`+
` projections.projects2.private_labeling_setting`+
` FROM projections.projects2`),
regexp.QuoteMeta(`SELECT projections.projects3.id,`+
` projections.projects3.creation_date,`+
` projections.projects3.change_date,`+
` projections.projects3.resource_owner,`+
` projections.projects3.state,`+
` projections.projects3.sequence,`+
` projections.projects3.name,`+
` projections.projects3.project_role_assertion,`+
` projections.projects3.project_role_check,`+
` projections.projects3.has_project_check,`+
` projections.projects3.private_labeling_setting`+
` FROM projections.projects3`),
sql.ErrConnDone,
),
err: func(err error) (error, bool) {