Skip to content

Commit 6c84c44

Browse files
committed
fix(instance): ensure that tags are removed when deleted in tf
1 parent 831de93 commit 6c84c44

File tree

2 files changed

+41
-0
lines changed

2 files changed

+41
-0
lines changed

scaleway/resource_instance_server.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -508,6 +508,9 @@ func resourceScalewayInstanceServerUpdate(ctx context.Context, d *schema.Resourc
508508

509509
if d.HasChange("tags") {
510510
tags := expandStrings(d.Get("tags"))
511+
if tags == nil {
512+
tags = []string{""}
513+
}
511514
updateRequest.Tags = scw.StringsPtr(tags)
512515
}
513516

scaleway/resource_instance_server_test.go

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -936,3 +936,41 @@ func TestAccScalewayInstanceServer_Bootscript(t *testing.T) {
936936
},
937937
})
938938
}
939+
940+
func TestAccScalewayInstanceServer_AlterTags(t *testing.T) {
941+
tt := NewTestTools(t)
942+
defer tt.Cleanup()
943+
resource.ParallelTest(t, resource.TestCase{
944+
PreCheck: func() { testAccPreCheck(t) },
945+
ProviderFactories: tt.ProviderFactories,
946+
CheckDestroy: testAccCheckScalewayInstanceServerDestroy(tt),
947+
Steps: []resource.TestStep{
948+
{
949+
Config: `
950+
resource "scaleway_instance_server" "web" {
951+
type = "DEV1-L"
952+
image = "ubuntu_focal"
953+
tags = [ "front", "web" ]
954+
}
955+
`,
956+
Check: resource.ComposeTestCheckFunc(
957+
testAccCheckScalewayInstanceServerExists(tt, "scaleway_instance_server.base"),
958+
resource.TestCheckResourceAttr("scaleway_instance_server.web", "tags.0", "front"),
959+
resource.TestCheckResourceAttr("scaleway_instance_server.web", "tags.1", "web"),
960+
),
961+
},
962+
{
963+
Config: `
964+
resource "scaleway_instance_server" "web" {
965+
type = "DEV1-L"
966+
image = "ubuntu_focal"
967+
}
968+
`,
969+
Check: resource.ComposeTestCheckFunc(
970+
testAccCheckScalewayInstanceServerExists(tt, "scaleway_instance_server.base"),
971+
resource.TestCheckNoResourceAttr("scaleway_instance_server.web", "tags"),
972+
),
973+
},
974+
},
975+
})
976+
}

0 commit comments

Comments
 (0)