Skip to content

Commit 3e84b5a

Browse files
authored
fix(instance_image): test concurrency issue with cassettes (#1378)
* fix(instance_image): test concurrency issue with cassettes * split ServerWithBlockVolume test
1 parent b67c3a0 commit 3e84b5a

3 files changed

+4469
-2622
lines changed

scaleway/resource_instance_image_test.go

+79-1
Original file line numberDiff line numberDiff line change
@@ -192,6 +192,29 @@ func TestAccScalewayInstanceImage_ServerWithBlockVolume(t *testing.T) {
192192
testAccCheckScalewayInstanceServerDestroy(tt),
193193
),
194194
Steps: []resource.TestStep{
195+
{
196+
Config: `
197+
resource "scaleway_instance_volume" "block01" {
198+
type = "b_ssd"
199+
size_in_gb = 21
200+
}
201+
resource "scaleway_instance_snapshot" "block01" {
202+
volume_id = scaleway_instance_volume.block01.id
203+
depends_on = [ scaleway_instance_volume.block01 ]
204+
}
205+
206+
resource "scaleway_instance_server" "server" {
207+
image = "ubuntu_focal"
208+
type = "DEV1-S"
209+
}
210+
`,
211+
Check: resource.ComposeTestCheckFunc(
212+
testAccCheckScalewayInstanceVolumeExists(tt, "scaleway_instance_volume.block01"),
213+
testAccCheckScalewayInstanceServerExists(tt, "scaleway_instance_server.server"),
214+
testAccCheckScalewayInstanceSnapShotExists(tt, "scaleway_instance_snapshot.block01"),
215+
),
216+
},
217+
195218
{
196219
Config: `
197220
resource "scaleway_instance_volume" "block01" {
@@ -302,7 +325,7 @@ func TestAccScalewayInstanceImage_ServerWithBlockVolume(t *testing.T) {
302325
func TestAccScalewayInstanceImage_ServerWithLocalVolume(t *testing.T) {
303326
tt := NewTestTools(t)
304327
defer tt.Cleanup()
305-
resource.Test(t, resource.TestCase{
328+
resource.ParallelTest(t, resource.TestCase{
306329
PreCheck: func() { testAccPreCheck(t) },
307330
ProviderFactories: tt.ProviderFactories,
308331
CheckDestroy: resource.ComposeTestCheckFunc(
@@ -312,6 +335,61 @@ func TestAccScalewayInstanceImage_ServerWithLocalVolume(t *testing.T) {
312335
testAccCheckScalewayInstanceServerDestroy(tt),
313336
),
314337
Steps: []resource.TestStep{
338+
{
339+
Config: `
340+
resource "scaleway_instance_server" "server01" {
341+
image = "ubuntu_focal"
342+
type = "DEV1-S"
343+
root_volume {
344+
size_in_gb = 15
345+
volume_type = "l_ssd"
346+
}
347+
}
348+
resource "scaleway_instance_snapshot" "local01" {
349+
volume_id = scaleway_instance_server.server01.root_volume.0.volume_id
350+
depends_on = [ scaleway_instance_server.server01 ]
351+
}
352+
`,
353+
Check: resource.ComposeTestCheckFunc(
354+
testAccCheckScalewayInstanceServerExists(tt, "scaleway_instance_server.server01"),
355+
testAccCheckScalewayInstanceSnapShotExists(tt, "scaleway_instance_snapshot.local01"),
356+
),
357+
},
358+
{
359+
Config: `
360+
resource "scaleway_instance_server" "server01" {
361+
image = "ubuntu_focal"
362+
type = "DEV1-S"
363+
root_volume {
364+
size_in_gb = 15
365+
volume_type = "l_ssd"
366+
}
367+
}
368+
resource "scaleway_instance_server" "server02" {
369+
image = "ubuntu_focal"
370+
type = "DEV1-S"
371+
root_volume {
372+
size_in_gb = 10
373+
volume_type = "l_ssd"
374+
}
375+
}
376+
377+
resource "scaleway_instance_snapshot" "local01" {
378+
volume_id = scaleway_instance_server.server01.root_volume.0.volume_id
379+
depends_on = [ scaleway_instance_server.server01 ]
380+
}
381+
resource "scaleway_instance_snapshot" "local02" {
382+
volume_id = scaleway_instance_server.server02.root_volume.0.volume_id
383+
depends_on = [ scaleway_instance_server.server02 ]
384+
}
385+
`,
386+
Check: resource.ComposeTestCheckFunc(
387+
testAccCheckScalewayInstanceServerExists(tt, "scaleway_instance_server.server01"),
388+
testAccCheckScalewayInstanceServerExists(tt, "scaleway_instance_server.server02"),
389+
testAccCheckScalewayInstanceSnapShotExists(tt, "scaleway_instance_snapshot.local01"),
390+
testAccCheckScalewayInstanceSnapShotExists(tt, "scaleway_instance_snapshot.local02"),
391+
),
392+
},
315393
{
316394
Config: `
317395
resource "scaleway_instance_server" "server01" {

0 commit comments

Comments
 (0)