Microsoft Certified: DevOps Engineer ExpertDesign and implement source controlMedium

A company is setting up self-hosted build agents in an on-premises data center for Azure DevOps. These agents need to access internal network resources and build applications that require specific software (e.g., a proprietary compiler) not available on Microsoft-hosted agents. The agents should be configured to run as a service and securely communicate with Azure DevOps. Which steps are crucial during the agent installation and configuration?

  1. AInstall Docker on the agent machine and pull the Azure DevOps agent image.
  2. BInstall the Azure DevOps Server on the agent machine and register it as a build host.
  3. CDownload the agent package, run 'config.cmd' (or 'config.sh'), and provide the Azure DevOps PAT and URL.
  4. DConfigure a VPN connection from the agent machine to Azure DevOps and set up port forwarding.
Show answer & explanation

Correct answer: C. Download the agent package, run 'config.cmd' (or 'config.sh'), and provide the Azure DevOps PAT and URL.

Installing and configuring a self-hosted agent involves downloading the agent software, running the configuration script ('config.cmd' for Windows or 'config.sh' for Linux/macOS), and providing the Azure DevOps URL and a Personal Access Token (PAT) for authentication. This sets up the agent as a service and enables secure communication.

Why the other options are wrong

  • A. While agents can run in Docker, the core self-hosted agent setup involves directly configuring the agent software, not just pulling an image.
  • B. Azure DevOps Server is a separate product for on-premises DevOps; this question is about connecting an agent to Azure DevOps (cloud service).
  • D. Azure DevOps agents communicate outbound over HTTPS to Azure DevOps, so a direct VPN or port forwarding from the agent to Azure DevOps is generally not required or the primary setup step.

Azure DevOps Self-Hosted Agent Setup

The process of installing and configuring an Azure DevOps agent on a user-managed machine (on-premises or cloud VM) to run build and release jobs.

  • Requires downloading agent software.
  • Uses `config.cmd` or `config.sh` for configuration.
  • Authenticates using a Personal Access Token (PAT).
  • Communicates outbound over HTTPS to Azure DevOps.

Memory trick: Download, configure, and connect your bot to the cloud.

More Design and implement source control questions