Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,10 @@ resource "google_vertex_ai_endpoint_with_model_garden_deployment" "{{$.PrimaryRe
endpoint_config {
private_service_connect_config {
enable_private_service_connect = true
project_allowlist = [data.google_project.project.id]
project_allowlist = [data.google_project.project.project_id]

psc_automation_configs {
project_id = data.google_project.project.id
project_id = data.google_project.project.project_id
network = google_compute_network.network.id
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import (
"github.com/hashicorp/terraform-plugin-testing/helper/resource"
"github.com/hashicorp/terraform-plugin-testing/terraform"
"github.com/hashicorp/terraform-provider-google/google/acctest"
_ "github.com/hashicorp/terraform-provider-google/google/services/compute"
tpgcompute "github.com/hashicorp/terraform-provider-google/google/services/compute"
_ "github.com/hashicorp/terraform-provider-google/google/services/resourcemanager"
"github.com/hashicorp/terraform-provider-google/google/services/vertexai"
"github.com/hashicorp/terraform-provider-google/google/tpgresource"
Expand Down Expand Up @@ -220,7 +220,7 @@ resource "google_vertex_ai_endpoint_with_model_garden_deployment" "test" {
endpoint_config {
private_service_connect_config {
enable_private_service_connect = true
project_allowlist = [data.google_project.project.id]
project_allowlist = [data.google_project.project.project_id]
}
}
}
Expand All @@ -231,7 +231,16 @@ data "google_project" "project" {}

func TestAccVertexAIEndpointWithModelGardenDeployment_pscEndpointAutomated(t *testing.T) {
t.Parallel()
context := map[string]interface{}{"random_suffix": acctest.RandString(t, 10)}
// PSC service automation attaches its own firewall rules to the network and
// removes them asynchronously when the deployment is deleted, so a network
// managed by this test cannot be destroyed reliably. Use the shared
// bootstrapped network, which is never torn down.
networkName := tpgcompute.BootstrapSharedTestNetwork(t, "vertex-mg-psc")
context := map[string]interface{}{
"random_suffix": acctest.RandString(t, 10),
"network_name": networkName,
"subnetwork": tpgcompute.BootstrapSubnet(t, "vertex-mg-psc", networkName),
}
acctest.VcrTest(t, resource.TestCase{
PreCheck: func() { acctest.AccTestPreCheck(t) },
ProtoV5ProviderFactories: acctest.ProtoV5ProviderFactories(t),
Expand All @@ -257,26 +266,18 @@ resource "google_vertex_ai_endpoint_with_model_garden_deployment" "test" {
endpoint_config {
private_service_connect_config {
enable_private_service_connect = true
project_allowlist = [data.google_project.project.id]
project_allowlist = [data.google_project.project.project_id]

psc_automation_configs {
project_id = data.google_project.project.id
network = google_compute_network.network.id
project_id = data.google_project.project.project_id
network = data.google_compute_network.network.id
}
}
}
}

resource "google_compute_subnetwork" "subnetwork" {
name = "subnetwork"
ip_cidr_range = "192.168.0.0/24"
region = "us-central1"
network = google_compute_network.network.id
}

resource "google_compute_network" "network" {
name = "network"
auto_create_subnetworks = false
data "google_compute_network" "network" {
name = "%{network_name}"
}

data "google_project" "project" {}
Expand Down
Loading