Open agilgur5 opened 2 years ago
Hi Are you accepting a PR request for this? I would very much like to work on this enhancement:)
Jotting another note here: I did try argo submit
's --dry-run
flag, but that doesn't template out the parameters
, it just outputs the Workflow
that will be passed to the Argo Server.
Adding --parameter-file
just inserts top-level defaults to the template, but doesn't fully template it out.
Discussed yesterday with @agilgur5 - I think this feature makes a lot of sense and is gaining a lot of support just in the last 6 months.
@agilgur5 - would you be open to adapting this issue into a short enhancement proposal PR? We can then ensure other maintainers give feedback on this.
@agilgur5 - would you be open to adapting this issue into a short enhancement proposal PR? We can then ensure other maintainers give feedback on this.
I think you meant a more formal, in-repo documented proposal like #10191? Those haven't seem to have gotten a lot of attention unfortunately 😕 (as you likely know well too) EDIT: It looks like there was an attempt to make a Proposal Template in #9857, but ironically that itself got closed as stale 😕
I was planning to just go straight to PR if I can find an optimal solution that does not really have any trade-offs. i.e. no real decision to be made, just an approval. Haven't had time to dive into this yet though (so haven't assigned myself)
Summary
Allow for local templating similar to
helm template
, so that users can iterate on aWorkflow
orWorkflowTemplate
definition locally and with a faster iteration than having to submit to an Argo Server.Such a feature would definitely help me and my teams iterate and test faster. I'd be willing to contribute this as well!
Use Cases
For quickly testing and debugging
Workflow
definitions locally and in CI, e.g.:Workflow
parameters
, currently I won't know until I submit it to a serversprig.toYaml
(which doesn't exist?), but wasn't able to tell I couldn't use that or that it didn't format myparameter
properly until I submit to a server. This makes for a slow feedback loop, on top of requiring a server and making it harder to test locally or in CI.input
instead ofinputs
orparameter
instead ofparameters
or a parameter that I forgot to define and so it doesn't exist, etc. Those are all actual mistakes I've made. This feature would make it easier to detect such a simple mistakeargo lint
does not (and likely cannot) catch all types of issues, particularly not the formatting of a stringmanifest
, for instance, but if I saw some wonky formatting in output similar tohelm template
, I could quickly figure out the issue.--parameter-file
, for instancehelm template <template> --values values-test.yml
--> ex.argo submit --template <workflow> --parameter-file parameters-test.yml
Message from the maintainers:
Love this enhancement proposal? Give it a 👍. We prioritise the proposals with the most 👍.