Replies: 2 comments
-
Thanks for the feedback! I really appreciate asking about this, as this is something we've been working extra hard to get right. The challenge here is that we allow a schema-less k/v set of data to apply to the templates. This is great because it allows a huge set of flexibility in how to model the template to deploy and it's relatively easy to write down in yaml, all without having to have our team approve a PR. It's not-so-great if you want to model it at the command line. Your example works well, but how about a nested array or similar complicated structure? There is also all the different shells that we support, which may make that syntax hard or impossible to write down with their different parsing routines. Shell escaping characters is an art form, one that we want to try to avoid. I know bolt supports some k/v pairs on the command line for parts of it's app, and I also know the places where it doesn't work out so well at the commandline. I'm trying to avoid these problems with this project. That being said, we are trying out different ideas. We added #115 as a lighter weight approach to context specific data. It's not directly related to your question here, but is another option. Another approach we initially thought to try, but de-prioritized for now, is allowing prefixed environment variables. Something like: |
Beta Was this translation helpful? Give feedback.
-
#115 is merged and workspace configuration provides this functionality. |
Beta Was this translation helpful? Give feedback.
-
I'd rather supply one-off template default overrides from the command line than stop to make an override file each time.
Would it be possible to just tack on an extra options as k/v pairs, like how Bolt handles parameters?
Using the
example_template
from https://github.com/puppetlabs/pdkgo#overriding-template-defaults as an example:Beta Was this translation helpful? Give feedback.
All reactions