cloudposse/terraform-null-label
### [`v0.24.0`](https://togithub.com/cloudposse/terraform-null-label/releases/0.24.0)
[Compare Source](https://togithub.com/cloudposse/terraform-null-label/compare/0.23.0...0.24.0)
Restore backward compatibility with v0.22.1 and earlier @Nuru (#121)
##### what
- Restore backward compatibility with v0.22.1 and earlier
- Allow setting of `label_key_case` and `label_value_case` by vars, not just by context attributes.
##### why
- Allow interoperability of old and new modules
- Normally, root modules make settings via individual variables, not by setting an entire context block.
Incorporates and closes [#120](https://togithub.com/cloudposse/terraform-null-label/issues/120)
Allow control of letter case of outputs @SweetOps (#107)
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`.
- You can set `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 default
- You can set `label_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 = ""`.
### [`v0.23.0`](https://togithub.com/cloudposse/terraform-null-label/releases/0.23.0)
[Compare Source](https://togithub.com/cloudposse/terraform-null-label/compare/0.22.1...0.23.0)
- feat: add support for setting letter case of context tags [@SweetOps](https://togithub.com/SweetOps) ([#107](https://togithub.com/cloudposse/terraform-null-label/issues/107))
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`.
- You can set `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 default
- You can set `label_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 = ""`.
Renovate configuration
:date: Schedule: At any time (no schedule defined).
:vertical_traffic_light: Automerge: Disabled by config. Please merge this manually once you are satisfied.
:recycle: Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
:no_bell: Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR contains the following updates:
0.22.1
->0.24.0
Release Notes
cloudposse/terraform-null-label
### [`v0.24.0`](https://togithub.com/cloudposse/terraform-null-label/releases/0.24.0) [Compare Source](https://togithub.com/cloudposse/terraform-null-label/compare/0.23.0...0.24.0)Restore backward compatibility with v0.22.1 and earlier @Nuru (#121)
##### what - Restore backward compatibility with v0.22.1 and earlier - Allow setting of `label_key_case` and `label_value_case` by vars, not just by context attributes. ##### why - Allow interoperability of old and new modules - Normally, root modules make settings via individual variables, not by setting an entire context block. Incorporates and closes [#120](https://togithub.com/cloudposse/terraform-null-label/issues/120)Allow control of letter case of outputs @SweetOps (#107)
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`. - You can set `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 default - You can set `label_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 = ""`.Renovate configuration
:date: Schedule: At any time (no schedule defined).
:vertical_traffic_light: Automerge: Disabled by config. Please merge this manually once you are satisfied.
:recycle: Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
:no_bell: Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by WhiteSource Renovate. View repository job log here.