I have briefly looked at the TeamCity OpenAPI. I expected to see a set of interfaces and/or base classes guiding the implementation of a new BuildAgent or Runner. Unfortunately, I'm having trouble quickly discerning the relevant interfaces/classes. I can't even seem to find wiki content or other documentation demonstrating how to create custom build agents and/or runners.
My real interest is to see if there is an obvious hook allowing one to extend a build agent to switch in various VMWare images based upon the desired build environment.
Any guidance would be appreciated.