Search code examples
teamcityoctopus-deploybuild-agent

TeamCity Build Agent Shows All Build Steps Incompatible


I've recently installed TeamCity 2017.2.3 (build 541047) and Octopus Deploy 2018.1.5 and originally was having success running builds and creating packages in TeamCity, but now my build agent shows all of my build steps as incompatible after a service restart.

enter image description here

I've uninstalled and reinstalled the buildagent, plugins (I use Node.JS build runner, Octopus Deploy integration, and xUnit) and rebuilt each of the build steps, but still run into the same problem

Build Step List enter image description here

enter image description here

Anyone know what would be causing this issue?


Solution

  • Each agent should have a list of global parameters that are picked up from the OS or manually configured from the agent properties file on the machine. These are things like the path, dotnet versions, npm etc.

    http(s)://<tc root>/agentDetails.html?id=<agent id>&tab=agentParameters

    (You can get to the above by clicking on the agent you want to inspect)

    enter image description here

    You can then override or add to these from the root project all the way up the project tree to the build configuration.

    The message you are getting is saying is that in order for the build to run it needs to have an agent with those parameters configured. Could you give a screen grab of what your build agent parameters are.

    Here is an example from one of my build agents which shows some of the configuration parameters that you need.

    enter image description here

    You should not need to add these, they should be picked up automatically by the agent.

    • First make sure these dependencies are actually installed.
    • If missing install and restart the agent service (required to pick up new configuration properties).
    • Possibly try a machine restart in case newly installed components require a reboot.
    • Failing that check to see what permissions the build agent service is running under. It might not have permissions needed to poll the system but I have never seen that.