All GitLab exams

GitLab Certified CI/CD Associate

What the GitLab Certified CI/CD Associate exam covers and what it costs, with a free 30-question practice test and an explanation for every answer.

At a glance
Exam fee
$150 USD
Duration
75 minutes
Questions on the exam
50
Passing score
75%
Level
Foundational
Topic areas
7
Free practice questions
30
Full question bank
112 questions

What the GitLab Certified CI/CD Associate exam covers

The topic areas in our GitLab Certified CI/CD Associate question bank, with each one's share of the 112 practice questions.

GitLab Certified CI/CD Associate cost and format

CertificationGitLab Certified CI/CD Associate
VendorGitLab
LevelFoundational
StatusActive
LanguagesEnglish
DeliveryOnline, unproctored

Last checked November 10, 2026 against the official GitLab exam page.

GitLab Certified CI/CD Associate sample questions

The first 5 questions from the free practice test. Open a question to see the answer and why it is right.

All 30 free questions
  1. Question 1YAML Configuration

    A job has two entries in its `rules:` list. The first entry is `if: $CI_PIPELINE_SOURCE == 'schedule'` with `when: never`. The second entry is `if: $CI_COMMIT_BRANCH` with no `when` key. A scheduled pipeline starts on the main branch. What happens to the job?

    1. AIt is added to the pipeline and runs, because the second rule matches the branch name
    2. BIt is added as a manual job, because a rule without a when key makes the job wait for approval
    3. CIt is not added to the pipeline, because the first matching rule sets when: never
    4. DIt is added and runs, but allow_failure is set to true automatically for scheduled pipelines
    Show answer and explanation
    Correct answer: C

    Rules are read from top to bottom and the first rule that matches decides the outcome. The schedule matches the first rule, which sets when: never, so the job is dropped and the second rule is never reached. A rule without a when key does not make a job manual, and scheduled pipelines do not change allow_failure on their own.

  2. Question 2Pipeline Development

    A deploy job sits in the deploy stage. It must start as soon as one specific build job succeeds, rather than waiting for every job in the build stage. Which keyword makes this happen?

    1. Aparallel, set to the number of build jobs so they all run together
    2. Bdependencies, listing the build job so the deploy job can download its artifacts
    3. Cneeds, listing the specific build job as a prerequisite of the deploy job
    4. Dextends, pointing at the build job so the deploy job inherits its configuration
    Show answer and explanation
    Correct answer: C

    The needs keyword creates a dependency edge in the pipeline graph, so the deploy job starts once the listed job has succeeded. The dependencies keyword only controls which artifacts are downloaded, parallel splits a job into copies, and extends copies configuration, so none of them change when a job starts.

  3. Question 3CI/CD Fundamentals

    Which statement best distinguishes continuous delivery from continuous deployment?

    1. AContinuous delivery skips the automated test stage to save time, while continuous deployment always runs the full test suite before any release is made
    2. BContinuous delivery requires one long-lived branch for all developers, while continuous deployment forbids shared branches and needs separate repositories
    3. CContinuous delivery applies only to container images, while continuous deployment applies only to virtual machines and bare-metal servers in data centres
    4. DContinuous delivery keeps every change releasable with a manual production release, while continuous deployment releases each passing change automatically
    Show answer and explanation
    Correct answer: D

    Continuous delivery keeps the mainline releasable at all times, and a person decides when production gets the change. Continuous deployment goes one step further and releases every change that passes the pipeline without a manual gate. The other options describe skipped tests, technology limits, or branching rules that are not part of either definition.

  4. Question 4Troubleshooting and Optimization

    A developer pushes a feature branch, and no pipeline appears at all. The project's .gitlab-ci.yml has a workflow rules section that only allows merge request pipelines and says nothing about branch pipelines. What is the most likely explanation?

    1. AThe runner is offline, so the pipeline was created but never moved past the created state
    2. BThe workflow rules evaluate to no pipeline for a branch push, so GitLab never creates one
    3. CBranch pipelines always need a manual trigger in the web interface before they are created
    4. DThe jobs have no tags, so the pipeline stays hidden until a runner with a matching tag exists
    Show answer and explanation
    Correct answer: B

    The workflow keyword decides whether a pipeline is created at all, and when no rule allows a branch push, no pipeline is made. An offline runner or missing tags affects jobs after a pipeline exists, and branch pipelines do not need a manual trigger by default.

  5. Question 5Container and Package Management

    What is the main purpose of the Dependency Proxy in GitLab?

    1. AIt stores the images that the team's own pipelines build and push for later deployment
    2. BIt scans container images for known vulnerabilities before they are deployed
    3. CIt runs jobs on a remote runner without needing a local Docker daemon on that host
    4. DIt caches Docker Hub images within a group so repeated image pulls are faster and reduce outside downloads
    Show answer and explanation
    Correct answer: D

    The Dependency Proxy keeps a local copy of upstream images such as Docker Hub images, so jobs in the group pull from GitLab and repeat downloads from the public registry are reduced. Storing team-built images is the job of the Container Registry, scanning is a separate security feature, and runner executors are configured on the runner rather than through this proxy.

How to prepare for GitLab Certified CI/CD Associate

  1. Read the official GitLab outline first (exam page), so you know exactly what is in scope.
  2. Give the most time to YAML Configuration and Pipeline Development: together they make up 40% of the questions.
  3. Take the free 30-question practice test and note which topics you miss.
  4. Go back to the weak topics, then test again. A practice score shows where to study; it does not predict your exam result.

Full GitLab Certified CI/CD Associate question bank

All 112 questions with answers and explanations, as a PDF, an online practice exam, or both.

Full question bank
Coming to the store soon

The full 112-question bank for GitLab Certified CI/CD Associate is in final review. The free practice test is open now.

Start the free practice test

GitLab Certified CI/CD Associate FAQ