Build Configurations runs only one exemplar of their dependencies
I have build configuration A1 which has another build configurations in dependency: B1, B2, B3. In its turn each, B1, B2 and B3 have 6 build configurations in dependency.
Question is:
Why when i am running A1, its shows me that is B1, B2, B3 and 6 build configurations from one of B1, B2 or B3 dependency is running. But another 12 configurations is not.
What i am doing wrong?
Thanks.
Please sign in to leave a comment.
Hi,
Depending on your configuration of the dependencies, TeamCity might not run new builds if it finds that there are suitable builds of some of them. Information on what constitutes a suitable build here: https://confluence.jetbrains.com/display/TCD10/Snapshot+Dependencies
If you check the "Build Chain" tab of the build results page, you should see which builds have been used for all of them. If you find there that not all of them are showing up either, please take a screenshot of the build chain and on the dependencies configuration and share it with us.
Thanks for reply.
I've seen Build Chain before creation of this question. By the link that you provided, it is written that such behavior will only occur if the parameter Do not run new build if there is a suitable one option of a corresponding snapshot dependency is selected. But in my case all of dependencies set to "Always run a new build".
Hi Aggro,
Do your builds b1, b2 and b3 depend on the same 6 builds? or on 6 different builds each? Because that graph seems to indicate that they depend on the same 6 builds. Would you expect it to build them 3 times each?
Yes, they are depend on same 6 builds, but with different parameters. I should create 12 more builds for this case?
Hi,
Yes, this is the case, when creating the build chain graph, build configuration ID is used as a unique identifier, so it's not possible to reuse them. You can extract a template and reuse it setting the different parameters in the multiple different configurations, that way you keep having only one place to change every configuration (the template) with the different parameters in the configurations themselves.