- A
Store a Bicep file in source control and use it as the deployment definition.
Bicep is a declarative infrastructure-as-code language that works well with source control and code review. It makes the deployment definition readable, repeatable, and versioned alongside application code.
- B
Store an ARM template JSON file in source control and deploy that template consistently.
ARM templates are also declarative and can be reviewed and versioned in source control. They provide a repeatable deployment model that is well suited to standardized VM deployments.
- C
Use Azure PowerShell or Azure CLI to deploy the checked-in template from the repository.
Deployment through Azure PowerShell or Azure CLI still follows an infrastructure-as-code workflow when the template itself is stored in source control. The command layer simply executes the reviewed definition in a consistent way.
- D
Create the VMs manually in the Azure portal each sprint and document the clicks afterward.
Why wrong: Manual portal deployment is not source-controlled and is difficult to review or reproduce exactly. It is the opposite of a repeatable infrastructure-as-code process.
- E
Export the resources after deployment and treat the export as the only authoritative source.
Why wrong: Exports can help with discovery, but they are not a strong primary design for repeatable deployment workflows. The repository should be the source of truth, not an after-the-fact export.
Quick Answer
The answer is to use Azure PowerShell or Azure CLI to deploy the checked-in template from the repository, as this directly aligns with the core principle of infrastructure as code: storing Bicep and ARM templates in source control ensures every change is versioned, reviewed, and repeatable. By checking in a Bicep file—a domain-specific language for declarative Azure resource deployment—into a Git repository, you enable code reviews to capture every infrastructure modification before deployment, guaranteeing consistency across sprints. On the AZ-104 exam, this tests your understanding of how source control integrates with declarative IaC tools; a common trap is assuming that manual portal changes or exporting templates after deployment count as IaC, but only checked-in, reviewed templates meet the requirement for auditable, version-controlled deployments. Remember the memory tip: “Check it in, review it, then deploy it—never deploy from the portal.”
AZ-104 Deploy and Manage Azure Compute Practice Question
This AZ-104 practice question tests your understanding of deploy and manage azure compute. Match the stated requirement to the specific cloud service, access model, or configuration option — many options are valid in isolation but not for this scenario. After answering, compare your reasoning against the explanation and wrong-answer breakdown below. Once you have made your selection, read the full explanation to reinforce the concept and understand why each distractor is designed to mislead on exam day.
An administrator wants to deploy the same set of Azure VMs every sprint from source control and make code reviews capture every infrastructure change. Which three approaches meet this requirement? Select three.
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
Store a Bicep file in source control and use it as the deployment definition.
Option A is correct because Bicep is a domain-specific language (DSL) for deploying Azure resources declaratively. Storing a Bicep file in source control allows you to version infrastructure as code, and code reviews can capture every change before deployment, ensuring consistency across sprints.
Key principle: Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
Store a Bicep file in source control and use it as the deployment definition.
Why this is correct
Bicep is a declarative infrastructure-as-code language that works well with source control and code review. It makes the deployment definition readable, repeatable, and versioned alongside application code.
Related concept
Read the scenario before looking for a memorised answer.
- ✓
Store an ARM template JSON file in source control and deploy that template consistently.
Why this is correct
ARM templates are also declarative and can be reviewed and versioned in source control. They provide a repeatable deployment model that is well suited to standardized VM deployments.
Related concept
Read the scenario before looking for a memorised answer.
- ✓
Use Azure PowerShell or Azure CLI to deploy the checked-in template from the repository.
Why this is correct
Deployment through Azure PowerShell or Azure CLI still follows an infrastructure-as-code workflow when the template itself is stored in source control. The command layer simply executes the reviewed definition in a consistent way.
Related concept
Read the scenario before looking for a memorised answer.
- ✗
Create the VMs manually in the Azure portal each sprint and document the clicks afterward.
Why it's wrong here
Manual portal deployment is not source-controlled and is difficult to review or reproduce exactly. It is the opposite of a repeatable infrastructure-as-code process.
- ✗
Export the resources after deployment and treat the export as the only authoritative source.
Why it's wrong here
Exports can help with discovery, but they are not a strong primary design for repeatable deployment workflows. The repository should be the source of truth, not an after-the-fact export.
Common exam traps
Common exam trap: answer the scenario, not the keyword
The trap here is that candidates may think exporting resources after deployment (Option E) is a valid IaC approach, but it produces a one-time snapshot that lacks idempotency and cannot be used for consistent, reviewable deployments across sprints.
Detailed technical explanation
How to think about this question
Bicep files are transpiled into ARM JSON templates before deployment, but they offer a cleaner syntax and modularization via modules. When stored in source control, each commit triggers a pipeline (e.g., Azure DevOps or GitHub Actions) that validates and deploys the exact same template, ensuring idempotency. A subtle behavior is that Bicep uses symbolic names instead of resource names, making refactoring safer and code reviews more meaningful.
KKey Concepts to Remember
- Read the scenario before looking for a memorised answer.
- Find the constraint that changes the correct option.
- Eliminate answers that are true in general but not in this case.
TExam Day Tips
- Watch for words such as best, first, most likely and least administrative effort.
- Review why wrong options are wrong, not only why the correct option is correct.
Key takeaway
Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.
Real-world example
How this comes up in practice
An e-commerce site experiences heavy traffic on Black Friday and near-zero traffic during off-peak weeks. Rather than provisioning permanent large VMs, the team uses auto-scaling groups that add capacity automatically under load and reduce it overnight. Questions like this test whether you understand elasticity, availability zones, and cloud compute scaling patterns.
What to study next
Got this wrong? Here's your next step.
Identify which exam domain this question belongs to, review the core concept, then practise similar questions from the same domain.
- →
Deploy and Manage Azure Compute — study guide chapter
Learn the concepts, then practise the questions
- →
Deploy and Manage Azure Compute practice questions
Targeted practice on this topic area only
- →
All AZ-104 questions
1,170 questions across all exam domains
- →
AZ-104 study guide
Full concept coverage aligned to exam objectives
- →
AZ-104 practice test guide
How to use practice tests most effectively before exam day
Related practice questions
Related AZ-104 practice-question pages
Use these pages to review the topic behind this question. This is how one missed question becomes focused revision.
Manage Azure Identities and Governance practice questions
Practise AZ-104 questions linked to Manage Azure Identities and Governance.
Implement and Manage Storage practice questions
Practise AZ-104 questions linked to Implement and Manage Storage.
Deploy and Manage Azure Compute practice questions
Practise AZ-104 questions linked to Deploy and Manage Azure Compute.
Implement and Manage Virtual Networking practice questions
Practise AZ-104 questions linked to Implement and Manage Virtual Networking.
Monitor and Maintain Azure Resources practice questions
Practise AZ-104 questions linked to Monitor and Maintain Azure Resources.
AZ-104 Azure RBAC practice questions
Practise AZ-104 questions linked to AZ-104 Azure RBAC.
AZ-104 storage account practice questions
Practise AZ-104 questions linked to AZ-104 storage account.
AZ-104 virtual network practice questions
Practise AZ-104 questions linked to AZ-104 virtual network.
AZ-104 NSG practice questions
Practise AZ-104 questions linked to AZ-104 NSG.
AZ-104 Azure Monitor practice questions
Practise AZ-104 questions linked to AZ-104 Azure Monitor.
AZ-104 backup practice questions
Practise AZ-104 questions linked to AZ-104 backup.
AZ-104 managed identity practice questions
Practise AZ-104 questions linked to AZ-104 managed identity.
Practice this exam
Start a free AZ-104 practice session
Short sessions build daily habit. Longer sessions build exam-day stamina. Try a timed session to simulate real conditions.
FAQ
Questions learners often ask
What does this AZ-104 question test?
Deploy and Manage Azure Compute — This question tests Deploy and Manage Azure Compute — Read the scenario before looking for a memorised answer..
What is the correct answer to this question?
The correct answer is: Store a Bicep file in source control and use it as the deployment definition. — Option A is correct because Bicep is a domain-specific language (DSL) for deploying Azure resources declaratively. Storing a Bicep file in source control allows you to version infrastructure as code, and code reviews can capture every change before deployment, ensuring consistency across sprints.
What should I do if I get this AZ-104 question wrong?
Identify which exam domain this question belongs to, review the core concept, then practise similar questions from the same domain.
What is the key concept behind this question?
Read the scenario before looking for a memorised answer.
About these practice questions
Courseiva creates original exam-style practice questions with explanations and wrong-answer analysis. It does not publish real exam questions, exam dumps, or protected exam content. Learn why practice questions differ from exam dumps →
Last reviewed: Jun 11, 2026
This AZ-104 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-104 exam.
Question Discussion
Share a tip, memory trick, or ask about the reasoning behind this question. Do not post real exam questions, leaked content, braindumps, or copyrighted exam material. Comments are moderated and may be removed without notice.
Sign in to join the discussion.