Open Gowiem opened 3 years ago
This functionality is there already.
When I’m building modules or terraform I start with a label module that contains only the prefix values.
Then every other label I make I pass the context of that label module to it, and just add the name field, and some times some extra tags.
Then it’s very dry.
But I don’t see a reason not to also add a prefix output.
Regards
Jamie Nelson -/-
On Apr 7, 2021, at 7:23 AM, Matt Gowie @.***> wrote:
Describe the Feature
I find it common that folks will utilize what I think of as the label's prefix (e.g. ${namespace}-${stage}-${environment}) as a string interpolation prefix to some identifier that they want to create without building a full label.
Most of the time this is used as a crutch to avoid having to create a label module for each namable thing that you're working on. It could definitely be argued that this is a bad practice and that it shouldn't be done... but I've seen it enough now across multiple codebases that I know I'm not the only one who does it so figured this proposal was worth the discussion.
The proposal is to add a new output called prefix that is simply all label components up until the name component. e.g. ${namespace}-${stage}-${environment}, ${namespace}-${stage}, ${namespace}-${environment}, etc.
I would need to look into the code more to determine how we would handle that in regards to the label ordering... but figured I could bring this up for discussion before coming up with a proper solution.
Use Case
This would enable not having to create this label prefix for ad-hoc usages and therefore dry up some terraform string interpolation code.
Alternatives Considered
Alternatives:
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe.
@Jamie-BitFlight yeah I get that POV and after getting the thoughts from the wider Cloud Posse team on this I'm going to close out.
I'm going to reopen this for discussion... I still see it being done and I honestly this it has merit. I'm not sure if this is just me being bull headed and misremember my conversation with the community, but I want this to be discussed here in this issue before calling it closed as I'm coming back this issue years later and still wanting this functionality
Describe the Feature
I find it common that folks will utilize what I think of as the label's prefix (e.g.
${namespace}-${stage}-${environment}
) as a string interpolation prefix to some identifier that they want to create without building a full label.Most of the time this is used as a crutch to avoid having to create a label module for each namable thing that you're working on. It could definitely be argued that this is a bad practice and that it shouldn't be done... but I've seen it enough now across multiple codebases that I know I'm not the only one who does it so figured this proposal was worth the discussion.
The proposal is to add a new output called
prefix
that is simply all label components up until thename
component. e.g.${namespace}-${stage}-${environment}
,${namespace}-${stage}
,${namespace}-${environment}
, etc.I would need to look into the code more to determine how we would handle that in regards to the label ordering... but figured I could bring this up for discussion before coming up with a proper solution.
Use Case
This would enable not having to create this label prefix for ad-hoc usages and therefore dry up some terraform string interpolation code.
Alternatives Considered
Alternatives:
prefix
label that is only made up of the components that you want instead of outputting the prefix from more specific labels.