0

A colleague and I both use Azure DevOps build agents self-hosted in Docker. We're both connecting to separate DevOps organisations, but other than that the agents are the same - we're using the latest version of the image (mcr.microsoft.com/azure-pipelines/vsts-agent), both running on the same host OS, same version of Docker.

My build agent runs jobs and outputs the log data to the Azure DevOps console in a sensible format:

Starting: Initialize job
Agent name: 'AS01'
Agent machine name: '7b20a38350c7'
Current agent version: '2.183.1'
Agent running as: 'root'
Prepare build directory.
Set build variables.
Download all required tasks.
Checking job knob settings.
Finished checking job knob settings.
Start tracking orphan processes.
Finishing: Initialize job

His, however, seems to replace any space character ' ' with triple asterisks:

Starting:***Initialize***job
Agent***name:***'SERVER1'
Agent***machine***name:***'SERVER1'
Current***agent***version:***'2.185.0'
Agent***running***as:***'root'
Prepare***build***directory.
Set***build***variables.
Download***all***required***tasks.
Downloading***task:***DockerInstaller***(0.181.0)
Downloading***task:***Docker***(2.181.2)
Checking***job***knob***settings.
***Knob:***AgentToolsDirectory***=***/opt/hostedtoolcache***Source:***${AGENT_TOOLSDIRECTORY}***
***Knob:***TaskRestrictionsEnforcementMode***=***WarningOnly***Source:***$(agent.taskRestrictionsEnforcementMode)***
***Knob:***EnableTaskRestrictionsTelemetry***=***true***Source:***$(agent.enableTaskRestrictionsTelemetry)***
Finished***checking***job***knob***settings.
Start***tracking***orphan***processes.
Finishing:***Initialize***job

The most obvious difference I can spot is that the agent versions are different; mine is 2.183.2 (but signs on in the container logs as v2.184.2).

  ___                      ______ _            _ _
 / _ \                     | ___ (_)          | (_)
/ /_\ \_____   _ _ __ ___  | |_/ /_ _ __   ___| |_ _ __   ___  ___
|  _  |_  / | | | '__/ _ \ |  __/| | '_ \ / _ \ | | '_ \ / _ \/ __|
| | | |/ /| |_| | | |  __/ | |   | | |_) |  __/ | | | | |  __/\__ \
\_| |_/___|\__,_|_|  \___| \_|   |_| .__/ \___|_|_|_| |_|\___||___/
                                   | |
        agent v2.184.2             |_|          (commit 01983e9)

His claims to be running 2.185.0 and signs on in the container logs as such.

  ___                      ______ _            _ _
 / _ \                     | ___ (_)          | (_)
/ /_\ \_____   _ _ __ ___  | |_/ /_ _ __   ___| |_ _ __   ___  ___
|  _  |_  / | | | '__/ _ \ |  __/| | '_ \ / _ \ | | '_ \ / _ \/ __|
| | | |/ /| |_| | | |  __/ | |   | | |_) |  __/ | | | | |  __/\__ \
\_| |_/___|\__,_|_|  \___| \_|   |_| .__/ \___|_|_|_| |_|\___||___/
                                 | |
      agent v2.185.0             |_|          (commit a01fe8d)

It seems that redeploying the container from the latest image did not cause the use of a newer agent version in my environment -- the image seems to have a startup script that checks which version to download, then downloads and installs it. I even tried running the same image on my environment with the access token and organisation name of my colleague, which caused the image to download 2.185.0 from his tenant. Then I swapped the situation, used his environment and his image with my access token and organisation name, and 2.184.2 was downloaded so it seems the problem isn't specific to our Docker environments, nor the servers running them - it seems to be tied to the DevOps organisation.

Is there possibly a problem with version 2.185.0 of the agent that causes these weird asterisks in the logs? Or, is there a way I can force my agent to use v2.185.0 to see if the asterisks appear that way?

Daniel Arkley
  • 164
  • 1
  • 14

0 Answers0