Enable on-demand workflows with user-input

I was looking for a way to manually trigger a job that is not specific to a git commit. Like restart an already deployed service. This requires a job that takes service name and environment name as parameters.

It does not seem possible to get the user to choose these when the approval is thumbed up. I tried defining pipeline parameters as it seems these could be input from the build page.

However in practice this is not a practical solution: to see the Trigger Pipeline button the user must choose a specific branch, then click the button, then expand the Pipeline Parameters item, then manualliy enter the names of the parameters.

I don’t understand why that dialog doesn’t show the items from the top level parameters element that is in my config.yml, having to remember parameter names and values is a no-go. Also the pipeline parameters accept enum but this is not one of the parameter types that appears.

There should be a way to just run workflows manually, with user input:

  • these workflows would be defined perhaps in a separate yml file,
  • they would appear in a separate section of the gui, eg for a specific project there would be an additional button “non-commit jobs”
  • In the gui you could just click on any of the workflows on that page to start it, this would show a dialog where you could override the default values for workflow parameters, and off you go
  • workflows would have to have a parameters element like jobs do. These could be referenced via << workflow.parameters >>.
2 Likes