Earthly is an open source build automation framework designed to create fast, repeatable, and portable software builds. It runs builds inside containers, isolating dependencies and execution environments so the same build can run consistently on developer machines and CI systems. Earthly uses Earthfiles, which combine concepts from Dockerfiles and Makefiles into a syntax intended to be easy for developers to read and maintain. It works with existing compilers, programming languages, frameworks, and build tools, allowing teams to wrap their existing build processes rather than replace them. Earthly automatically creates build dependency graphs, runs independent steps in parallel, and caches results to improve build performance. It can be used across monorepos and multiple repositories and integrates with CI/CD platforms such as GitHub Actions, GitLab CI/CD, Jenkins, and CircleCI.
Features
- Repeatable Builds – Runs builds in isolated containers to provide consistent results across local development and CI environments.
- Build Caching – Caches build steps and artifacts so unchanged work does not need to be executed again.
- Parallel Execution – Automatically identifies independent build steps and executes them concurrently to accelerate builds.
- Earthfile Syntax – Uses a readable build specification that combines familiar concepts from Dockerfiles and Makefiles.
- Docker Compatibility – Supports existing Dockerfiles and can produce Docker images, build artifacts, tests, and other outputs.
- Reusable Build Targets – Enables teams to reuse targets, artifacts, and images across Earthfiles, repositories, monorepos, and polyrepos.