How to ensure build agents are comparable, ideas and best practices?
I have recently upgraded our TeamCity to 2017.1.1 and it has exposed a few issues regarding our agents.
Ideally, the three agents should be completely identical, except maybe for a few licensed third-party tools, but over time they have drifted apart, and right now I have an agent that will fail certain configurations that runs to completion on the other agents.
Any configuration should be able to run on any agent, so it is imperative that they are as alike as possible.
I realize that, of course, there will always be some minor differences, in GUIDs etc.
Now, a bit about the setup. We are using Windows 7 32-bit on the agents, and we develop almost exclusively with the .NET Framework in various versions and editions. All three agents are virtual machine running on a VMWare ESXi, 6.0.0 system.
So, I need some pointers and clues on how to get the agents to get closer in configuration. I fear that I need to start over and create a new machine which I then can clone the agents from.
Please sign in to leave a comment.
Hi Thomas,
there are several possible approaches:
-Have a build configuration that does the agent setup, make your builds depend on it to make sure it runs all the required setup beforehand, so that the build environment has all required tools.
-Use cloud agents created from an image. That way, a new, clean image (that you had preconfigured to carry all required software) can be fired each time. Details here: https://confluence.jetbrains.com/display/TCD10/TeamCity+Integration+with+Cloud+Solutions VMWare vSphere is supported for this feature.
I'll look into the latter option. Thanks. :)