Skip to content

Commit 67778eb

Browse files
authored
fix(acceptance-tests): Postgresql use force delete (#771)
- use TF_ACC_REGION in acceptance test Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>
1 parent bce05fb commit 67778eb

File tree

5 files changed

+21
-29
lines changed

5 files changed

+21
-29
lines changed

.github/workflows/tf-acc-test.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
run: make project-tools
1818
- name: Run tests
1919
run: |
20-
make test-acceptance-tf TF_ACC_PROJECT_ID=$${{ secrets.TF_ACC_PROJECT_ID }} TF_ACC_ORGANIZATION_ID=$${{ secrets.TF_ACC_ORGANIZATION_ID }}
20+
make test-acceptance-tf TF_ACC_PROJECT_ID=$${{ secrets.TF_ACC_PROJECT_ID }} TF_ACC_ORGANIZATION_ID=$${{ secrets.TF_ACC_ORGANIZATION_ID }} TF_ACC_REGION="eu01"
2121
env:
2222
STACKIT_SERVICE_ACCOUNT_TOKEN: ${{ secrets.TF_ACC_SERVICE_ACCOUNT_TOKEN }}
2323
TF_ACC_TEST_PROJECT_SERVICE_ACCOUNT_EMAIL: ${{ secrets.TF_ACC_TEST_PROJECT_SERVICE_ACCOUNT_EMAIL }}

stackit/internal/services/postgresflex/postgresflex_acc_test.go

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -106,14 +106,13 @@ func configResources(backupSchedule string, region *string) string {
106106
}
107107

108108
func TestAccPostgresFlexFlexResource(t *testing.T) {
109-
testRegion := utils.Ptr("eu01")
110109
resource.Test(t, resource.TestCase{
111110
ProtoV6ProviderFactories: testutil.TestAccProtoV6ProviderFactories,
112111
CheckDestroy: testAccCheckPostgresFlexDestroy,
113112
Steps: []resource.TestStep{
114113
// Creation
115114
{
116-
Config: configResources(instanceResource["backup_schedule"], testRegion),
115+
Config: configResources(instanceResource["backup_schedule"], &testutil.Region),
117116
Check: resource.ComposeAggregateTestCheckFunc(
118117
// Instance
119118
resource.TestCheckResourceAttr("stackit_postgresflex_instance.instance", "project_id", instanceResource["project_id"]),
@@ -130,7 +129,7 @@ func TestAccPostgresFlexFlexResource(t *testing.T) {
130129
resource.TestCheckResourceAttr("stackit_postgresflex_instance.instance", "storage.class", instanceResource["storage_class"]),
131130
resource.TestCheckResourceAttr("stackit_postgresflex_instance.instance", "storage.size", instanceResource["storage_size"]),
132131
resource.TestCheckResourceAttr("stackit_postgresflex_instance.instance", "version", instanceResource["version"]),
133-
resource.TestCheckResourceAttr("stackit_postgresflex_instance.instance", "region", *testRegion),
132+
resource.TestCheckResourceAttr("stackit_postgresflex_instance.instance", "region", testutil.Region),
134133

135134
// User
136135
resource.TestCheckResourceAttrPair(
@@ -169,7 +168,7 @@ func TestAccPostgresFlexFlexResource(t *testing.T) {
169168
project_id = stackit_postgresflex_instance.instance.project_id
170169
instance_id = stackit_postgresflex_instance.instance.instance_id
171170
}
172-
171+
173172
data "stackit_postgresflex_user" "user" {
174173
project_id = stackit_postgresflex_instance.instance.project_id
175174
instance_id = stackit_postgresflex_instance.instance.instance_id
@@ -341,7 +340,7 @@ func testAccCheckPostgresFlexDestroy(s *terraform.State) error {
341340
continue
342341
}
343342
// instance terraform ID: = "[project_id],[region],[instance_id]"
344-
instanceId := strings.Split(rs.Primary.ID, core.Separator)[1]
343+
instanceId := strings.Split(rs.Primary.ID, core.Separator)[2]
345344
instancesToDestroy = append(instancesToDestroy, instanceId)
346345
}
347346

@@ -356,18 +355,14 @@ func testAccCheckPostgresFlexDestroy(s *terraform.State) error {
356355
continue
357356
}
358357
if utils.Contains(instancesToDestroy, *items[i].Id) {
359-
err := client.DeleteInstanceExecute(ctx, testutil.ProjectId, testutil.Region, *items[i].Id)
358+
err := client.ForceDeleteInstanceExecute(ctx, testutil.ProjectId, testutil.Region, *items[i].Id)
360359
if err != nil {
361360
return fmt.Errorf("deleting instance %s during CheckDestroy: %w", *items[i].Id, err)
362361
}
363362
_, err = wait.DeleteInstanceWaitHandler(ctx, client, testutil.ProjectId, testutil.Region, *items[i].Id).WaitWithContext(ctx)
364363
if err != nil {
365364
return fmt.Errorf("deleting instance %s during CheckDestroy: waiting for deletion %w", *items[i].Id, err)
366365
}
367-
err = client.ForceDeleteInstanceExecute(ctx, testutil.ProjectId, testutil.Region, *items[i].Id)
368-
if err != nil {
369-
return fmt.Errorf("force deleting instance %s during CheckDestroy: %w", *items[i].Id, err)
370-
}
371366
}
372367
}
373368
return nil

stackit/internal/services/serverupdate/serverupdate_acc_test.go

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,6 @@ func TestAccServerUpdateScheduleResource(t *testing.T) {
5959
fmt.Println("TF_ACC_SERVER_ID not set, skipping test")
6060
return
6161
}
62-
testRegion := utils.Ptr("eu01")
6362
var invalidMaintenanceWindow int64 = 0
6463
var validMaintenanceWindow int64 = 15
6564
var updatedMaintenanceWindow int64 = 8
@@ -69,12 +68,12 @@ func TestAccServerUpdateScheduleResource(t *testing.T) {
6968
Steps: []resource.TestStep{
7069
// Creation fail
7170
{
72-
Config: resourceConfig(invalidMaintenanceWindow, testRegion),
71+
Config: resourceConfig(invalidMaintenanceWindow, &testutil.Region),
7372
ExpectError: regexp.MustCompile(`.*maintenance_window value must be at least 1*`),
7473
},
7574
// Creation
7675
{
77-
Config: resourceConfig(validMaintenanceWindow, testRegion),
76+
Config: resourceConfig(validMaintenanceWindow, &testutil.Region),
7877
Check: resource.ComposeAggregateTestCheckFunc(
7978
// Update schedule data
8079
resource.TestCheckResourceAttr("stackit_server_update_schedule.test_schedule", "project_id", serverUpdateScheduleResource["project_id"]),
@@ -84,7 +83,7 @@ func TestAccServerUpdateScheduleResource(t *testing.T) {
8483
resource.TestCheckResourceAttr("stackit_server_update_schedule.test_schedule", "name", serverUpdateScheduleResource["name"]),
8584
resource.TestCheckResourceAttr("stackit_server_update_schedule.test_schedule", "rrule", serverUpdateScheduleResource["rrule"]),
8685
resource.TestCheckResourceAttr("stackit_server_update_schedule.test_schedule", "enabled", strconv.FormatBool(true)),
87-
resource.TestCheckResourceAttr("stackit_server_update_schedule.test_schedule", "region", *testRegion),
86+
resource.TestCheckResourceAttr("stackit_server_update_schedule.test_schedule", "region", testutil.Region),
8887
),
8988
},
9089
// data source
@@ -102,7 +101,7 @@ func TestAccServerUpdateScheduleResource(t *testing.T) {
102101
server_id = stackit_server_update_schedule.test_schedule.server_id
103102
update_schedule_id = stackit_server_update_schedule.test_schedule.update_schedule_id
104103
}`,
105-
resourceConfig(validMaintenanceWindow, testRegion),
104+
resourceConfig(validMaintenanceWindow, &testutil.Region),
106105
),
107106
Check: resource.ComposeAggregateTestCheckFunc(
108107
// Server update schedule data

stackit/internal/services/ske/ske_acc_test.go

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -206,7 +206,6 @@ func getConfig(kubernetesVersion, nodePoolMachineOSVersion string, maintenanceEn
206206
}
207207

208208
func TestAccSKE(t *testing.T) {
209-
testRegion := utils.Ptr("eu01")
210209
resource.Test(t, resource.TestCase{
211210
ProtoV6ProviderFactories: testutil.TestAccProtoV6ProviderFactories,
212211
CheckDestroy: testAccCheckSKEDestroy,
@@ -215,7 +214,7 @@ func TestAccSKE(t *testing.T) {
215214
// 1) Creation
216215
{
217216

218-
Config: getConfig(clusterResource["kubernetes_version_min"], clusterResource["nodepool_os_version_min"], nil, testRegion),
217+
Config: getConfig(clusterResource["kubernetes_version_min"], clusterResource["nodepool_os_version_min"], nil, &testutil.Region),
219218
Check: resource.ComposeAggregateTestCheckFunc(
220219
// cluster data
221220
resource.TestCheckResourceAttr("stackit_ske_cluster.cluster", "name", clusterResource["name"]),
@@ -257,7 +256,7 @@ func TestAccSKE(t *testing.T) {
257256
resource.TestCheckResourceAttr("stackit_ske_cluster.cluster", "maintenance.enable_machine_image_version_updates", clusterResource["maintenance_enable_machine_image_version_updates"]),
258257
resource.TestCheckResourceAttr("stackit_ske_cluster.cluster", "maintenance.start", clusterResource["maintenance_start"]),
259258
resource.TestCheckResourceAttr("stackit_ske_cluster.cluster", "maintenance.end", clusterResource["maintenance_end"]),
260-
resource.TestCheckResourceAttr("stackit_ske_cluster.cluster", "region", *testRegion),
259+
resource.TestCheckResourceAttr("stackit_ske_cluster.cluster", "region", testutil.Region),
261260

262261
// Kubeconfig
263262

@@ -285,7 +284,7 @@ func TestAccSKE(t *testing.T) {
285284
}
286285
287286
`,
288-
getConfig(clusterResource["kubernetes_version_min"], clusterResource["nodepool_os_version_min"], nil, testRegion),
287+
getConfig(clusterResource["kubernetes_version_min"], clusterResource["nodepool_os_version_min"], nil, &testutil.Region),
289288
clusterResource["project_id"],
290289
clusterResource["name"],
291290
),
@@ -294,7 +293,7 @@ func TestAccSKE(t *testing.T) {
294293
// cluster data
295294
resource.TestCheckResourceAttr("data.stackit_ske_cluster.cluster", "id", fmt.Sprintf("%s,%s,%s",
296295
clusterResource["project_id"],
297-
*testRegion,
296+
testutil.Region,
298297
clusterResource["name"],
299298
)),
300299
resource.TestCheckResourceAttr("data.stackit_ske_cluster.cluster", "project_id", clusterResource["project_id"]),
@@ -357,7 +356,7 @@ func TestAccSKE(t *testing.T) {
357356
},
358357
// 4) Update kubernetes version, OS version and maintenance end
359358
{
360-
Config: getConfig(clusterResource["kubernetes_version_min_new"], clusterResource["nodepool_os_version_min_new"], utils.Ptr(clusterResource["maintenance_end_new"]), testRegion),
359+
Config: getConfig(clusterResource["kubernetes_version_min_new"], clusterResource["nodepool_os_version_min_new"], utils.Ptr(clusterResource["maintenance_end_new"]), &testutil.Region),
361360
Check: resource.ComposeAggregateTestCheckFunc(
362361
// cluster data
363362
resource.TestCheckResourceAttr("stackit_ske_cluster.cluster", "project_id", clusterResource["project_id"]),
@@ -399,12 +398,12 @@ func TestAccSKE(t *testing.T) {
399398
resource.TestCheckResourceAttr("stackit_ske_cluster.cluster", "maintenance.enable_machine_image_version_updates", clusterResource["maintenance_enable_machine_image_version_updates"]),
400399
resource.TestCheckResourceAttr("stackit_ske_cluster.cluster", "maintenance.start", clusterResource["maintenance_start"]),
401400
resource.TestCheckResourceAttr("stackit_ske_cluster.cluster", "maintenance.end", clusterResource["maintenance_end_new"]),
402-
resource.TestCheckResourceAttr("stackit_ske_cluster.cluster", "region", *testRegion),
401+
resource.TestCheckResourceAttr("stackit_ske_cluster.cluster", "region", testutil.Region),
403402
),
404403
},
405404
// 5) Downgrade kubernetes and nodepool machine OS version
406405
{
407-
Config: getConfig(clusterResource["kubernetes_version_min"], clusterResource["nodepool_os_version_min"], utils.Ptr(clusterResource["maintenance_end_new"]), testRegion),
406+
Config: getConfig(clusterResource["kubernetes_version_min"], clusterResource["nodepool_os_version_min"], utils.Ptr(clusterResource["maintenance_end_new"]), &testutil.Region),
408407
Check: resource.ComposeAggregateTestCheckFunc(
409408
// cluster data
410409
resource.TestCheckResourceAttr("stackit_ske_cluster.cluster", "project_id", clusterResource["project_id"]),
@@ -443,7 +442,7 @@ func testAccCheckSKEDestroy(s *terraform.State) error {
443442
continue
444443
}
445444
// cluster terraform ID: = "[project_id],[region],[cluster_name]"
446-
clusterName := strings.Split(rs.Primary.ID, core.Separator)[1]
445+
clusterName := strings.Split(rs.Primary.ID, core.Separator)[2]
447446
clustersToDestroy = append(clustersToDestroy, clusterName)
448447
}
449448

stackit/internal/services/sqlserverflex/sqlserverflex_acc_test.go

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -97,14 +97,13 @@ func configResources(backupSchedule string, region *string) string {
9797
}
9898

9999
func TestAccSQLServerFlexResource(t *testing.T) {
100-
testRegion := utils.Ptr("eu01")
101100
resource.Test(t, resource.TestCase{
102101
ProtoV6ProviderFactories: testutil.TestAccProtoV6ProviderFactories,
103102
CheckDestroy: testAccChecksqlserverflexDestroy,
104103
Steps: []resource.TestStep{
105104
// Creation
106105
{
107-
Config: configResources(instanceResource["backup_schedule"], testRegion),
106+
Config: configResources(instanceResource["backup_schedule"], &testutil.Region),
108107
Check: resource.ComposeAggregateTestCheckFunc(
109108
// Instance
110109
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "project_id", instanceResource["project_id"]),
@@ -122,7 +121,7 @@ func TestAccSQLServerFlexResource(t *testing.T) {
122121
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "version", instanceResource["version"]),
123122
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "options.retention_days", instanceResource["options_retention_days"]),
124123
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "backup_schedule", instanceResource["backup_schedule"]),
125-
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "region", *testRegion),
124+
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "region", testutil.Region),
126125
// User
127126
resource.TestCheckResourceAttrPair(
128127
"stackit_sqlserverflex_user.user", "project_id",
@@ -323,7 +322,7 @@ func testAccChecksqlserverflexDestroy(s *terraform.State) error {
323322
continue
324323
}
325324
// instance terraform ID: = "[project_id],[region],[instance_id]"
326-
instanceId := strings.Split(rs.Primary.ID, core.Separator)[1]
325+
instanceId := strings.Split(rs.Primary.ID, core.Separator)[2]
327326
instancesToDestroy = append(instancesToDestroy, instanceId)
328327
}
329328

0 commit comments

Comments
 (0)