Bird
Raised Fist0
Jenkinsdevops~5 mins

Multi-branch pipeline job creation in Jenkins - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is a multi-branch pipeline job in Jenkins?
A multi-branch pipeline job automatically discovers, manages, and executes pipelines for branches in a source code repository.
Click to reveal answer
beginner
Which plugin is required to create multi-branch pipeline jobs in Jenkins?
The 'Pipeline Multibranch Plugin' is required to create and manage multi-branch pipeline jobs.
Click to reveal answer
intermediate
How does Jenkins detect branches in a multi-branch pipeline job?
Jenkins scans the source repository and automatically detects branches that contain a Jenkinsfile to create individual pipeline jobs for each branch.
Click to reveal answer
beginner
What file must be present in each branch for Jenkins to run a pipeline in a multi-branch job?
Each branch must have a 'Jenkinsfile' that defines the pipeline script for Jenkins to execute.
Click to reveal answer
intermediate
How can you trigger a scan for new branches in a multi-branch pipeline job?
You can manually trigger a scan by clicking 'Scan Multibranch Pipeline Now' or configure periodic scans in the job settings.
Click to reveal answer
What does a multi-branch pipeline job in Jenkins do?
AAutomatically builds all branches with Jenkinsfiles
BBuilds only the master branch
CRuns freestyle jobs only
DRequires manual job creation per branch
Which file must be present in a branch for Jenkins to run a pipeline in a multi-branch job?
AJenkinsfile
Bbuild.gradle
CREADME.md
DDockerfile
How does Jenkins find branches to build in a multi-branch pipeline job?
ABy manual job creation for each branch
BBy building all branches regardless of files
CBy scanning the repository for branches with Jenkinsfiles
DBy scanning only the master branch
Which plugin enables multi-branch pipeline jobs in Jenkins?
AGit Plugin
BEmail Extension Plugin
CMatrix Authorization Plugin
DPipeline Multibranch Plugin
How can you update the list of branches Jenkins builds in a multi-branch pipeline job?
AManually add branches in job config
BTrigger 'Scan Multibranch Pipeline Now'
CRestart Jenkins server
DDelete and recreate the job
Explain how Jenkins manages multiple branches using a multi-branch pipeline job.
Think about how Jenkins finds and builds branches without manual setup.
You got /4 concepts.
    Describe the steps to create a multi-branch pipeline job in Jenkins.
    Focus on the setup process from plugin to scanning branches.
    You got /5 concepts.

      Practice

      (1/5)
      1. What is the main purpose of a multi-branch pipeline job in Jenkins?
      easy
      A. To automatically create and manage pipeline jobs for each branch in a repository
      B. To run a single pipeline job for all branches combined
      C. To manually configure pipelines for each branch separately
      D. To deploy applications without building them

      Solution

      1. Step 1: Understand multi-branch pipeline concept

        A multi-branch pipeline job automatically detects branches in a source code repository and creates pipeline jobs for each branch.
      2. Step 2: Compare options with concept

        To automatically create and manage pipeline jobs for each branch in a repository correctly describes this automation. Options B, C, and D do not match the automatic branch job creation feature.
      3. Final Answer:

        To automatically create and manage pipeline jobs for each branch in a repository -> Option A
      4. Quick Check:

        Multi-branch pipeline = automatic branch job creation [OK]
      Hint: Multi-branch pipelines auto-create jobs per branch [OK]
      Common Mistakes:
      • Thinking it runs one job for all branches
      • Assuming manual job creation is needed
      • Confusing deployment with pipeline creation
      2. Which Jenkinsfile location is automatically used by a multi-branch pipeline job for each branch?
      easy
      A. Only in the main branch
      B. In a separate centralized folder outside branches
      C. In the root directory of each branch
      D. In the Jenkins server workspace

      Solution

      1. Step 1: Identify Jenkinsfile location for multi-branch pipelines

        Multi-branch pipelines look for a Jenkinsfile in the root directory of each branch to define that branch's pipeline.
      2. Step 2: Evaluate options

        In the root directory of each branch matches this behavior. Options B, C, and D do not reflect the automatic per-branch Jenkinsfile usage.
      3. Final Answer:

        In the root directory of each branch -> Option C
      4. Quick Check:

        Jenkinsfile location = root of each branch [OK]
      Hint: Jenkinsfile must be in branch root for multi-branch jobs [OK]
      Common Mistakes:
      • Thinking Jenkinsfile is centralized outside branches
      • Assuming only main branch Jenkinsfile is used
      • Believing Jenkinsfile is stored on Jenkins server
      3. Given a multi-branch pipeline job configured to scan a Git repository with branches main and feature1, what happens when a new branch feature2 is pushed?
      medium
      A. The job automatically detects feature2 and creates a new pipeline for it
      B. The job ignores feature2 until manually added
      C. The job deletes pipelines for main and feature1
      D. The job merges feature2 into main automatically

      Solution

      1. Step 1: Understand scan trigger behavior

        Multi-branch pipeline jobs scan the repository and detect new branches automatically, creating pipelines for them.
      2. Step 2: Analyze options

        The job automatically detects feature2 and creates a new pipeline for it correctly states the automatic detection and pipeline creation for feature2. Options A, B, and D describe incorrect behaviors.
      3. Final Answer:

        The job automatically detects feature2 and creates a new pipeline for it -> Option A
      4. Quick Check:

        New branch detected = new pipeline created [OK]
      Hint: New branches auto-create pipelines on scan [OK]
      Common Mistakes:
      • Assuming manual addition of new branches
      • Thinking existing pipelines get deleted
      • Confusing pipeline creation with branch merging
      4. You created a multi-branch pipeline job but it does not detect any branches. What is the most likely cause?
      medium
      A. The Jenkinsfile is missing in the main branch only
      B. The repository URL is incorrect or inaccessible
      C. The Jenkins server is offline
      D. The job is set to build only tags, not branches

      Solution

      1. Step 1: Check repository access

        If the multi-branch pipeline job cannot detect branches, the most common cause is an incorrect or inaccessible repository URL.
      2. Step 2: Evaluate other options

        The Jenkinsfile is missing in the main branch only is less likely because missing Jenkinsfile in main branch does not prevent branch detection. The Jenkins server is offline is unrelated if Jenkins is running. The job is set to build only tags, not branches is possible but less common than repository access issues.
      3. Final Answer:

        The repository URL is incorrect or inaccessible -> Option B
      4. Quick Check:

        Branch detection fails if repo URL is wrong [OK]
      Hint: Check repo URL first if no branches detected [OK]
      Common Mistakes:
      • Blaming missing Jenkinsfile for no branch detection
      • Ignoring repository access permissions
      • Assuming Jenkins server is offline without checking
      5. You want to configure a multi-branch pipeline job to scan your GitHub repo every 15 minutes to detect new branches or changes. Which Jenkins feature should you use?
      hard
      A. Use a freestyle job to poll the repository
      B. Manually run the scan from Jenkins dashboard each time
      C. Configure a webhook in GitHub but disable Jenkins scanning
      D. Set a periodic scan trigger with a cron expression like H/15 * * * *

      Solution

      1. Step 1: Identify scan trigger configuration

        Multi-branch pipeline jobs support periodic scanning using cron syntax to detect branch changes automatically.
      2. Step 2: Analyze options

        Set a periodic scan trigger with a cron expression like H/15 * * * * correctly describes setting a periodic scan trigger with cron. Manually run the scan from Jenkins dashboard each time is manual, not automatic. Configure a webhook in GitHub but disable Jenkins scanning disables Jenkins scanning, so no detection. Use a freestyle job to poll the repository uses freestyle job, not multi-branch pipeline.
      3. Final Answer:

        Set a periodic scan trigger with a cron expression like H/15 * * * * -> Option D
      4. Quick Check:

        Periodic scan trigger = automatic branch updates [OK]
      Hint: Use cron trigger for automatic branch scanning [OK]
      Common Mistakes:
      • Relying only on manual scans
      • Disabling Jenkins scan but using webhooks only
      • Using freestyle jobs instead of multi-branch pipelines
      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