Controls how parameters defined here interact with any
parameters {} block declared inside the branch's
Jenkinsfile.
- Always replace (default)
- Only the parameters defined here are used. Any parameters declared in the
Jenkinsfile are completely ignored. The Jenkinsfile can still overwrite them
at build time, but the next scan restores the Multibranch params.
- Merge — Multibranch wins on conflict
- Parameters from both sources are combined. Jenkinsfile-only parameters are
preserved above the banner. When the same name appears in both, the
Multibranch definition takes precedence.
- Merge — Jenkinsfile wins on conflict
- Parameters from both sources are combined. All Jenkinsfile parameters are kept
as-is above the banner. When the same name appears in both, the Jenkinsfile
definition is kept. Only Multibranch parameters whose names are not already
defined by the Jenkinsfile are added below the banner.
- Dismiss Multibranch if Jenkinsfile defines any params
- Multibranch parameters are injected only until the first Jenkinsfile build runs.
Once a build has stored its own
parameters {} block, subsequent
scans leave those parameters untouched. Useful when Jenkinsfiles are expected
to be the long-term owner of their parameters.
Note: No policy can prevent a running Jenkinsfile from calling
properties() and overwriting parameters at build time — that happens
inside the pipeline execution. The plugin operates exclusively at scan time.