Bird
Raised Fist0
Jenkinsdevops~5 mins

Parameters block declaration in Jenkins - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is the purpose of the parameters block in a Jenkins pipeline?
The parameters block lets you define inputs that users can provide when starting a Jenkins job. These inputs can control how the job runs.
Click to reveal answer
beginner
Name two common parameter types you can declare inside the parameters block.
Two common parameter types are string for text input and booleanParam for true/false choices.
Click to reveal answer
beginner
How do you declare a string parameter named BRANCH with a default value of main?
Use string(name: 'BRANCH', defaultValue: 'main', description: 'Git branch to build') inside the parameters block.
Click to reveal answer
beginner
What happens if you run a Jenkins pipeline with a parameters block but do not provide any input values?
Jenkins uses the default values defined in the parameters block for the job run.
Click to reveal answer
beginner
Show a simple example of a parameters block with a string and a boolean parameter.
parameters { string(name: 'ENV', defaultValue: 'dev', description: 'Environment') booleanParam(name: 'DEBUG', defaultValue: false, description: 'Enable debug mode') }
Click to reveal answer
What is the correct syntax to declare a boolean parameter named RUN_TESTS with default true?
Abool(name: 'RUN_TESTS', default: true)
BparamBoolean('RUN_TESTS', true)
Cboolean(name: 'RUN_TESTS', defaultValue: true)
DbooleanParam(name: 'RUN_TESTS', defaultValue: true, description: 'Run tests?')
Where do you place the parameters block in a Jenkins declarative pipeline?
AOutside the <code>pipeline</code> block
BInside a <code>stage</code> block
CInside the <code>pipeline</code> block but outside <code>stages</code>
DInside the <code>steps</code> block
What type of parameter would you use to let users pick from a list of options?
Achoice
Bstring
CbooleanParam
Dtext
If you want to ask users for a multi-line text input, which parameter type should you use?
Astring
Btext
CbooleanParam
Dchoice
What happens if you omit the parameters block in a Jenkins pipeline?
AThe pipeline runs without asking for inputs
BThe pipeline asks for inputs anyway
CJenkins throws an error
DThe pipeline will not run
Explain how to declare and use parameters in a Jenkins declarative pipeline.
Think about where the parameters block goes and how users provide inputs.
You got /4 concepts.
    Describe the difference between string and choice parameters in Jenkins.
    Consider how users select or enter values.
    You got /3 concepts.

      Practice

      (1/5)
      1. What is the purpose of the parameters block in a Jenkins pipeline?
      easy
      A. To define inputs that users can provide before the job runs
      B. To specify the stages of the pipeline
      C. To set environment variables for the pipeline
      D. To declare the agent where the pipeline runs

      Solution

      1. Step 1: Understand the role of the parameters block

        The parameters block is used to ask users for input before the pipeline starts.
      2. Step 2: Compare with other pipeline blocks

        Other blocks like stages define pipeline steps, environment sets variables, and agent defines the execution node.
      3. Final Answer:

        To define inputs that users can provide before the job runs -> Option A
      4. Quick Check:

        parameters block = user inputs [OK]
      Hint: Parameters block = user input before job runs [OK]
      Common Mistakes:
      • Confusing parameters with stages
      • Thinking parameters set environment variables
      • Mixing parameters with agent declaration
      2. Which of the following is the correct syntax to declare a string parameter named VERSION in a Jenkins pipeline?
      easy
      A. parameters { param string VERSION = '1.0' }
      B. parameters { string VERSION = '1.0' }
      C. parameters { string(name: 'VERSION', defaultValue: '1.0', description: 'Version number') }
      D. parameters { string VERSION: '1.0' }

      Solution

      1. Step 1: Recall correct string parameter syntax

        The correct syntax uses string(name: 'NAME', defaultValue: 'value', description: 'text').
      2. Step 2: Check each option

        parameters { string(name: 'VERSION', defaultValue: '1.0', description: 'Version number') } matches the correct syntax. The other options use invalid or incorrect syntax.
      3. Final Answer:

        parameters { string(name: 'VERSION', defaultValue: '1.0', description: 'Version number') } -> Option C
      4. Quick Check:

        Correct string param syntax = parameters { string(name: 'VERSION', defaultValue: '1.0', description: 'Version number') } [OK]
      Hint: Use string(name: 'NAME', defaultValue: '', description: '') [OK]
      Common Mistakes:
      • Using assignment (=) inside parameters block
      • Omitting parameter name key
      • Incorrect parameter declaration keywords
      3. Given this Jenkins pipeline snippet:
      pipeline {
        agent any
        parameters {
          booleanParam(name: 'DEPLOY', defaultValue: true, description: 'Deploy to production?')
        }
        stages {
          stage('Check') {
            steps {
              script {
                if (params.DEPLOY) {
                  echo 'Deploying...'
                } else {
                  echo 'Skipping deploy'
                }
              }
            }
          }
        }
      }

      What will Jenkins print if the user selects false for DEPLOY?
      medium
      A. Deploying...
      B. No output
      C. Error: DEPLOY parameter not found
      D. Skipping deploy

      Solution

      1. Step 1: Understand booleanParam usage

        The parameter DEPLOY is a boolean with default true, but user selects false.
      2. Step 2: Follow the if condition in script

        If params.DEPLOY is true, it prints 'Deploying...'; else it prints 'Skipping deploy'. Since user chose false, it prints 'Skipping deploy'.
      3. Final Answer:

        Skipping deploy -> Option D
      4. Quick Check:

        params.DEPLOY false = 'Skipping deploy' [OK]
      Hint: Boolean param false triggers else branch [OK]
      Common Mistakes:
      • Assuming defaultValue always used ignoring user input
      • Confusing parameter name case sensitivity
      • Expecting error when parameter is valid
      4. Identify the error in this parameters block:
      parameters {
        choice(name: 'ENV', choices: 'dev\nstaging\nprod', description: 'Select environment')
        string(name: 'TAG', default: 'latest', description: 'Docker tag')
      }
      medium
      A. The choices string should use commas instead of newlines
      B. The string parameter uses 'default' instead of 'defaultValue'
      C. The choice parameter name must be uppercase
      D. Parameters block cannot have multiple parameters

      Solution

      1. Step 1: Check choice parameter syntax

        Choice parameter uses a newline-separated string for choices, which is correct.
      2. Step 2: Check string parameter syntax

        String parameter must use 'defaultValue', not 'default'. This causes a syntax error.
      3. Final Answer:

        The string parameter uses 'default' instead of 'defaultValue' -> Option B
      4. Quick Check:

        String param defaultValue key required [OK]
      Hint: Use defaultValue, not default, for string parameters [OK]
      Common Mistakes:
      • Using 'default' instead of 'defaultValue'
      • Misformatting choices string
      • Assuming parameter names must be uppercase
      5. You want to create a Jenkins pipeline that asks the user to select multiple branches to build from a list, but Jenkins does not have a built-in multi-select parameter. How can you simulate this using the parameters block?
      hard
      A. Use a string parameter where the user enters branch names separated by commas
      B. Use multiple boolean parameters, one for each branch
      C. Use a choice parameter with multiple selections enabled
      D. Use a password parameter to hide branch names

      Solution

      1. Step 1: Understand Jenkins parameter limitations

        Jenkins does not support multi-select choice parameters natively.
      2. Step 2: Find workaround using string parameter

        Using a string parameter, users can input multiple branch names separated by commas, which the pipeline can parse.
      3. Step 3: Evaluate other options

        Multiple booleans are cumbersome for many branches; choice parameter does not support multi-select; password parameter hides input but is unrelated.
      4. Final Answer:

        Use a string parameter where the user enters branch names separated by commas -> Option A
      5. Quick Check:

        Simulate multi-select with string input [OK]
      Hint: Use comma-separated string input for multi-select simulation [OK]
      Common Mistakes:
      • Expecting multi-select choice parameter exists
      • Using many booleans for many options
      • Misusing password parameter for selection
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard