@@ -2465,6 +2465,31 @@ func TestAccComputeInstance_metadataStartupScript_update(t *testing.T) {
2465
2465
})
2466
2466
}
2467
2467
2468
+ func TestAccComputeInstance_regionBootDisk (t * testing.T ) {
2469
+ t .Parallel ()
2470
+
2471
+ var instance compute.Instance
2472
+ var instanceName = fmt .Sprintf ("tf-test-%s" , acctest .RandString (t , 10 ))
2473
+ var diskName = fmt .Sprintf ("tf-test-%s" , acctest .RandString (t , 10 ))
2474
+ var suffix = acctest .RandString (t , 10 )
2475
+
2476
+ acctest .VcrTest (t , resource.TestCase {
2477
+ PreCheck : func () { acctest .AccTestPreCheck (t ) },
2478
+ ProtoV5ProviderFactories : acctest .ProtoV5ProviderFactories (t ),
2479
+ CheckDestroy : testAccCheckComputeInstanceDestroyProducer (t ),
2480
+ Steps : []resource.TestStep {
2481
+ {
2482
+ Config : testAccComputeInstance_regionBootDisk (instanceName , diskName , suffix ),
2483
+ Check : resource .ComposeTestCheckFunc (
2484
+ testAccCheckComputeInstanceExists (
2485
+ t , "google_compute_instance.regional_vm_instance" , & instance ),
2486
+ testAccCheckComputeInstanceBootDisk (& instance , diskName ),
2487
+ ),
2488
+ },
2489
+ },
2490
+ })
2491
+ }
2492
+
2468
2493
func testAccCheckComputeInstanceUpdateMachineType (t * testing.T , n string ) resource.TestCheckFunc {
2469
2494
return func (s * terraform.State ) error {
2470
2495
rs , ok := s .RootModule ().Resources [n ]
@@ -6656,3 +6681,52 @@ resource "google_compute_instance" "foobar" {
6656
6681
}
6657
6682
` , instance , machineType , metadata )
6658
6683
}
6684
+
6685
+ func testAccComputeInstance_regionBootDisk (instance , diskName , suffix string ) string {
6686
+ return fmt .Sprintf (`
6687
+ resource "google_compute_instance" "regional_vm_instance" {
6688
+ name = "%s"
6689
+ machine_type = "e2-medium"
6690
+ zone = "us-central1-c"
6691
+
6692
+ boot_disk {
6693
+ source = google_compute_region_disk.regionaldisk.self_link
6694
+ }
6695
+ network_interface {
6696
+ network = google_compute_network.vpc_network.name
6697
+ access_config {}
6698
+ }
6699
+ }
6700
+
6701
+ resource "google_compute_region_disk" "regionaldisk" {
6702
+ name = "%s"
6703
+ type = "pd-ssd"
6704
+ region = "us-central1"
6705
+ replica_zones = ["us-central1-c", "us-central1-a"]
6706
+ size = 50
6707
+ snapshot = google_compute_snapshot.debian.id
6708
+ }
6709
+
6710
+ resource "google_compute_network" "vpc_network" {
6711
+ name = "tf-test-%s"
6712
+ }
6713
+
6714
+ data "google_compute_image" "debian" {
6715
+ family = "debian-11"
6716
+ project = "debian-cloud"
6717
+ }
6718
+
6719
+ resource "google_compute_snapshot" "debian" {
6720
+ name = "tf-test-%s"
6721
+ source_disk = google_compute_disk.debian.id
6722
+ }
6723
+
6724
+ resource "google_compute_disk" "debian" {
6725
+ name = "tf-test-%s"
6726
+ image = data.google_compute_image.debian.self_link
6727
+ size = 10
6728
+ type = "pd-ssd"
6729
+ zone = "us-central1-c"
6730
+ }
6731
+ ` , instance , diskName , suffix , suffix , suffix )
6732
+ }
0 commit comments