-
Notifications
You must be signed in to change notification settings - Fork 934
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Runtime parameters #129
Runtime parameters #129
Conversation
A very common scenario will be CI+CD pipelines that just want to run CI or CD, or a specific stage or deployment. Can you add examples for that? I'm especially interested in the UX design for these. Do have "built in" support for running a single stage or deployment? I'd like to have that so customer don't need to add a lot of variables. What are the most common scenarios? |
Can this be given a higher priority? Not being able to set variables at run time for multi stage YAML builds kinda makes the ability mute. Currently I bet a lot of people have copied builds with different steps and parameters setup because there is little way to control what steps run. Parameters that can be overridden at runtime is the only way to truly allow single multistage YAML builds to handle everything. |
Thanks for the feedback. I would like to point out that you can define variables for your YAML pipeline in the UI and mark them as "settable at queue time". I agree that it would be nice to be able to do this from within the YAML file, and we are starting the work for this. |
@vijayma While it is true that you can use the UI to create and set those they only work for conditions when you translate those back into variables and then evaluate in conditions. That workaround also only works at the job \ task level. When using multi stage YAML definitions it is tedious to copy and paste each condition evaluation to every single task. Otherwise expansion evaluation of the variables doesn't work at any higher level. - job
variables:
evalVar: $(setAtRuntimeVar)
steps:
- task: ANY
condition: eq(variables.evalVar, True) |
- ubuntu-latest | ||
- windows-latest | ||
- macos-latest | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In classic ADO build or release we go all with Variables and Variable groups. Here in YAML we have something like parameters and also variables. During build save or queue time does it show up parameters as variables or variables itself? What about global variables and system defined variables to display at queue time for user to change it if needed. Ex: System.Debug = true or false.
This needs fleshing out, but I wanted to put it up early for your thoughts.