AZ-400 Practice Question: Design and implement build and release pipelines
Your release pipeline includes a 'Deploy to App Service' task for a Linux web app. The deployment fails with 'Error: Failed to deploy web package to App Service'. What should you check first?
⚠ Common exam trap
The trap here is that candidates mistakenly associate 'Kudu console' (Option B) with all App Service debugging, but Kudu is not available on Linux web apps, making diagnostic logs the correct first check.
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
✓
Review the App Service diagnostic logs.
App Service diagnostic logs provide the most comprehensive and direct source of error details when a deployment fails. The 'Deploy to App Service' task uses Kudu (for Windows) or Oryx (for Linux) to process the deployment; reviewing the diagnostic logs (e.g., via the Azure portal under 'App Service logs' or the 'Log stream') will surface the exact failure reason, such as a missing startup command, incorrect runtime stack, or permission issues.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Verify that the deployment slot is correctly configured.
Why it's wrong here
Deployment slots are an optional feature used for staging and swapping environments, and they are not required for a basic deployment to an Azure App Service. Verifying slot configuration would not diagnose a failed deployment because the core deployment pipeline functions independently of slot settings, and the issue likely lies elsewhere.
- ✗
Check the Kudu console for errors.
Why it's wrong here
The Kudu console (SCM endpoint) is only available for Windows-based App Service plans; for Linux App Service, Kudu is not used and therefore cannot be used to retrieve deployment errors. To diagnose a Linux deployment failure, you must rely on other mechanisms such as SSH or the diagnostic logs.
- ✗
Ensure the web.config file is present.
Why it's wrong here
Linux web apps (especially those built on .NET Core or Node.js) do not use web.config for configuration; instead, they rely on application settings, environment variables, or files like appsettings.json. The absence of web.config is expected and does not cause deployment failures on Linux, so this is not a valid troubleshooting step.
- ✓
Review the App Service diagnostic logs.
Why this is correct
App Service diagnostic logs are the authoritative source for troubleshooting deployment failures, as they capture detailed information about the deployment process, container startup, and runtime exceptions. Reviewing these logs is the correct first step to identify the underlying error and resolve the issue.
Go deeper
Related to this question
Learn chapter
Introduction to DevOps and Azure DevOps
Key term
Check
A Check in Azure DevOps is a gating mechanism that evaluates predefined conditions before allowing a pipeline deployment to proceed to a specific environment.
Key term
Task
A Task in Azure DevOps is a predefined, reusable step that performs a specific action during a build or release pipeline, like compiling code or running tests.
About these practice questions
Courseiva writes every AZ-400 question from scratch — 823 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or 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.