Get hands-on experience with 20+ free Google Cloud products and $300 in free credit for new customers.

Encountering issues when creating a VPC and Firewall rules using the Terraform GCP blueprint.

  1. When creating VPC and Firewall rules using "Terraform blueprints and modules for Google Cloud," the VPC is successfully created. However, when attempting to create the Firewall at the same time, an error occurs: "Network name already created." This error found because I am using the same source, "terraform-google-modules/network/google." Additionally, when using the source "terraform-google-modules/network/google//modules/firewall-rules," a version conflict error occurs.

  2. How to set the default variables in the firewall_rules variable.tf file:

 

variable "rules" {
  description = "This is DEPRICATED and available for backward compatiblity. Use ingress_rules and egress_rules variables. List of custom rule definitions"
  type = list(object({
    name                    = string
    description             = optional(string, null)
    direction               = optional(string, "INGRESS")
    disabled                = optional(bool, null)
    priority                = optional(number, null)
    ranges                  = optional(list(string), [])
    source_tags             = optional(list(string))
    source_service_accounts = optional(list(string))
    target_tags             = optional(list(string))
    target_service_accounts = optional(list(string))

    allow = optional(list(object({
      protocol = string
      ports    = optional(list(string))
    })), [])
    deny = optional(list(object({
      protocol = string
      ports    = optional(list(string))
    })), [])
    log_config = optional(object({
      metadata = string
    }))
  }))
  default = [
    {
      name                    = "allow-ssh-ingress"
      description             = null
      direction               = "INGRESS"
      priority                = null
      destination_ranges      = ["10.0.0.0/8"]
      source_ranges           = ["0.0.0.0/0"]
      source_tags             = null
      source_service_accounts = null
      target_tags             = null
      target_service_accounts = null
      allow = [{
        protocol = "tcp"
        ports    = ["22"]
      }]
      deny = []
      log_config = {
          metadata = "INCLUDE_ALL_METADATA"
      }
    }
  ]
}

 

 

 

 

 

 

 

1 1 322