-
Improvement
-
Resolution: Unresolved
-
Blocker
-
None
Steps to reproduce:
1. create job Foo with two string parameters: MAJOR, with default value '1', MINOR, with default value '0'
2. create job Bar with a groovy post-build hook thus:
def params = [] params.push( new StringParameterValue( 'MINOR', 2 ) ) def foo = manager.hudson.getJob( 'Foo' ) foo.scheduleBuild( 2, new Cause.UpstreamCause( manager.build ), new ParametersAction( params ) )
3. build Bar
Expected Result:
Foo builds with parameter values MAJOR=1, MINOR=2
Actual Result:
Foo build with parameter values MINOR=2
If MAJOR isn't specified in the parameter list when invoking the build, it should use the default value in Foo's configuration. Instead, the parameter isn't evaluated at all.
- is related to
-
JENKINS-31897 Default parameter value is not used
-
- Resolved
-
-
JENKINS-30178 Regression: parameters are not set on commit notification
-
- Closed
-
- relates to
-
JENKINS-42698 Support default value for parameters if they are not set
-
- Resolved
-
This occurs with the Parametrised trigger as well so it is core issue in that declared parameters are not enforced to be present. This is caused because the script and Parametrised trigger both call scheduleBuild() directly without the ParametersDefinitionProperty handling the starting parameters, as would occur if doBuild() or buildWithParameters() is called.