Job DSL vs Multibranch

Job DSL Versus Multibranch Pipeline for BookNest

A multibranch pipeline decides which branches of one repository get jobs, and the Jenkinsfile what they do; Job DSL 1,924 decides which top-level jobs exist. BookNest uses both: Job DSL creates the multibranch jobs, which create the branch jobs.

The two job generators, side by side
Question Multibranch Pipeline Job DSL
What does it create? One job per branch and pull request Any job type, from a script
Where does it live? The Jenkinsfile, in each repository A script on the controller or in Git 1,932
When does it run? Branch indexing and webhooks Controller start, reload or a seed job
Best at Per-branch builds of one repository Many similar jobs across repositories

An organization folder (Organization Folders) also creates a job per repository without a script, but scans the whole account; the explicit list suits a personal account shared with unrelated projects.