Is TeamCity ready for my architecture?

I've already been on here asking various questions about the inner workings of TeamCity as I evaluate it.  One of our departments has already purchased a license and plans to use TC extensively.  However, I need to pull back and ask some really general questions to ensure that I have the support of JetBrains before my department makes the switch as well.

Our build architecture consists of 9 WinXP machines, 5 Mac machines, and 14 Linux machines - all building separate versions of dozens of repositories we have.  It may be obvious but I should state that our software is multi-platform and thus when a change is checked into a repository, we expect 1 of each of those platforms to be picked up by TeamCity and used to build the latest for said repository.  The WinXP and Mac machines are in California, the Linux machines are in Arizona and Texas, and the server will most likely end up in Arizona.  These machines are connected through a VPN but are obviously not all on the same LAN.  Because of this complex architecture we have, we've been bitten by bugs using other kinds of software.  During my evaluation, it seems to me that TeamCity is able to handle this heterogeneous, networked build environment.  So let's get down to the broad, vague questions.  

Does JetBrains agree that TeamCity is able to support this kind of architecture?  Should we run into any problems, does JetBrains allow a deeper interaction for support other than these forums, the bug tracker, and a support submission form?  I'm curious what kind of support interactions others have had and if they've been sufficient to quickly and effectively solve problems.  The last thing I need is to ask why something breaks and then be told "We do not recommend that kind of build environment." as an answer.  Can I be assured I won't?

Thanks for reading and I appreciate any feedback.  

1 comment

Hello Dave,

  TeamCity supports the architecture you're describing. You can use snapshot and artifact dependencies to build a common software package which includes parts built by different build agents (of different platforms). Working with multiple build agents is one of the core TeamCity's features, and TeamCity handles this pretty well.

  Regarding multiple networks and VPN - TeamCity requires 2-dimension TCP connection between build agents and TeamCity server. I believe there shouldn't be any problems, unless you have some firewall restrictions on server or agent machines.

  The support JetBrains provides is mostly limited to forum, tracker, and e-mail. We also provide e-mail support to paid customers.

  Actually, to be on a safe side, I'd strongly suggest you to install TeamCity on your server and test it in Professional mode. You'll have support for 3 build agents, and you can run your configurations and test various combinations of your build agents. Later you can buy more licenses for build agents and buy Enterprise license for the server to remove other limits.

  Kind regards,
  KIR

0

Please sign in to leave a comment.