Parameters¶
The Parameters module allows you to specify build parameters for a job.
- Component: parameters
 Macro: parameter Entry Point: jenkins_jobs.parameters 
Example:
job:
  name: test_job
  parameters:
    - string:
        name: FOO
        default: bar
        description: "A parameter named FOO, defaults to 'bar'."
- 
bool¶ A boolean parameter.
Parameters: - name (str) – the name of the parameter
 - default (str) – the default value of the parameter (optional)
 - description (str) – a description of the parameter (optional)
 
Example:
parameters: - bool: name: FOO default: false description: "A parameter named FOO, defaults to 'false'."
- 
choice¶ A single selection parameter.
Parameters: - name (str) – the name of the parameter
 - choices (list) – the available choices, first one is the default one.
 - description (str) – a description of the parameter (optional)
 
Example:
parameters: - choice: name: project choices: - nova - glance description: "On which project to run?"
- 
copyartifact-build-selector¶ Control via a build parameter, which build the copyartifact plugin should copy when it is configured to use ‘build-param’. Requires the Jenkins Copy Artifact plugin.
Parameters: - name (str) – name of the build parameter to store the selection in
 - description (str) – a description of the parameter (optional)
 - which-build (str) – which to provide as the default value in the UI. See
which-buildparam ofcopyartifactfrom the builders module for the available values as well as options available that control additional behaviour for the selected value. 
Example:
parameters: - copyartifact-build-selector: name: BUILD_SELECTOR which-build: workspace-latest description: 'Which build from upstream to copy artifacts from'
- 
credentials¶ A credentials selection parameter. Requires the Jenkins Credentials Plugin.
Parameters: - name (str) – the name of the parameter
 - type (str) – 
credential type (optional, default ‘any’)
Allowed Values: - any Any credential type (default)
 - usernamepassword Username with password
 - sshkey SSH Username with private key
 - secretfile Secret file
 - secrettext Secret text
 - certificate Certificate
 
 - required (bool) – whether this parameter is required (optional, default false)
 - default (string) – default credentials ID (optional)
 - description (str) – a description of the parameter (optional)
 
Example:
parameters: - credentials: name: OS_CREDENTIALS type: usernamepassword default: "default-credentials-id" description: "Test credentials"
- 
dynamic-choice¶ Dynamic Choice Parameter Requires the Jenkins Jenkins Dynamic Parameter Plug-in.
Parameters: - name (str) – the name of the parameter
 - description (str) – a description of the parameter (optional)
 - script (str) – Groovy expression which generates the potential choices.
 - remote (bool) – the script will be executed on the slave where the build is started (default false)
 - classpath (str) – class path for script (optional)
 - read-only (bool) – user can’t modify parameter once populated (default false)
 
Example:
parameters: - dynamic-choice: name: OPTIONS description: "Available options" script: "['optionA', 'optionB']" remote: false read-only: false
- 
dynamic-choice-scriptler¶ Dynamic Choice Parameter (Scriptler) Requires the Jenkins Jenkins Dynamic Parameter Plug-in.
Parameters: - name (str) – the name of the parameter
 - description (str) – a description of the parameter (optional)
 - script-id (str) – Groovy script which generates the default value
 - parameters (list) – 
parameters to corresponding script
Parameter: - name (str) Parameter name
 - value (str) Parameter value
 
 - remote (bool) – the script will be executed on the slave where the build is started (default false)
 - read-only (bool) – user can’t modify parameter once populated (default false)
 
Example:
parameters: - dynamic-choice-scriptler: name: OPTIONS description: "Available options" script-id: "scriptid.groovy" parameters: - name: param1 value: value1 - name: param2 value: value2 remote: false read-only: false
- 
dynamic-string¶ Dynamic Parameter Requires the Jenkins Jenkins Dynamic Parameter Plug-in.
Parameters: - name (str) – the name of the parameter
 - description (str) – a description of the parameter (optional)
 - script (str) – Groovy expression which generates the potential choices
 - remote (bool) – the script will be executed on the slave where the build is started (default false)
 - classpath (str) – class path for script (optional)
 - read-only (bool) – user can’t modify parameter once populated (default false)
 
Example:
parameters: - dynamic-string: name: FOO description: "A parameter named FOO, defaults to 'bar'." script: "bar" remote: false read-only: false
- 
dynamic-string-scriptler¶ Dynamic Parameter (Scriptler) Requires the Jenkins Jenkins Dynamic Parameter Plug-in.
Parameters: - name (str) – the name of the parameter
 - description (str) – a description of the parameter (optional)
 - script-id (str) – Groovy script which generates the default value
 - parameters (list) – 
