Bird
Raised Fist0
Jenkinsdevops~10 mins

Steps within stages in Jenkins - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to define a stage with a single step that echoes a message.

Jenkins
pipeline {
  agent any
  stages {
    stage('Example') {
      steps {
        [1] 'Hello, Jenkins!'
      }
    }
  }
}
Drag options to blanks, or click blank then click option'
Ascript
Bsh
Cecho
Dinput
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'sh' without a shell command.
Using 'input' which waits for user input.
Using 'script' which is for running Groovy code blocks.
2fill in blank
medium

Complete the code to run a shell command inside a stage step.

Jenkins
pipeline {
  agent any
  stages {
    stage('Build') {
      steps {
        [1] 'make build'
      }
    }
  }
}
Drag options to blanks, or click blank then click option'
Ainput
Becho
Cbat
Dsh
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'echo' which only prints text.
Using 'bat' which is for Windows batch commands.
Using 'input' which pauses for user input.
3fill in blank
hard

Fix the error in the stage by completing the step to run a Windows batch command.

Jenkins
pipeline {
  agent any
  stages {
    stage('Test') {
      steps {
        [1] 'dir'
      }
    }
  }
}
Drag options to blanks, or click blank then click option'
Abat
Bsh
Cecho
Dpowershell
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'sh' which is for Unix shells.
Using 'echo' which only prints text.
Using 'powershell' which requires a different syntax.
4fill in blank
hard

Fill both blanks to create a stage with two steps: echo a message and run a shell command.

Jenkins
pipeline {
  agent any
  stages {
    stage('Deploy') {
      steps {
        [1] 'Starting deployment'
        [2] 'deploy.sh'
      }
    }
  }
}
Drag options to blanks, or click blank then click option'
Aecho
Bsh
Cbat
Dinput
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'bat' for shell commands on Unix.
Using 'input' which pauses the pipeline.
Mixing up the order of steps.
5fill in blank
hard

Fill all three blanks to create a stage with steps: echo a message, run a shell command, and pause for input.

Jenkins
pipeline {
  agent any
  stages {
    stage('Approval') {
      steps {
        [1] 'Ready for approval'
        [2] 'echo Waiting for user'
        [3] message: 'Proceed?', ok: 'Yes'
      }
    }
  }
}
Drag options to blanks, or click blank then click option'
Aecho
Bsh
Cinput
Dbat
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'bat' on Unix agents.
Skipping the input step for approval.
Using 'sh' for the input step.

Practice

(1/5)
1. What is the main purpose of steps inside a Jenkins stage?
easy
A. To define the actual commands or actions Jenkins will execute
B. To name the stage in the pipeline
C. To set environment variables for the pipeline
D. To configure Jenkins plugins

Solution

  1. Step 1: Understand the role of stages

    Stages organize the pipeline into sections but do not run commands themselves.
  2. Step 2: Identify what steps do inside stages

    Steps contain the actual commands or scripts Jenkins executes during that stage.
  3. Final Answer:

    To define the actual commands or actions Jenkins will execute -> Option A
  4. Quick Check:

    Steps = commands inside stages [OK]
Hint: Steps run commands; stages just group them [OK]
Common Mistakes:
  • Confusing stage name with steps
  • Thinking steps configure plugins
  • Believing steps set environment variables
2. Which of the following is the correct syntax to define a step that prints 'Hello World' inside a Jenkins declarative pipeline stage?
easy
A. script { print 'Hello World' }
B. steps { echo 'Hello World' }
C. steps: echo('Hello World')
D. stage { echo 'Hello World' }

Solution

  1. Step 1: Recall declarative pipeline syntax for steps

    Inside a stage, steps are defined with the steps { ... } block.
  2. Step 2: Check the correct command to print

    The echo command prints messages in Jenkins pipelines.
  3. Final Answer:

    steps { echo 'Hello World' } -> Option B
  4. Quick Check:

    steps block + echo command = correct syntax [OK]
Hint: Use steps { echo 'text' } to print in Jenkins [OK]
Common Mistakes:
  • Using stage instead of steps for commands
  • Wrong colon syntax in steps
  • Using print instead of echo
3. Given this Jenkins pipeline snippet, what will be the output in the console?
stage('Build') {
  steps {
    echo 'Starting build'
    sh 'echo Build complete'
  }
}
medium
A. Syntax error in pipeline
B. Build complete\nStarting build
C. Starting build only
D. Starting build\nBuild complete

Solution

  1. Step 1: Understand the order of steps execution

    Steps run sequentially: first echo 'Starting build', then shell command sh 'echo Build complete'.
  2. Step 2: Determine console output

    The first prints 'Starting build', the shell prints 'Build complete', so output is both lines in order.
  3. Final Answer:

    Starting build\nBuild complete -> Option D
  4. Quick Check:

    Steps run in order, echo then shell output [OK]
Hint: Steps run top to bottom, echo then shell output [OK]
Common Mistakes:
  • Assuming shell output appears before echo
  • Thinking only echo prints
  • Confusing syntax causing errors
4. Identify the error in this Jenkins pipeline stage and how to fix it:
stage('Test') {
  steps
    echo 'Running tests'
}
medium
A. stage keyword should be inside steps
B. echo command is invalid; use print instead
C. Missing curly braces {} after steps; add steps { ... }
D. No error; pipeline is correct

Solution

  1. Step 1: Check syntax for steps block

    The steps block must have curly braces enclosing commands: steps { ... }.
  2. Step 2: Identify missing braces causing syntax error

    Here, steps is followed directly by echo without braces, which is invalid.
  3. Final Answer:

    Missing curly braces {} after steps; add steps { ... } -> Option C
  4. Quick Check:

    steps block requires braces { } [OK]
Hint: Always wrap steps commands inside steps { } [OK]
Common Mistakes:
  • Omitting braces after steps
  • Using print instead of echo
  • Placing stage inside steps
5. You want to run multiple shell commands sequentially inside a Jenkins stage. Which is the best way to organize these steps?
hard
A. Use a single sh step with commands separated by semicolons inside steps { }
B. Write multiple stage blocks, each with one sh command
C. Put all commands inside environment block
D. Use multiple steps blocks inside one stage

Solution

  1. Step 1: Understand how to run multiple shell commands

    Multiple commands can be run in one sh step by separating them with semicolons.
  2. Step 2: Identify correct pipeline structure

    Only one steps block is allowed per stage; multiple commands go inside one sh step or multiple steps inside the block.
  3. Final Answer:

    Use a single sh step with commands separated by semicolons inside steps { } -> Option A
  4. Quick Check:

    One steps block + one sh with multiple commands [OK]
Hint: Combine shell commands with semicolons inside one sh step [OK]
Common Mistakes:
  • Using multiple stages for commands
  • Trying multiple steps blocks inside one stage
  • Putting commands in environment block
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