Terraform-provider-google: Add Serverless VPC Access resource and vpcConnector property for Cloud Functions

Created on 9 Apr 2019  ·  3Comments  ·  Source: hashicorp/terraform-provider-google


Community Note

  • Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
  • Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
  • If you are interested in working on this issue or have submitted a pull request, please leave a comment. If the issue is assigned to the "modular-magician" user, it is either in the process of being autogenerated, or is planned to be autogenerated soon. If the issue is assigned to a user, that user is claiming responsibility for the issue. If the issue is assigned to "hashibot", a community member has claimed the issue already.

Description

Recently, the "Serverless VPC Access API" has been added, allowing "Cloud Functions" and "App Engine Standard Environment" to directly access VPC resources via internal IP.
I would like to add the resource and the property to configure these in Terraform.

New or Affected Resource(s)

  • google_compute_vpcaccess_connector
  • google_cloudfunctions_function

Potential Terraform Configuration

resource "google_compute_vpcaccess_connector" "function" {
  name           = "function-test"
  network        = "default"
  ip_cidr_range  = "10.10.0.0/28"
  min_throughput = 200
  max_throughput = 300
}

resource "google_cloudfunctions_function" "function" {
  name                  = "function-test"
  description           = "My function"
  trigger_http          = true
  timeout               = 60
  entry_point           = "helloGET"
  source_archive_bucket = "${google_storage_bucket.bucket.name}"
  source_archive_object = "${google_storage_bucket_object.archive.name}"
  vpc_connector         = "${google_compute_vpcaccess_connector.function.fullname}"
}

References

enhancement new-resource

Most helpful comment

Work around for provisioing a vpc connector

resource "null_resource" "serverless_vpc_connector" {
  provisioner "local-exec" {
    command = <<EOT
        gcloud beta compute networks vpc-access connectors create serverless_vpc_connector \
        --network default \
        --region us-central-1 \
        --quiet
    EOT
  }
}

All 3 comments

Work around for provisioing a vpc connector

resource "null_resource" "serverless_vpc_connector" {
  provisioner "local-exec" {
    command = <<EOT
        gcloud beta compute networks vpc-access connectors create serverless_vpc_connector \
        --network default \
        --region us-central-1 \
        --quiet
    EOT
  }
}

Thanks @sho-abe for opening this issue. It's been closed with https://github.com/terraform-providers/terraform-provider-google-beta/pull/1004 and will be released shortly.

I'm going to lock this issue because it has been closed for _30 days_ ⏳. This helps our maintainers find and focus on the active issues.

If you feel this issue should be reopened, we encourage creating a new issue linking back to this one for added context. If you feel I made an error 🤖 🙉 , please reach out to my human friends 👉 [email protected]. Thanks!

Was this page helpful?
0 / 5 - 0 ratings