parameters to corresponding script
Parameter: - name (str) Parameter name
 - value (str) Parameter value
 
 - remote (bool) – the script will be executed on the slave where the build is started (default false)
 - read-only (bool) – user can’t modify parameter once populated (default false)
 
Example:
parameters: - dynamic-string-scriptler: name: FOO description: "A parameter named FOO, defaults to 'bar'." script-id: "scriptid.groovy" parameters: - name: param1 value: value1 - name: param2 value: value2 remote: false read-only: false
- 
extended-choice¶ Creates an extended choice parameter where values can be read from a file Requires the Jenkins Extended Choice Parameter Plugin.
Parameters: - name (str) – name of the parameter
 - description (str) – description of the parameter (optional, default ‘’)
 - property-file (str) – location of property file to read from (optional, default ‘’)
 - property-key (str) – key for the property-file (optional, default ‘’)
 - quote-value (bool) – whether to put quotes around the property when passing to Jenkins (optional, default false)
 - visible-items (str) – number of items to show in the list (optional, default 5)
 - type (str) – type of select, can be single-select, multi-select, radio, checkbox or textbox (optional, default single-select)
 - value (str) – comma separated list of values for the single select or multi-select box (optional, default ‘’)
 - default-value (str) – used to set the initial selection of the single-select or multi-select box (optional, default ‘’)
 - value-description (str) – comma separated list of value descriptions for the single select or multi-select box (optional, default ‘’)
 - default-property-file (str) – location of property file when default value needs to come from a property file (optional, default ‘’)
 - default-property-key (str) – key for the default property file (optional, default ‘’)
 - description-property-file (str) – location of property file when value description needs to come from a property file (optional, default ‘’)
 - description-property-key (str) – key for the value description property file (optional, default ‘’)
 - multi-select-delimiter (str) – value between selections when the parameter is a multi-select (optional, default ‘,’)
 - groovy-script (str) – the groovy script contents (optional, default ‘,’)
 - groovy-script-file (str) – location of groovy script file to generate parameters (optional, default ‘’)
 - bindings (str) – variable bindings for the groovy script (optional, default ‘’)
 - classpath (str) – the classpath for the groovy script (optional, default ‘,’)
 - default-groovy-script (str) – the default groovy script contents (optional, default ‘’)
 - default-groovy-classpath (str) – the default classpath for the groovy script (optional, default ‘’)
 - description-groovy-script (str) – location of groovy script when value description needs to come from a groovy script (optional, default ‘’)
 - description-groovy-classpath (str) – classpath for the value description groovy script (optional, default ‘’)
 
Minimal Example:
parameters: - extended-choice: name: OPTIONS description: "Available options" type: 'PT_CHECKBOX' value: OptionA,OptionB,OptionC
Full Example:
parameters: - extended-choice: name: OPTIONS description: "Available options" property-file: /home/foo/property.prop property-key: key quote-value: true type: multi-select value: "foo|bar|select" visible-items: 2 multi-select-delimiter: '|' default-value: foo default-property-file: /home/property.prop default-property-key: fookey - extended-choice: name: OPTIONS_CHECKBOX type: checkbox value: !join: - ',' - - OptionA - OptionB - OptionC visible-items: 2 - extended-choice: name: MULTISELECTOPTIONS description: "Available options" property-key: key quote-value: true type: multi-select value: !join: - '|' - - foo - bar - select visible-items: 2 multi-select-delimiter: '|' default-value: foo
- 
file¶ A file parameter.
Parameters: - name (str) – the target location for the file upload
 - description (str) – a description of the parameter (optional)
 
Example:
parameters: - file: name: test.txt description: "Upload test.txt."
- 
git-parameter¶ This parameter allows you to select a git tag, branch or revision number as parameter in Parametrized builds. Requires the Jenkins Git Parameter Plugin.
Parameters: - name (str) – Name of the parameter
 - description (str) – Description of the parameter (default ‘’)
 - type (str) – 
The type of the list of parameters (default ‘PT_TAG’)
Allowed Values: - PT_TAG list of all commit tags in repository -
 - returns Tag Name
 
- PT_BRANCH list of all branches in repository -
 - returns Branch Name
 
- PT_BRANCH_TAG list of all commit tags and all
 - branches in repository - returns Tag Name or Branch Name
 
- PT_REVISION list of all revision sha1 in repository
 - followed by its author and date - returns Tag SHA1
 
