@@ -740,7 +740,7 @@ func TestAccComputeInstance_guestAccelerator(t *testing.T) {
740
740
CheckDestroy : testAccCheckComputeInstanceDestroy ,
741
741
Steps : []resource.TestStep {
742
742
resource.TestStep {
743
- Config : testAccComputeInstance_guestAccelerator (instanceName ),
743
+ Config : testAccComputeInstance_guestAccelerator (instanceName , 1 ),
744
744
Check : resource .ComposeTestCheckFunc (
745
745
testAccCheckComputeInstanceExists ("google_compute_instance.foobar" , & instance ),
746
746
testAccCheckComputeInstanceHasGuestAccelerator (& instance , "nvidia-tesla-k80" , 1 ),
@@ -751,6 +751,29 @@ func TestAccComputeInstance_guestAccelerator(t *testing.T) {
751
751
752
752
}
753
753
754
+ func TestAccComputeInstance_guestAcceleratorSkip (t * testing.T ) {
755
+ t .Parallel ()
756
+
757
+ var instance compute.Instance
758
+ instanceName := fmt .Sprintf ("terraform-test-%s" , acctest .RandString (10 ))
759
+
760
+ resource .Test (t , resource.TestCase {
761
+ PreCheck : func () { testAccPreCheck (t ) },
762
+ Providers : testAccProviders ,
763
+ CheckDestroy : testAccCheckComputeInstanceDestroy ,
764
+ Steps : []resource.TestStep {
765
+ resource.TestStep {
766
+ Config : testAccComputeInstance_guestAccelerator (instanceName , 0 ),
767
+ Check : resource .ComposeTestCheckFunc (
768
+ testAccCheckComputeInstanceExists ("google_compute_instance.foobar" , & instance ),
769
+ testAccCheckComputeInstanceLacksGuestAccelerator (& instance ),
770
+ ),
771
+ },
772
+ },
773
+ })
774
+
775
+ }
776
+
754
777
func TestAccComputeInstance_minCpuPlatform (t * testing.T ) {
755
778
t .Parallel ()
756
779
@@ -1219,6 +1242,16 @@ func testAccCheckComputeInstanceHasGuestAccelerator(instance *compute.Instance,
1219
1242
}
1220
1243
}
1221
1244
1245
+ func testAccCheckComputeInstanceLacksGuestAccelerator (instance * compute.Instance ) resource.TestCheckFunc {
1246
+ return func (s * terraform.State ) error {
1247
+ if len (instance .GuestAccelerators ) > 0 {
1248
+ return fmt .Errorf ("Expected no guest accelerators" )
1249
+ }
1250
+
1251
+ return nil
1252
+ }
1253
+ }
1254
+
1222
1255
func testAccCheckComputeInstanceHasMinCpuPlatform (instance * compute.Instance , minCpuPlatform string ) resource.TestCheckFunc {
1223
1256
return func (s * terraform.State ) error {
1224
1257
if instance .MinCpuPlatform != minCpuPlatform {
@@ -2203,7 +2236,7 @@ resource "google_compute_subnetwork" "inst-test-subnetwork" {
2203
2236
` , instance , network , subnetwork )
2204
2237
}
2205
2238
2206
- func testAccComputeInstance_guestAccelerator (instance string ) string {
2239
+ func testAccComputeInstance_guestAccelerator (instance string , count uint8 ) string {
2207
2240
return fmt .Sprintf (`
2208
2241
resource "google_compute_instance" "foobar" {
2209
2242
name = "%s"
@@ -2226,10 +2259,10 @@ resource "google_compute_instance" "foobar" {
2226
2259
}
2227
2260
2228
2261
guest_accelerator {
2229
- count = 1
2262
+ count = %d
2230
2263
type = "nvidia-tesla-k80"
2231
2264
}
2232
- }` , instance )
2265
+ }` , instance , count )
2233
2266
}
2234
2267
2235
2268
func testAccComputeInstance_minCpuPlatform (instance string ) string {
0 commit comments