Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cache cargo-fuzz between invocations #396

Merged
merged 4 commits into from Jun 27, 2021
Merged

Cache cargo-fuzz between invocations #396

merged 4 commits into from Jun 27, 2021

Conversation

mgeisler
Copy link
Owner

This will make multiple runs on the same day faster since they can
reuse the cache. Fuzzing uses nightly Rust, so the cache will expire
daily.

This should save us about two minutes when fuzzing since we can reuse
the cargo-fuzz binary between runs.

While nightly Rust is required to do fuzzing, the cargo-fuzz binary is
not linked directly to the precise version of the nightly compiler
being used — I’ve been using a 0.8.0 release of cargo-fuzz for months
and it seems happy enough. We therefore link the cache with the latest
version number of cargo-fuzz itself, thus ensuring that we always use
the latest version.
This should give us an accumulating cache with the fuzz testing
corpus. Each run will see a cache miss, and fallback to downloading
the most recent cache. After the run, a new cache is uploaded.

The caches are small (3-5 MB) and deleted after a week, so the total
amount of data used is in the order of 30-40 MB.
@mgeisler mgeisler merged commit 8222afa into master Jun 27, 2021
@mgeisler mgeisler deleted the cache-build-tools branch June 27, 2021 10:14
@github-actions github-actions bot mentioned this pull request Feb 27, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant