Build chains & triggers (requesting clarification on documentation)
In your documentation, you state "If you have a build chain (i.e. a number of builds interconnected by snapshot dependencies), the triggers are to be configured in the resulting build, the top-most build. When this build is triggered, all its snapshot dependencies are triggered too." This is ambiguous as I would consider the "resulting build" to be at the end of the build chain, not at the top, so I have no idea what this is trying to tell me.
I have a chain that looks like this:
A -> B -> C -> F
| ^
v |
D -> E
Which would you consider to be the "top-most build"? Which would you consider to be the "resulting build"? From the doc, I would think they would be the same but, in my case, I would consider A to be the "top-most build" and F to be the "resulting build". Adding a picture to the documentation would clarify this, in addition to fixing the ambiguous language.
I have VCS triggers set on B, C, D, E & F. that trigger a build on changes in snapshot dependencies.
I have a VCS trigger set on A that triggers a build on each check-in. Is this the correct way to set this up? Or should this be E instead.
When a check-in is done, two builds are triggered for each of A..E but then the build queue is usually cleaned up a few seconds later and only the 5 (A..E) remain. However, occasionally, all 10 seem to persist. Any idea what the problem is?
Thanks in advance.
--Karen
PS: Found the edit option but the gear icon is not intuitive. Usually means settings.
Please sign in to leave a comment.
Apparently symbols are not supported but I'm not seeing a way to edit this. Guess I tried to get too fancy!
Hi Karen,
with resulting build we mean the same you mean with "end build". Top-most would be at the top if the graph was converted to a tree.
Regarding the setup itself, the suggestion in the documentation is to setup the triggers only in the final build of the chain, in your example F, because triggering F will trigger an instance of all of its dependencies (and reuse older builds if configured to do so). That way you ensure all the dependencies are triggered only once. I think the last sentence "When this build is triggered, all its snapshot dependencies are triggered too." explains it, but maybe changing a bit the wording could make it unambiguous.
Regarding the documentation, I've created the following request in our tracker, please feel free to add any comments or remarks: https://youtrack.jetbrains.com/issue/TW-48729