- PT_PULL_REQUEST
 
 - branch (str) – Name of branch to look in. Used only if listing revisions. (default ‘’)
 - branchFilter (str) – Regex used to filter displayed branches. If blank, the filter will default to “.*”. Remote branches will be listed with the remote name first. E.g., “origin/master” (default ‘.*’)
 - tagFilter (str) – Regex used to filter displayed branches. If blank, the filter will default to “.*”. Remote branches will be listed with the remote name first. E.g., “origin/master” (default ‘*’)
 - sortMode (str) – 
Mode of sorting. (default ‘NONE’)
Allowed Values: - NONE
 - DESCENDING
 - ASCENDING
 - ASCENDING_SMART
 - DESCENDING_SMART
 
 - defaultValue (str) – This value is returned when list is empty. (default ‘’)
 - selectedValue (str) – 
Which value is selected, after loaded parameters. If you choose ‘default’, but default value is not present on the list, nothing is selected. (default ‘NONE’)
Allowed Values: - NONE
 - TOP
 - DEFAULT
 
 - useRepository (str) – If in the task is defined multiple repositories parameter specifies which the repository is taken into account. If the parameter is not defined, is taken first defined repository. The parameter is a regular expression which is compared with a URL repository. (default ‘’)
 - quickFilterEnabled (bool) – When this option is enabled will show a text field. Parameter is filtered on the fly. (default false)
 
Minimal Example:
parameters: - git-parameter: name: Foo
Full Example:
parameters: - git-parameter: name: Foo description: Lorem ipsum dolor sit amet. type: PT_BRANCH_TAG branch: baz tagFilter: bam branchFilter: boo sortMode: ASCENDING defaultValue: bor selectedValue: TOP useRepository: buh quickFilterEnabled: true
Allows you to use parameters hidden from the build with parameter page. Requires the Jenkins Hidden Parameter Plugin.
Parameters: - name (str) – the name of the parameter
 - default (str) – the default value of the parameter (optional)
 - description (str) – a description of the parameter (optional)
 
Example:
parameters: - hidden: name: FOO default: bar description: A parameter named FOO, defaults to 'bar'
- 
label¶ A node label parameter.
Parameters: - name (str) – the name of the parameter
 - default (str) – the default value of the parameter (optional)
 - description (str) – a description of the parameter (optional)
 - all-nodes (bool) – to run job on all nodes matching label in parallel (default: false)
 - matching-label (str) – to run all nodes matching label ‘success’, ‘unstable’ or ‘allCases’ (optional)
 - node-eligibility (str) – all nodes, ignore temporary nodes or ignore temporary offline nodes (optional, default all nodes)
 
Example:
parameters: - label: name: EXAMPLE LABEL 1 description: "EXAMPLE LABEL DESCRIPTION 1" matching-label: "success" node-eligibility: "all"
- 
matrix-combinations¶ Matrix combinations parameter Requires the Jenkins Matrix Combinations Plugin.
Parameters: - name (str) – the name of the parameter
 - description (str) – a description of the parameter (optional)
 - filter (str) – Groovy expression to use filter the combination by default (optional)
 
Example:
parameters: - matrix-combinations: name: FOO description: "Select matrix combinations" filter: "platform == foo"
- 
maven-metadata¶ This parameter allows the resolution of maven artifact versions by contacting the repository and reading the maven-metadata.xml. Requires the Jenkins Maven Metadata Plugin.
Parameters: - name (str) – Name of the parameter
 - description (str) – Description of the parameter (optional)
 - repository-base-url (str) – URL from where you retrieve your artifacts (default ‘’)
 - repository-username (str) – Repository’s username if authentication is required. (default ‘’)
 - repository-password (str) – Repository’s password if authentication is required. (default ‘’)
 - artifact-group-id (str) – Unique project identifier (default ‘’)
 - artifact-id (str) – Name of the artifact without version (default ‘’)
 - packaging (str) – Artifact packaging option. Could be something such as jar, zip, pom…. (default ‘’)
 - versions-filter (str) – Specify a regular expression which will be used to filter the versions which are actually displayed when triggering a new build. (default ‘’)
 - default-value (str) – For features such as SVN polling a default value is required. If job will only be started manually, this field is not necessary. (default ‘’)
 - maximum-versions-to-display (str) – The maximum number of versions to display in the drop-down. Any non-number value as well as 0 or negative values will default to all. (default 10)
 - sorting-order (str) – ascending or descending (default descending)
 
Example:
parameters: - maven-metadata: name: 'maven metadata param' repository-base-url: 'http://nexus.example.com' repository-username: 'username' repository-password: 'password' artifact-group-id: 'com.example' artifact-id: 'example' packaging: 'jar' versions-filter: '[0-9]+' default-value: 'FIRST' maximum-versions-to-display: "5" sorting-order: "Ascending"
- 
node¶ Defines a list of nodes where this job could potentially be executed on. Restrict where this project can be run, If your using a node or label parameter to run your job on a particular node, you should not use the option “Restrict where this project can be run” in the job configuration - it will not have any effect to the selection of your node anymore!
Parameters: - name (str) – the name of the parameter
 - description (str) – a description of the parameter (optional)
 - default-slaves (list) – The nodes used when job gets triggered by anything else other than manually
 - allowed-slaves (list) – The nodes available for selection when job gets triggered manually. Empty means ‘All’.
 - ignore-offline-nodes (bool) – Ignore nodes not online or not having executors (default false)
 - allowed-multiselect (bool) – Allow multi node selection for concurrent builds - this option only makes sense (and must be selected!) in case the job is configured with: “Execute concurrent builds if necessary”. With this configuration the build will be executed on all the selected nodes in parallel. (default false)
 
Example:
parameters: - node: name: SLAVE_NAME description: "Select slave" allowed-slaves: - slave001 - slave002 - slave003 ignore-offline-nodes: true allowed-multiselect: true
- 
password¶ A password parameter.
Parameters: - name (str) – the name of the parameter
 - default (str) – the default value of the parameter (optional)
 - description (str) – a description of the parameter (optional)
 
Example:
parameters: - password: name: FOO default: 1HSC0Ts6E161FysGf+e1xasgsHkgleLh09JUTYnipPvw= description: "A parameter named FOO."
- 
promoted build¶ A promoted build parameter. Requires the Jenkins Promoted Builds Plugin.
Parameters: - name (str) – the name of the parameter (required)
 - project-name (str) – the job from which the user can pick runs (required)
 - promotion-name (str) – promotion process to choose from (optional)
 - description (str) – a description of the parameter (optional)
 
Example:
parameters: - promoted: name: FOO project-name: "foo-build" promotion-name: "passed-promotion" description: "Select a foo-build for promotion"
- 
random-string¶ This parameter generates a random string and passes it to the build, preventing Jenkins from combining queued builds. Requires the Jenkins Random String Parameter Plugin.
Parameters: - name (str) – Name of the parameter
 - description (str) – Description of the parameter (default ‘’)
 - failed-validation-message (str) – Failure message to display for invalid input (default ‘’)
 
Example:
parameters: - random-string: name: job-string description: "A random string passed to the job" failed-validation-message: "Your input string is invalid"
- 
run¶ A run parameter.
Parameters: - name (str) – the name of the parameter
 - project-name (str) – the name of job from which the user can pick runs
 - description (str) – a description of the parameter (optional)
 
Example:
parameters: - run: name: FOO project-name: "foo-build" description: "Select a foo-build for promotion"
- 
string¶ A string parameter.
Parameters: - name (str) – the name of the parameter
 - default (str) – the default value of the parameter (optional)
 - description (str) – a description of the parameter (optional)
 
Example:
parameters: - string: name: FOO default: bar description: "A parameter named FOO, defaults to 'bar'."
A svn tag parameter Requires the Jenkins Parameterized Trigger Plugin.
Parameters: - name (str) – the name of the parameter
 - url (str) – the url to list tags from
 - credentials-id (str) – Credentials ID to use for authentication (default ‘’)
 - filter (str) – the regular expression to filter tags (default ‘’)
 - default (str) – the default value of the parameter (default ‘’)
 - description (str) – a description of the parameter (default ‘’)
 - max-tags (int) – the number of tags to display (default ‘100’)
 - sort-newest-first (bool) – sort tags from newest to oldest (default true)
 - sort-z-to-a (bool) – sort tags in reverse alphabetical order (default false)
 
Example:
parameters: - svn-tags: name: BRANCH_NAME default: release description: A parameter named BRANCH_NAME default is release url: http://svn.example.com/repo filter: [A-za-z0-9]*
- 
text¶ A text parameter.
Parameters: - name (str) – the name of the parameter
 - default (str) – the default value of the parameter (optional)
 - description (str) – a description of the parameter (optional)
 
Example:
parameters: - text: name: FOO default: bar description: "A parameter named FOO, defaults to 'bar'."
- 
validating-string¶ A validating string parameter Requires the Jenkins Validating String Plugin.
Parameters: - name (str) – the name of the parameter
 - default (str) – the default value of the parameter (optional)
 - description (str) – a description of the parameter (optional)
 - regex (str) – a regular expression to validate the string
 - msg (str) – a message to display upon failed validation
 
Example:
parameters: - validating-string: name: FOO default: bar description: "A parameter named FOO, defaults to 'bar'." regex: [A-Za-z]* msg: Your entered value failed validation