How should I go about making Rust workflows go faster with CI's with GitHub Actions? Are there any cache actions for Rust or a place I could look for general optimizations?

This page summarizes the projects mentioned and recommended in the original post on /r/rust

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • sccache

    Sccache is a ccache-like tool. It is used as a compiler wrapper and avoids compilation when possible. Sccache has the capability to utilize caching in remote storage environments, including various cloud storage options, or alternatively, in local storage.

  • If your CI mostly runs tests or builds, you can get a lot of mileage out of sccache, which I've been using successfully for about a year with S3: https://github.com/mozilla/sccache#s3 Just be aware that sccache does not cache proc macros, and does not help with running cargo clippy. It's far from optimal, but it is plug-and-play and because it compresses everything it uses impressively little cloud storage. I'm looking at 36 GB after a year of not cleaning.

  • rust-cache

    A GitHub Action that implements smart caching for rust/cargo projects

  • There is an awesome github actions plugin that configures caching for `~/.cargo` and `target/`: https://github.com/Swatinem/rust-cache

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • bors-ng

    Discontinued 👁 A merge bot for GitHub Pull Requests

  • For projects using bors, CI time is the time to merge after the PR is approved. Plus, many developers use a PR workflow for even solo projects, and in that case you're reviewing your own PR, so you see it immediately and have already reviewed it.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts