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

Universal Caching Demo #1

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open

Universal Caching Demo #1

wants to merge 3 commits into from

Conversation

brandonSc
Copy link
Collaborator

@brandonSc brandonSc commented Sep 11, 2024

🌍 Universal Caching by Earthly

This Pull Request demonstrates the awesome performance of Earthly's Universal Caching algorithm in Github Actions. Earthly automatically detects cache hits based on git metadata and inferred inputs of each build command.

Any time Earthly detects a re-run of the same build step, the execution of that step is skipped entirely, and its outputs are instantly restored from cache.

🚀 2-20x Faster Builds

By switching your existing Github Actions builds to Earthly, you can expect a 2-20x improvement in average build times. Faster builds mean less time waiting for CI/CD, easier debugging, lower compute costs, and more money in your pocket.

For example, the run time of a go build step in this PR went from 2 minutes and 38 seconds un-cached to only 3 seconds fully cached.

⚙️ How to Switch

Switching to Earthly + Universal Caching is easy, and you can be up-and-running with just a couple of changes:

  1. Sign up for Earthly and launch a Satellite with Github Actions enabled
  2. Change the runs-on statement to point to your Satellite
  3. Write ucacher before every command that can be cached

⚠️ Note

Universal Caching is still in alpha stages of development. There are many known limitations and bugs.

@brandonSc brandonSc force-pushed the universal-caching-demo branch 3 times, most recently from b0a0149 to 05d2010 Compare September 11, 2024 19:07
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.

1 participant