From 6aac685ed45b887c3c9d162696f7ef6ccbcea817 Mon Sep 17 00:00:00 2001 From: "Marcel S. Henselin" Date: Mon, 22 Dec 2025 10:02:25 +0100 Subject: [PATCH] Feat/alpa postgres user (#14) * chore: add stackit_postgresflexalpha_user resource * chore: refactor postgresflex user resource to postgresflexalpha * chore: refactor wait handlers and update API client interfaces for postgresflexalpha * chore: add stackit_postgresflexalpha_user data source example * fix: refactor sqlserverflexalpha user resource and enhance schema with status and default_database --------- Co-authored-by: Andre Harms --- pkg/postgresflexalpha/wait/wait_test.go | 44 ++++++++++--------- sample/user.tf | 6 +++ .../services/sqlserverflexalpha/utils/util.go | 2 +- 3 files changed, 30 insertions(+), 22 deletions(-) diff --git a/pkg/postgresflexalpha/wait/wait_test.go b/pkg/postgresflexalpha/wait/wait_test.go index 4d035d95..fd31979d 100644 --- a/pkg/postgresflexalpha/wait/wait_test.go +++ b/pkg/postgresflexalpha/wait/wait_test.go @@ -144,15 +144,16 @@ func TestCreateInstanceWaitHandler(t *testing.T) { }, } for _, tt := range tests { - t.Run(tt.desc, func(t *testing.T) { - instanceId := "foo-bar" + t.Run( + tt.desc, func(t *testing.T) { + instanceId := "foo-bar" - apiClient := &apiClientInstanceMocked{ - instanceId: instanceId, - instanceState: tt.instanceState, - instanceGetFails: tt.instanceGetFails, - usersGetErrorStatus: tt.usersGetErrorStatus, - } + apiClient := &apiClientInstanceMocked{ + instanceId: instanceId, + instanceState: tt.instanceState, + instanceGetFails: tt.instanceGetFails, + usersGetErrorStatus: tt.usersGetErrorStatus, + } var wantRes *postgresflex.GetInstanceResponse if tt.wantResp { @@ -220,14 +221,15 @@ func TestUpdateInstanceWaitHandler(t *testing.T) { }, } for _, tt := range tests { - t.Run(tt.desc, func(t *testing.T) { - instanceId := "foo-bar" + t.Run( + tt.desc, func(t *testing.T) { + instanceId := "foo-bar" - apiClient := &apiClientInstanceMocked{ - instanceId: instanceId, - instanceState: tt.instanceState, - instanceGetFails: tt.instanceGetFails, - } + apiClient := &apiClientInstanceMocked{ + instanceId: instanceId, + instanceState: tt.instanceState, + instanceGetFails: tt.instanceGetFails, + } var wantRes *postgresflex.GetInstanceResponse if tt.wantResp { @@ -376,13 +378,13 @@ func TestDeleteUserWaitHandler(t *testing.T) { } for _, tt := range tests { t.Run(tt.desc, func(t *testing.T) { - userId := int64(1001) + userId := "foo-bar" - apiClient := &apiClientUserMocked{ - getFails: tt.getFails, - userId: userId, - isUserDeleted: !tt.deleteFails, - } + apiClient := &apiClientUserMocked{ + getFails: tt.getFails, + userId: userId, + isUserDeleted: !tt.deleteFails, + } handler := DeleteUserWaitHandler(context.Background(), apiClient, "", "", "", userId) diff --git a/sample/user.tf b/sample/user.tf index 27eccfb0..fe7698f6 100644 --- a/sample/user.tf +++ b/sample/user.tf @@ -1,3 +1,9 @@ +data "stackit_postgresflexalpha_user" "example" { + project_id = stackitalpha_postgresflexalpha_instance.ptlsdbsrv.project_id + instance_id = stackitalpha_postgresflexalpha_instance.ptlsdbsrv.id + user_id = 1 +} + resource "stackit_sqlserverflexalpha_user" "ptlsdbuser" { project_id = stackitalpha_postgresflexalpha_instance.ptlsdbsrv.project_id instance_id = stackitalpha_postgresflexalpha_instance.ptlsdbsrv.id diff --git a/stackit/internal/services/sqlserverflexalpha/utils/util.go b/stackit/internal/services/sqlserverflexalpha/utils/util.go index 738f75a7..9982e9f3 100644 --- a/stackit/internal/services/sqlserverflexalpha/utils/util.go +++ b/stackit/internal/services/sqlserverflexalpha/utils/util.go @@ -31,7 +31,7 @@ func ConfigureClient( } else { apiClientConfigOptions = append(apiClientConfigOptions, config.WithRegion(providerData.GetRegion())) } - apiClient, err := sqlserverflexalpha.NewAPIClient(apiClientConfigOptions...) + apiClient, err := sqlserverflex.NewAPIClient(apiClientConfigOptions...) if err != nil { core.LogAndAddError( ctx,