I'm trying to figure out what I think is essentially setting up a build chain in TeamCity without the 'snapshot' behavior.
Our project has several Git repositories - A, B, C, D, E (there's actually more) - which have some interdependency:
The behavior we'd like is for when we check something into A, for A to build first, and eventually E to build when both D and C had finished building.
We used snapshot dependency for a while but had issues with it. For instance when B finished building due to a change in A, TeamCity would calculate a changeset for D that corresponds to the last time we'd checked into B, check out that changeset and build. In a lot of cases, this would mean we'd get a build of D that was several weeks old. Additionally, while building the dashboard would warn saying that a newer build for D was available but continue chugging along.
We switched to using plain Finished build triggers, but don't have any way to express build chains with it. E gets triggered independently by both D (via B) and C and ends up building multiple times whenever we finish a build of A..
What would be the best way to express our build dependencies?