Practice
1. What is the main purpose of a CI/CD pipeline in a Spring Boot project?
easy
Solution
Step 1: Understand CI/CD pipeline role
A CI/CD pipeline automates repetitive tasks like building, testing, and deploying software.Step 2: Match with Spring Boot context
In Spring Boot projects, this automation helps deliver updates faster and catch errors early.Final Answer:
To automate building, testing, and deploying the application -> Option AQuick Check:
CI/CD pipeline = automation of build, test, deploy [OK]
Hint: CI/CD means automate build, test, deploy steps [OK]
Common Mistakes:
- Confusing CI/CD with coding or UI design
- Thinking CI/CD manages database manually
- Assuming CI/CD replaces writing code
2. Which of the following is the correct syntax to define a stage in a Jenkins pipeline for building a Spring Boot app?
easy
Solution
Step 1: Recall Jenkins pipeline syntax
Jenkins usesstage('Name') { steps { ... } }to define stages.Step 2: Verify correct command inside steps
The shell commandsh 'mvn clean package'is correct for building a Spring Boot app with Maven.Final Answer:
stage('Build') { steps { sh 'mvn clean package' } } -> Option DQuick Check:
Jenkins stage syntax = stage + steps + sh [OK]
Hint: Jenkins stages use stage('name') with steps block [OK]
Common Mistakes:
- Using incorrect keywords like buildStage or pipelineStage
- Missing steps block inside stage
- Using run or execute instead of sh for shell commands
3. Given this Jenkins pipeline snippet:
What will happen when this pipeline runs?
pipeline {
agent any
stages {
stage('Test') {
steps {
sh 'mvn test'
}
}
}
}What will happen when this pipeline runs?
medium
Solution
Step 1: Analyze the pipeline stage
The stage named 'Test' runs the shell commandmvn test, which executes tests in Maven.Step 2: Understand the pipeline effect
Runningmvn testtriggers tests and generates test reports if any.Final Answer:
It runs Maven tests and reports results -> Option BQuick Check:
mvn test = run tests [OK]
Hint: mvn test runs tests, not build or deploy [OK]
Common Mistakes:
- Confusing test stage with build or deploy
- Thinking 'mvn test' is invalid command
- Assuming deployment happens automatically
4. You wrote this Jenkins pipeline snippet:
But Jenkins shows an error. What is the likely cause?
stage('Build') {
sh 'mvn clean package'
}But Jenkins shows an error. What is the likely cause?
medium
Solution
Step 1: Check Jenkins stage syntax
Each stage must contain asteps { ... }block to run commands.Step 2: Identify missing steps block
The snippet lackssteps { }, causing Jenkins syntax error.Final Answer:
Missing steps block inside the stage -> Option AQuick Check:
Jenkins stage needs steps block [OK]
Hint: Always wrap commands inside steps { } in Jenkins stage [OK]
Common Mistakes:
- Omitting steps block inside stage
- Assuming shell command syntax is wrong
- Ignoring agent requirement (not error here)
5. You want to create a Jenkins pipeline that builds, tests, and deploys a Spring Boot app only if tests pass. Which pipeline structure achieves this?
hard
Solution
Step 1: Understand stage order importance
Build must happen before testing, and deploy only after tests pass.Step 2: Check pipeline stage sequence
pipeline { agent any stages { stage('Build') { steps { sh 'mvn clean package' } } stage('Test') { steps { sh 'mvn test' } } stage('Deploy') { steps { sh './deploy.sh' } } } } has Build, then Test, then Deploy in correct order ensuring deploy runs only if tests succeed.Final Answer:
Build, Test, then Deploy in sequence -> Option CQuick Check:
Correct stage order ensures safe deploy [OK]
Hint: Deploy only after successful test stage [OK]
Common Mistakes:
- Deploying before tests run
- Running tests after deploy
- Incorrect stage order breaking pipeline logic
