I'm currently working on a project in which we have a jenkins instance running side by side with a separate website, and the workflow is such that users are expected to click links in the website, which trigger jenkins jobs in the jenkins instance.
The jenkins job that gets triggered has dozens of parameters, and what we're currently doing is that the website will construct a URL like this with javascript:
https://JENKINS_HOST/job/JOB_NAME/buildWithParameters?DOZENS=of&PARAMETERES=here&delay=0sec
And then the user will click this (sending a GET request), jenkins shows a little warning page saying "You should use POST instead, click Proceed to proceed anyway."
It used to be that after clicking proceed you'd get sent to the job page where you could see the status of the job, but we've recently upgraded jenkins and now only get a blank white screen after clicking proceed.
I saw another answer on here where the solution to the "blank white screen" problem is to submit a POST instead of a get, but that's problematic for us, because both our Jenkins and our secondary website are exposed to the public internet, so we can't just generate an API token to use for trigger jobs because it would mean any random person could come trigger our jobs. We handle security by using the openid plugin and some ACLs based on that, so we actually need to be able to do a GET request, have the user log in if they aren't already, and then submit the job as the logged-in user.
So, is there a way to, instead of "triggering the job remotely", just display the build parameters form, but with values pre-filled in by GET parameters? This way our users would be able to visually review the parameters and potentially make corrections before clicking 'Build' and then watching the status update live.
All the documentation I've been able to find so far assumes that the jobs will be triggered by scripts and gives examples of how to submit POST requests with curl, but that sort of thing doesn't help me. I want humans to trigger jobs interactively and the current experience is not particularly user friendly.
Thanks.