mirror of
https://github.com/bevyengine/bevy
synced 2024-11-25 22:20:20 +00:00
d3ae816e3e
# Objective - There are a few random failures in CI, mostly due to contacting crates.io or checking for deadlinks - CI can take some time, more than 20 minutes for a full status - A clippy/format issue stops running tests on other platforms ## Solution - Use GitHub cache for cargo artefacts - This speeds up builds and reduce dependencies on outside world - Reorder and add dependencies between short jobs. They are still setup to run even if one of the dependency failed - This reduce the number of parallel jobs that are running for one PR. On GitHub free tier, we're limited to 20. - Split CI checks (format & clippy) in its own job - This speeds up test jobs, and allow us to not kill all platform tests for a format issue - Retry in case of dead links check failure - Internet is just that kind of place where things may seem dead at some point but back alive 5 seconds later ## Before <img width="1062" alt="Screenshot 2021-07-27 at 01 18 52" src="https://user-images.githubusercontent.com/8672791/127071973-9a2c5ce8-c871-4f8d-9b17-08871824b6c4.png"> ## After (with all cache live) <img width="1063" alt="Screenshot 2021-07-27 at 01 18 28" src="https://user-images.githubusercontent.com/8672791/127071986-767a7e65-53ed-45fd-8d75-51a571f0b851.png"> |
||
---|---|---|
.. | ||
ci.yml | ||
dependencies.yml | ||
ios.yml | ||
label.yml |