No Compatible Build Agents

Hi There,

I am evaluating Team City 6.5.2 and I have run into a few problems.

I have 6.5.2 installed on a server with the following configuration:

Windows Server 2008 R2 service pack 1
Dual Xeon X7550 cpu's @ 2Ghz
4 gigs of ram

I can install and run the server with no problems. However, I am encountering issues with the build agents.

I have one build agent installed on a Windows XP SP3 machine (my dev machine) that is configured to talk to the Team City server I have set up. This build agent is fine and has all the build runners available. However, if I install a build agent on the Team City server itself, the only build runner I have available is the simple command line runner.

I need to have the Nant runner, as I am building .Net code. Is there something I need to be doing in order for the Nant runner to be available on the build agent installed on the Windows 2008 R2 server? I know that the runners are downloaded from the server itself, so I would have assumed that an agent running on the same machine as the build server would be easy to set up.

I have disabled the firewall on this machine and there is no antivirus running at the moment.

Any help on this would be greatly received, as I am pretty close to completing my evaluation, if I can get passed this issue, we will be able to go on and purchase a license.

Cheers
-
Raphael

14 comments
Comment actions Permalink

Just to add, this is what I see when I inspect the available build agents:

This agent supports the following build runners:

  • Command Line: Simple command execution


I have added the following line to the build agent properties file:

env.NAntHome=C:\\Build\\Tools\\BuildSystem\\nant\\bin

This points to the version of Nant I want to use for my builds.

Nant has not been added to the system path on the machine with the problems - however, it has not been added to the path on the machine that works either.

0
Comment actions Permalink

can someone tell me how to force a build agent to download the build runner plugins from the Team
City server?

As far as I can tell, the problem I am getting is down to the server not downloading the build runners from the server.

0
Comment actions Permalink

I just solved this myself.

I had one build agent installed correctly on my development machine, so all I did was copy the contents of C:\BuildAgent\plugins over to the installation that didnt have the nant plugin I needed.

Not a graceful solution, granted. But it has solved my immediate problems.

0
Comment actions Permalink

That would work too.
You could also just remove plugins, system and tools folders, and restart the agent - it should download and reinstall all its plugins automatically.

Have you preserved log files? We're interested to find a root cause of the issue, and would like to look at teamcity-agent.log and upgrade.log

Thanks
Michael

Message was edited by: Michael Kuzmin

0
Comment actions Permalink

Hi there

I did try deleting that folder to see what would happen, unfortunately in my case it did not end up with the plugins being downloaded correctly.

I will take a look at the logs now and post back when I have them.

Cheers
-
Raphael

0
Comment actions Permalink

here you go, these are the logs from the build server. I dont know if they have the information you want though.



Attachment(s):
TeamCity.zip
0
Comment actions Permalink

Thank you for the logs!

We're investigating how to prevent such problems in future.

0
Comment actions Permalink

no problems, shall we mark this as solved for the time being?

0
Comment actions Permalink

In logs I notices that build agent failed to start it's service from connandline. Please check if build agent running windows account has rights to start/stop build agent service.

0
Comment actions Permalink

Hi There,

yes, the account running the agent has the rights to do this.

Cheers
-
Raphael

0
Comment actions Permalink

Please try to ensure start.service.bat works for you to start service from the same user account as you use to run build agent service.

Take a look at the issue http://youtrack.jetbrains.net/issue/TW-16436
http://youtrack.jetbrains.net/issue/TW-16436Do you think it is related to your problem?

0
Comment actions Permalink

I am experiencing the same issue as Raphael. I installed v6.5.4, to find the default build agent connected, appearing to be active and healthy, but only showing "command line" under its list of build runners. I followed these instructions, and after starting the service back up, the build agent showed as disconnected in TeamCity. I spent several hours reinstalling TeamCity at least four or five times yesterday, trying different combinations of suggestions from other posts, to no avail. I arrived at my office today to find that the agent was connected, and showing all of the expected build runners.

I seem to remember this happening in the previous two versions of TeamCity as well, unsuccessfully trying all sorts of things to connect the build agent and to show all of its build runners, only to walk away from it and return later to observe that a little magic had taken place.

Clearly I need to have some patience, but I find this behavior to be of concern. Do these build agents update automatically? As the administrator for the tool, I would prefer to have control over this, receiving notification that updates are available, and deciding when I think it is appropriate to apply any updates that are available. For example, I strongly prefer to delay applying updates until after a scheduled release.

Also, if the build agent is indeed updating, there appears to be no clear status of this. What is the build agent doing? Is it really updating? Is it not functioning?

The documentation is not clear on this. But, if the TeamCity UI reported a more meaningful status for each build agent, I wouldn't have bothered to comb the documentation for a possible explanation.

0
Comment actions Permalink

Thank you for feedback, Dan.

Agents reconnect to the server once per hour. There is a delay with agent upgrade - after the server side is upgraded, new version is not pushed to agents immediately. It's pulled by the agent next time it connects to the server. So it can take up to an hour.
I've filed this feature in TW-18370.

There is second feature request for agent status indication in TW-6370, please vote.

0
Comment actions Permalink

Versions of server and agent components are kept synchronized all the time. So if the server has been upgraded, all the agents need to be upgraded too to accept any new builds.

There may be timeframes when upgrade is not possible to eliminate downtime and risks. But it affects server side too, isn't it?

Thanks
Michael

0

Please sign in to leave a comment.