Fix sticky overrides being clobbered by retriggered ProwJobs - #818
Conversation
|
Skipping CI for Draft Pull Request. |
✅ Deploy Preview for k8s-prow ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: smg247 The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
/retest |
petr-muller
left a comment
There was a problem hiding this comment.
This looks like two separate changes and should be done in two commits (and I'd actually prefer two PRs myself). I think the override doing an abort is trickier than it seems, there needs to be some handover to Plank to terminate the actual workload.
buildAll triggers all auto-run presubmits unconditionally, even when their context already has a successful GitHub status or check run. This wastes resources re-running jobs that have already passed. Fetch combined status and check runs before filtering presubmits, and skip any whose context is already successful. Falls back to running everything if the status fetch fails.
e9b2c61 to
82e1f16
Compare
|
/hold cancel |
|
/cc |
Two issues prevent /override-sticky statuses from persisting. This takes care of the issues with
trigger.Trigger plugin: skip presubmits whose context already has a SUCCESS status in buildAll(). Previously, when LGTM was applied to an untrusted PR, buildAll would create new ProwJobs for all presubmits regardless of current status, clobbering sticky overrides when the new jobs completed.