Interview Scripting (Bash, Groovy)

What is the difference between a declarative and a scripted Jenkins pipeline in Groovy? [Advanced]

Answer

Declarative Pipeline is a structured, opinionated Jenkins syntax inside a pipeline { } block. Scripted Pipeline is more free-form Groovy using node { } and direct control flow. Declarative is easier to standardize; scripted is more flexible for complex logic.

Technical explanation

Declarative has sections such as agent, environment, stages, steps, post, options, and when.

Scripted Pipeline allows arbitrary Groovy control flow but can become harder to read and govern.

In enterprise CI, I normally use Declarative for consistency and shared libraries for reusable complex behavior.

Hands-on example

// Declarative

pipeline { agent any; stages { stage('Test') { steps { sh 'make test' } } } }

// Scripted

node {

stage('Test') {

sh 'make test'

}

}

Preparing for an interview?

Check how well your resume matches the role with our free resume checker— match score, ATS check, and the skills you're missing.

More Scripting (Bash, Groovy) interview questions

← All Scripting (Bash, Groovy) questions