Skip to content

Commit

Permalink
Add resource manager tags to module and use it on instace from template.
Browse files Browse the repository at this point in the history
  • Loading branch information
Samir-Cit committed Sep 18, 2023
1 parent 85fd51e commit 8758dd0
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 0 deletions.
1 change: 1 addition & 0 deletions modules/compute_instance/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ See the [simple](https://github.com/terraform-google-modules/terraform-google-vm
| network | Network to deploy to. Only one of network or subnetwork should be specified. | `string` | `""` | no |
| num\_instances | Number of instances to create. This value is ignored if static\_ips is provided. | `number` | `"1"` | no |
| region | Region where the instances should be created. | `string` | `null` | no |
| resource\_manager\_tags | (Optional) A tag is a key-value pair that can be attached to a Google Cloud resource. You can use tags to conditionally allow or deny policies based on whether a resource has a specific tag. This value is not returned by the API. In Terraform, this value cannot be updated and changing it will recreate the resource. | `map(string)` | `{}` | no |
| resource\_policies | (Optional) A list of short names or self\_links of resource policies to attach to the instance. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported. | `list(string)` | `[]` | no |
| static\_ips | List of static IPs for VM instances | `list(string)` | `[]` | no |
| subnetwork | Subnet to deploy to. Only one of network or subnetwork should be specified. | `string` | `""` | no |
Expand Down
4 changes: 4 additions & 0 deletions modules/compute_instance/main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,10 @@ resource "google_compute_instance_from_template" "compute_instance" {
resource_policies = var.resource_policies
labels = var.labels

params {
resource_manager_tags = var.resource_manager_tags
}

dynamic "network_interface" {
for_each = local.network_interface

Expand Down
6 changes: 6 additions & 0 deletions modules/compute_instance/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -122,3 +122,9 @@ variable "labels" {
description = "(Optional) Labels to override those from the template, provided as a map"
default = null
}

variable "resource_manager_tags" {
description = "(Optional) A tag is a key-value pair that can be attached to a Google Cloud resource. You can use tags to conditionally allow or deny policies based on whether a resource has a specific tag. This value is not returned by the API. In Terraform, this value cannot be updated and changing it will recreate the resource."
type = map(string)
default = {}
}

0 comments on commit 8758dd0

Please sign in to comment.