I am using Jenkins to create a build pipeline, and need to trigger a deployment step in the pipeline. This means a manual process (the build occurs automatically, timed, then stops at the deployment stage, waiting for manual authorization).
I need the deploy step to also be triggered with parameters from the prior step.
So, using the 'Parameterized plugin' I can pass parameters between jobs. I can trigger automated OR manually triggered downstream jobs (not sure if this is a standard feature, or manual builds was added by some plugin).
However, I cannot find any way to trigger a manual parameterized job.
Does anyone know of a way to do this? Is there another plugin I can use?
The reason I need the parameters is that I have created a generic deployment job, and need to pass in the module name, and maven version to deploy. I could create specific deployment jobs for each module, but this would be very painful.
I have also been considering the following, but it seems a kludge:
- Automated job performs build, triggers 'deployment trigger' build, passing parameters.
- 'Deployment trigger' writes these parameters to a file on the filesystem (build step - shell execution), and manually triggers the actual deployment job
- Deployment job (MUST use the WORKSPACE from the 'deployment trigger' job) reads parameters from the filesystem (using EnvInject plugin).
There are various problems with this approach
- I just don't like it.
- Has an intermediate jobs just to pass parameters. This clutters the Jenkins workspace
- As builds are performed on the same WORKSPACE, seems fragile to me (though workable!)