Synchronize start of multiple builds that are part of a single chain?
I would like to synchronize the start of multiple builds that are all part of the same chain. Is there a built-in way to do this?
Essentially I am trying to keep only a single instance of an entire build chain running at any given time. The chain in question has a final build that has snapshot dependencies on 6 other builds, each with their own build agent. Only once the entire chain completes will any part of a queued up run of the same chain be removed from the queue. If it matters, the chain is question currently uses a finish build trigger on another chain.
Please sign in to leave a comment.
Hello, James.
There is an option in the TeamCity build configuration that limits the number of the simultaneously running builds.
Open General Settings tab for each your configuration and change this limit to 1.
with such a setting no build will be started until the previous one is finished.
Thanks for the reply Inna. I've tried that option but it's not accomplishing what I need. What I think I need is an option that limits the number of simultaneously running chains.
Because I only have one compatible agent per build, I'm effectively limited to a single simultaneously running build. Some of the builds that are part of a chain take less time than others. What I'm wanting to do is delay the next run of those builds that take less time until all of the builds within a chain have finished. Is there a different synchronization mechanism that will allow this or perhaps a different way of setting up the chain?
Hello, James.
Unfortunately currently it is not possible. We have an appropriate feature request https://youtrack.jetbrains.com/issue/TW-20644. Please vote for it, comment and watch the status.