Open shuber opened 8 years ago
Ah yes, this is a good idea! I've also run into this exact problem.
We're due in for a redesign of the builds page soon, so I think we'll maybe try and work this feedback into the new page then. Thanks!!
We have a pipeline that looks like
version
build/test windows
build/test linux
build/test macOS
wait
integration tests
test1
test2
test3
wait
end to end tests
e2e 1
e2e 2
e2e 3
wait
note - no wait!
as in, both the integration tests and the e2e test suite depend on successful build/test across those 3 platforms. However, for risk vs velocity, we only run build/test + integration tests pre-merge PR
, and we run the end to end suite less often (a few times a day). Both suites must be green to release.
In TeamCity, we've been able to model this via snapshot dependencies and 'meta' steps that cause dependencies to be triggered, and we've been able to set this up so that TeamCity, when one runs the pipeline, only re-runs steps that have failed. This is a massive optimisation for us. Hopefully it is achievable within BuildKite - haven't modelled this more complex pipeline yet to see what happens.
We're running with about 80 jobs per build and occasionally we get intermittent failures for stuff like capybara or npm issues. We currently have to open up each failed job and click "retry" but it'd be way more convenient to have one button that retries all the failed jobs.