Bot releases are visible (Hide)
id
component: tenant
labels_as_tags
controls which labels are exported as tagsdescriptor_formats
generates new output descriptors
terraform-terraform-label
null-label
tenant
, labels_as_tags
, descriptor_formats
, add additional clarification, stop promoting obsolete module.gitignore
The PR can and should be merged into master
to update README and Bridgecrew without triggering a new release/version. These changes have no effect on the actual module in use and a release will create unnecessary ripple effects. However, merging to master
will update the README and badges, so is worthwhile, and the changes will move forward into the next release.
Published by cloudpossebot about 3 years ago
id
component: tenant
labels_as_tags
controls which labels are exported as tagsdescriptor_formats
generates new output descriptors
terraform-terraform-label
null-label
tenant
, labels_as_tags
, descriptor_formats
, add additional clarification, stop promoting obsolete module.gitignore
The PR can and should be merged into master
to update README and Bridgecrew without triggering a new release/version. These changes have no effect on the actual module in use and a release will create unnecessary ripple effects. However, merging to master
will update the README and badges, so is worthwhile, and the changes will move forward into the next release.
Published by cloudpossebot over 3 years ago
You now have control over the letter case of generated tag names and supplied labels, which means you also have control over the letter case of the ultimate id
.
Labels are the elements you can include in label_order
, namely namespace
, environment
, stage
, name
, and attributes
. For every non-empty label, a corresponding tag name is generated. For namespace
, environment
, stage
, the output is the formatted, normalized input. (By "normalized" we mean that it goes through regex_replace_chars
.), For attributes
, which is a list, each element is normalized, duplicates are removed, and the resulting list is converted to a string by joining the elements with the delimiter
(defaults to hyphen). For name
, which is special, the output is the same as id
, which is the joining of the labels in the order specified by label_order
and separated by delimiter
.
label_key_case
to one of upper
, lower
, or title
, which will result in generated tag
names in the corresponding case: NAME
, name
, or Name
. For backwards compatibility, title
is the defaultlabel_value_case
to one of upper
, lower
, title
, or none
, which will result in output label values in the corresponding case (with none
meaning no case conversion of any kind will be done, though the labels will still be subject to regex_replace_chars
). The case converted labels will show up not just in the module output of the labels themselves, but also in the tag
values and in the id
string.You can look at the test cases in examples/complete
and the expected results in test/src/examples_complete_test.go
to see examples of how this is supposed to work.
One interesting example is that you can create id
s in Pascal case by setting label_value_case = "title"
and delimiter = ""
.
exports/context.tf
id_length_limit
exports/context.tf
is what gets distributed and needs to be in synclabel_key_case
and label_value_case
by vars, not just by context attributes.Incorporates and closes #120
This version introduced a bug fix that technically is a breaking change.
The input regex_replace_chars
specifies a regular expression, and characters matching it are removed
from labels/id elements. Prior to this release, if the delimiter
itself matched the regular expression,
then the delimiter would be removed from the attributes
portion of the id
. This was not a problem
for most users, since the default delimiter was -
(dash) and the default regex allowed dashes, but
if you customized the delimiter and/or regex, this could affect you.
Published by cloudpossebot over 3 years ago
label_key_case
and label_value_case
by vars, not just by context attributes.Incorporates and closes #120
You now have control over the letter case of generated tag names and supplied labels, which means you also have control over the letter case of the ultimate id
.
Labels are the elements you can include in label_order
, namely namespace
, environment
, stage
, name
, and attributes
. For every non-empty label, a corresponding tag name is generated. For namespace
, environment
, stage
, the output is the formatted, normalized input. (By "normalized" we mean that it goes through regex_replace_chars
.), For attributes
, which is a list, each element is normalized, duplicates are removed, and the resulting list is converted to a string by joining the elements with the delimiter
(defaults to hyphen). For name
, which is special, the output is the same as id
, which is the joining of the labels in the order specified by label_order
and separated by delimiter
.
label_key_case
to one of upper
, lower
, or title
, which will result in generated tag
names in the corresponding case: NAME
, name
, or Name
. For backwards compatibility, title
is the defaultlabel_value_case
to one of upper
, lower
, title
, or none
, which will result in output label values in the corresponding case (with none
meaning no case conversion of any kind will be done, though the labels will still be subject to regex_replace_chars
). The case converted labels will show up not just in the module output of the labels themselves, but also in the tag
values and in the id
string.You can look at the test cases in examples/complete
and the expected results in test/src/examples_complete_test.go
to see examples of how this is supposed to work.
One interesting example is that you can create id
s in Pascal case by setting label_value_case = "title"
and delimiter = ""
.
exports/context.tf
still not backwards compatibleid_length
not included in exports/context.tf
Published by cloudpossebot over 3 years ago
null-label
. The canonical context = module.this.context
fails if module.this.context
is an older versioncontext.tf
does not incorporate var.label_key_case
and var.label_value_case
into the module.this
object, preventing those variables from taking effect in the root module's module.this
.With this release, you gain control over the letter case of generated tag names and supplied labels, which means you also have control over the letter case of the ultimate id
.
Labels are the elements you can include in label_order
, namely namespace
, environment
, stage
, name
, and attributes
. For every non-empty label, a corresponding tag name is generated. For namespace
, environment
, stage
, the output is the formatted, normalized input. (By "normalized" we mean that it goes through regex_replace_chars
.), For attributes
, which is a list, each element is normalized, duplicates are removed, and the resulting list is converted to a string by joining the elements with the delimiter
(defaults to hyphen). For name
, which is special, the output is the same as id
, which is the joining of the labels in the order specified by label_order
and separated by delimiter
.
label_key_case
to one of upper
, lower
, or title
, which will result in generated tag
names in the corresponding case: NAME
, name
, or Name
. For backwards compatibility, title
is the defaultlabel_value_case
to one of upper
, lower
, title
, or none
, which will result in output label values in the corresponding case (with none
meaning no case conversion of any kind will be done, though the labels will still be subject to regex_replace_chars
). The case converted labels will show up not just in the module output of the labels themselves, but also in the tag
values and in the id
string.You can look at the test cases in examples/complete
and the expected results in test/src/examples_complete_test.go
to see examples of how this is supposed to work.
One interesting example is that you can create id
s in Pascal case by setting label_value_case = "title"
and delimiter = ""
.
Published by cloudpossebot almost 4 years ago
var.attributes
to end of context.attributes
, not vice versaPublished by cloudpossebot almost 4 years ago
Breaking change: This release updates minimum Terraform version requirement to 0.12.26
context.tf
to use registry reference>= 0.12.26
context.tf
Published by cloudpossebot almost 4 years ago
null-label
version used for exporting into other modulesexports/context.tf
to be exported into other modulesPublished by github-actions[bot] almost 4 years ago
Adds support for Terraform 0..14
(currently in beta2
)
I've currently got it pinned to < 0.14.1
to be conservative. Can update to < 0.15
or similar.
versions.tf
to support terraform 0.14
0.13
. The proposed workaround for that unrelated issue does not work for me at this time.0.14
which is in beta, now.Fixes https://github.com/cloudposse/terraform-null-label/issues/104
Published by github-actions[bot] about 4 years ago
context.tf
(examples/autoscalinggroup/context.tf
) with copy of filecontext.tf
and clean up documentation comments inside the filePublished by github-actions[bot] about 4 years ago
module.this.context.var
to reference the input value with null
defaults and module.this.var
to reference the normalized value with nulls replaced by actual default values.context
for input and chainingPublished by github-actions[bot] about 4 years ago
context
object concept:
context
output contained normalized and generated data. This has now been renamed normalized_context
context
object output simply propagates the input unmodifiedcontext.tf
file can be dropped into any module to provide standard context inputs and a context output (module.this.context
) that can be fed into other modulesid
length limit:
id_max_length
to id_length_limit
id
is truncated, it is truncate to exactly id_length_limit
charactersdelimiter = ""
. Closes #77id
more intuitive. Since id
is also used as a tag value, and AWS limits tag value length to 255 characters, limit the id
length by default so it will not break AWS.Published by Nuru about 4 years ago
This is a pre-release, to thank @tibbing for his contribution. There will be breaking changes to this feature in the next release.
#98 Thanks to @tibbing
id_max_length
, that when set to a value greater than 0 will limit the length of ID output to given value.id_full
.id_max_length
is 0, so that the change is not breaking any existing usages.Published by aknysh almost 5 years ago
Published by aknysh about 5 years ago
null_resource
with Terraform 0.12 for-logicPublished by aknysh over 5 years ago
Published by aknysh over 5 years ago
required_providers
to pin Terraform providersrequired_providers
block allows specifying only the required provider version for the module without the need to specify all providers with versions explicitlyPublished by aknysh over 5 years ago
versions.tf
versions.tf
is also automatically added by terraform 0.12upgrade
toolPublished by aknysh over 5 years ago
terraform-modules
project