When job parameters are defined in the Jenkinsfile/script, Jenkins doesn't know what parameters are required until the job is run. You see the problem? to run the job you need the parameters. To know what parameters are required to run the job.

      This is most visible with a new branch in multibranch jobs (there have been complaints).

      In scope:

      • Investigate if it is possible to know without executing what parameters will be required
      • If possible, an api to return such parameters

      This could span general pipeline script, or pipeline model.

          [JENKINS-40241] Detemine parameters before running job

          Michael Neale added a comment - - edited

          hrm ok.. this may have to sit in the backlog for a while.

          So whilst PR#60 helps with error message, it is still a broken UX that pops up for the wrong things... so we may need to park this for some future work to make it work out ahead of time what the params are via some kind of evaluation... I don't think this is a problem specific to declarative, and perhaps declarative shouldn't solve it?

          EDIT: I am prepared to park this and then let things come in as bug reports... more thought is needed ...

          Michael Neale added a comment - - edited hrm ok.. this may have to sit in the backlog for a while. So whilst PR#60 helps with error message, it is still a broken UX that pops up for the wrong things... so we may need to park this for some future work to make it work out ahead of time what the params are via some kind of evaluation... I don't think this is a problem specific to declarative, and perhaps declarative shouldn't solve it? EDIT: I am prepared to park this and then let things come in as bug reports... more thought is needed ...

          abayer although the params really works well, I would still add them to env too - thats just what people are used to.

          Dominik Bartholdi added a comment - abayer although the params really works well, I would still add them to env too - thats just what people are used to.

          James Dumay added a comment -

          James Dumay added a comment - vivek https://github.com/jenkinsci/blueocean-plugin/pull/669/files#r94509252

          Vivek Pandey added a comment -

          abayer params.foo will give it's default value, how about type? Can we get type value without executing a run of the script?

          Vivek Pandey added a comment - abayer params.foo will give it's default value, how about type? Can we get type value without executing a run of the script?

          James Dumay added a comment -

          This came up in discussion with a CB customer (for Script, but I was discussing that this was more viable to do in Declarative). Apart from schedule, what seems to be the blocker here?

          James Dumay added a comment - This came up in discussion with a CB customer (for Script, but I was discussing that this was more viable to do in Declarative). Apart from schedule, what seems to be the blocker here?

          This is marked as resolved, but by what? Is there an open PR somewhere we can look at? Would love to see this feature in our installation of Jenkins and wondering if its available in the latest release.

          Benjamin Goldberg added a comment - This is marked as resolved, but by what? Is there an open PR somewhere we can look at? Would love to see this feature in our installation of Jenkins and wondering if its available in the latest release.

          James Dumay added a comment -

          It's duplicated. See the linked tickets for where this is really tracked.

          James Dumay added a comment - It's duplicated. See the linked tickets for where this is really tracked.

          jamesdumay I clicked through a number of associated tickets (many of which are duplicated themselves) and I am unable to find the PR that resolves this issue. Any chance we could add the link here as well?

          Benjamin Goldberg added a comment - jamesdumay I clicked through a number of associated tickets (many of which are duplicated themselves) and I am unable to find the PR that resolves this issue. Any chance we could add the link here as well?

          Michael Neale added a comment -

          benjigoldberg https://issues.jenkins-ci.org/browse/JENKINS-41929 is ticket. There is no PR I am aware of that fixes this. Pipeline being scripted by default (outside of `pipeline`) makes this impossible in a sense (ie need to execute it before you know what parameters are used). Declarative has a chance that this can be elided pre-flight. 

          Michael Neale added a comment - benjigoldberg https://issues.jenkins-ci.org/browse/JENKINS-41929  is ticket. There is no PR I am aware of that fixes this. Pipeline being scripted by default (outside of `pipeline`) makes this impossible in a sense (ie need to execute it before you know what parameters are used). Declarative has a chance that this can be elided pre-flight. 

          Liam Newman added a comment -

          Bulk closing resolved issues.

          Liam Newman added a comment - Bulk closing resolved issues.

            abayer Andrew Bayer
            michaelneale Michael Neale
            Votes:
            4 Vote for this issue
            Watchers:
            17 Start watching this issue

              Created:
              Updated:
              Resolved: