AZ-400 Practice Question: Design and implement build and release pipelines
Your team uses GitHub for source control and wants to set up continuous integration using GitHub Actions. Which file should you create in the repository to define the workflow?
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
.github/workflows/ci.yml
GitHub Actions workflows are defined in YAML files stored in the .github/workflows directory. Option A is wrong because a Jenkinsfile is used with Jenkins, not GitHub Actions. Option C is wrong because a Dockerfile is used to build Docker images, not to define CI workflows. Option D is wrong because azure-pipelines.yml is for Azure Pipelines, not GitHub Actions.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Jenkinsfile
Why it's wrong here
A Jenkinsfile is a pipeline definition file consumed by Jenkins CI; it uses either Declarative Pipeline syntax or Scripted Pipeline (Groovy) and is not recognized by GitHub Actions. Placing a Jenkinsfile in a GitHub repository will not create any automated workflow on GitHub, so it cannot serve as the CI configuration for GitHub Actions.
- ✓
.github/workflows/ci.yml
Why this is correct
The file .github/workflows/ci.yml is the standard and expected location for a GitHub Actions workflow. Any YAML file in the .github/workflows directory defines an automated workflow that GitHub Actions will parse and run based on configured event triggers, such as push or pull_request, making it the correct choice for setting up CI with GitHub.
- ✗
Dockerfile
Why it's wrong here
A Dockerfile is used to build and define Docker container images, specifying the base image, layers, commands, and entrypoint. It is not a CI workflow configuration and is not executed by GitHub Actions; instead, GitHub Actions workflows (in .github/workflows) can reference a Dockerfile within a job to build an image as part of a pipeline, but the Dockerfile itself does not define the CI process.
- ✗
azure-pipelines.yml
Why it's wrong here
azure-pipelines.yml is the pipeline definition file used by Azure Pipelines, Microsoft's CI/CD service that runs on Azure, not by GitHub Actions. GitHub Actions ignores this file entirely; even though both use YAML syntax, the structure, triggers, and schema differ, so azure-pipelines.yml will not be picked up or executed as a GitHub Actions workflow.
Go deeper
Related to this question
Learn chapter
Introduction to DevOps and Azure DevOps
Key term
Azure Pipelines
Azure Pipelines is a cloud-based CI/CD service from Microsoft that automatically builds, tests, and deploys code to any platform or cloud.
Key term
GitHub
GitHub is a cloud-based platform for storing, tracking, and collaborating on code using Git version control.
About these practice questions
This AZ-400 question is part of Courseiva's 823-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This AZ-400 practice question is part of Courseiva's free Microsoft certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the AZ-400 exam.