github-integration-plugin icon indicating copy to clipboard operation
github-integration-plugin copied to clipboard

Pending commit statuses only for non-filtered matrix configurations

Open jpfeuffer opened this issue 8 years ago • 2 comments

Hi,

would it be possible to only set the commit statuses of the matrix configurations that actually pass a potential combination filter in a matrix project? (Using the "Set status before build" option). Currently we have some builds with a lot of unused combinations and they all show up as "Pending" forever in the PR.

jpfeuffer avatar Mar 31 '17 11:03 jpfeuffer

I guess yes, but i don't use matrix builds :)

KostyaSha avatar Mar 31 '17 11:03 KostyaSha

Okay I looked into it a bit. The issue arises when using "Set commit status before build". For matrix jobs, this spawns commit statuses for all active configurations when queuing the matrix parent job. The problem is, that you could have many things happening between then and the actual run of the children. Parameterized filtering, filter groovy script, etc. which leaves you with pending commit statuses that do not have an associated job. This can be solved by deactivating "Set commit status before build" but then you don't know if there are still jobs waiting in the Jenkins queue (because they do not show up in the PR until they start). So, I think the solution is in-between and would be to set the commit status to pending when the Job is added to the Jenkins queue (not earlier and not later). If you think it is possible I could have a look at it but I don't really know where to start.

jpfeuffer avatar Apr 06 '17 09:04 jpfeuffer