...
Tell Terraform to Ignore the Tags
You can There are two options to tell Terraform to ignore those tags by adding a lifecycle
stanza to the resource the "cit:" tags, depending on the AWS provider version you are using:
- If using AWS provider version >= 2.60.0, you can configure a global
ignore_tags
setting in the provider configuration. This is by far the simplest approach. - If using an earlier provider version, you will need to a
lifecycle
stanza to the all the affected resources and setting theignore_changes
attribute
...
- .
...
Info |
---|
Since the "Cost Center" tag is added only to a new Transit Gateway Attachment that will be added to VPCs, you donprobably won't strictly need to include it in configurations shown below, unless you plan to import the |
ignore_tags
in AWS Provider Configuration
This option can be used for any AWS provider version >= 2.60.0
Code Block |
---|
provider "aws" {
# ... potentially other configuration ...
ignore_tags {
key_prefixes = ["cit:"]
}
} |
ignore_changes
in lifecycle
stanza for Each Resource
Terraform Versions >= 0.12.3
Code Block | ||
---|---|---|
| ||
resource "aws_subnet" "example" { cidr_block = "10.92.117.128/25" vpc_id = aws_vpc.example.id ... tags = { Name = "example-subnet" } lifecycle { ignore_changes = [ tags["cit:dc-arch-migration-description"], tags["cit:dc-arch-migration-target"], tags["cit:dc-arch-version"], tags["cit:dc-vgw"], tags["cit:subnet-type"], tags["cit:tgw-attachment-target"], tags["cit:tgw-attachment-guidance"], tags["Cost Center"], ] } } |
Terraform Version 0.12.0 through 0.12.2
You will need to upgrade Terraform to at least version 0.12.3 and then use the configuration above.
Terraform Versions 0.11.x
Code Block | ||
---|---|---|
| ||
resource "aws_subnet" "example" { cidr_block = "10.92.117.128/25" vpc_id = aws_vpc.example.id ... tags = { Name = "example-subnet" } lifecycle { ignore_changes = [ "tags.%", "tags.cit:dc-arch-migration-description", "tags.cit:dc-arch-migration-target", "tags.cit:dc-arch-version", "tags.cit:dc-vgw", "tags.cit:subnet-type", "tags.cit:tgw-attachment-target", "tags.cit:tgw-attachment-guidance", "tags.Cost Center", ] } } |
Last Ditch Options
If your Terraform version or AWS provider version doesn't support (or behave as expected) with the options above, you should be able to, at least, tell Terraform to ignore all changes to tags, as shown below:
...