Skip to content

Commit aa4e5a5

Browse files
committed
add IPV6 testing
1 parent 8706e1e commit aa4e5a5

File tree

4 files changed

+97
-0
lines changed

4 files changed

+97
-0
lines changed

mmv1/products/compute/Subnetwork.yaml

+12
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,18 @@ examples:
131131
network_name: 'network-reserved-secondary-range'
132132
primary_range_name: 'reserved-primary'
133133
secondary_range_name: 'reserved-secondary'
134+
- name: 'subnetwork_ipv6_only_internal'
135+
primary_resource_id: 'subnetwork-ipv6-only'
136+
exclude_docs: true
137+
vars:
138+
subnetwork_name: 'subnet-ipv6-only'
139+
network_name: 'network-ipv6-only'
140+
- name: 'subnetwork_ipv6_only_external'
141+
primary_resource_id: 'subnetwork-ipv6-only-external'
142+
exclude_docs: true
143+
vars:
144+
subnetwork_name: 'subnet-ipv6-only'
145+
network_name: 'network-ipv6-only'
134146
virtual_fields:
135147
- name: 'send_secondary_ip_range_if_empty'
136148
description: |
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
resource "google_compute_subnetwork" "subnetwork-ipv6-only" {
2+
name = "{{index $.Vars "subnetwork_name"}}"
3+
region = "us-central1"
4+
network = google_compute_network.custom-test.id
5+
stack_type = "IPV6_ONLY"
6+
ipv6_access_type = "EXTERNAL"
7+
}
8+
9+
resource "google_compute_network" "custom-test" {
10+
name = "{{index $.Vars "network_name"}}"
11+
auto_create_subnetworks = false
12+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
resource "google_compute_subnetwork" "subnetwork-ipv6-only" {
2+
name = "{{index $.Vars "subnetwork_name"}}"
3+
region = "us-central1"
4+
network = google_compute_network.custom-test.id
5+
stack_type = "IPV6_ONLY"
6+
ipv6_access_type = "INTERNAL"
7+
}
8+
9+
resource "google_compute_network" "custom-test" {
10+
name = "{{index $.Vars "network_name"}}"
11+
auto_create_subnetworks = false
12+
}

mmv1/third_party/terraform/services/compute/resource_compute_instance_test.go.tmpl

+61
Original file line numberDiff line numberDiff line change
@@ -4216,6 +4216,27 @@ func TestAccComputeInstance_NicStackTypeUpdate(t *testing.T) {
42164216
})
42174217
}
42184218

4219+
func TestAccComputeINstance_NicStackType_IPV6(t *testing.T) {
4220+
t.Parallel()
4221+
context := map[string]interface{}{
4222+
"instance_name": fmt.Sprintf("tf-test-compute-instance-%s", acctest.RandString(t, 10)),
4223+
"suffix": acctest.RandString(t, 10),
4224+
"env_region": envvar.GetTestRegionFromEnv(),
4225+
}
4226+
4227+
acctest.VcrTest(t, resource.TestCase{
4228+
PreCheck: func() { acctest.AccTestPreCheck(t) },
4229+
ProtoV5ProviderFactories: acctest.ProtoV5ProviderFactories(t),
4230+
CheckDestroy: testAccCheckComputeInstanceDestroyProducer(t),
4231+
Steps: []resource.TestStep{
4232+
{
4233+
Config: testAccComputeInstance_nicStackTypeUpdate_ipv6(context),
4234+
},
4235+
},
4236+
})
4237+
}
4238+
4239+
42194240
func testAccCheckComputeInstanceDestroyProducer(t *testing.T) func(s *terraform.State) error {
42204241
return func(s *terraform.State) error {
42214242
config := acctest.GoogleProviderConfig(t)
@@ -11212,3 +11233,43 @@ resource "google_compute_instance" "foobar" {
1121211233
}
1121311234
`, context)
1121411235
}
11236+
11237+
func testAccComputeInstance_nicStackTypeUpdate_ipv6(context map[string]interface{}) string {
11238+
return acctest.Nprintf(`
11239+
data "google_compute_image" "my_image" {
11240+
family = "debian-11"
11241+
project = "debian-cloud"
11242+
}
11243+
11244+
resource "google_compute_network" "inst-test-network" {
11245+
name = "tf-test-network-%{suffix}"
11246+
auto_create_subnetworks = false
11247+
}
11248+
11249+
resource "google_compute_subnetwork" "inst-test-subnetwork" {
11250+
name = "tf-test-compute-subnet-%{suffix}"
11251+
region = "%{env_region}"
11252+
ipv6_access_type = "EXTERNAL"
11253+
stack_type = "IPV6_ONLY"
11254+
network = google_compute_network.inst-test-network.id
11255+
}
11256+
11257+
resource "google_compute_instance" "foobar" {
11258+
name = "%{instance_name}"
11259+
machine_type = "e2-medium"
11260+
zone = "%{env_region}-a"
11261+
11262+
boot_disk {
11263+
initialize_params {
11264+
image = data.google_compute_image.my_image.self_link
11265+
}
11266+
}
11267+
11268+
network_interface {
11269+
network = google_compute_network.inst-test-network.id
11270+
subnetwork = google_compute_subnetwork.inst-test-subnetwork.id
11271+
stack_type = "IPV6_ONLY"
11272+
}
11273+
}
11274+
`, context)
11275+
}

0 commit comments

Comments
 (0)