🚀 How Astral made CI runs 4.7x faster with Depot
🚀 Astral made CI runs 4.7x faster with Depot
GitHub Actions Benchmark
Mastodon
mastodon/mastodonMastodon is a free, open-source social network server based on ActivityPub where users can follow friends and discover new ones. On Mastodon, users can publish anything they want: links, pictures, text, video. All Mastodon servers are interoperable as a federated network.
This is a multi-architecture benchmark, it built an Intel (linux/amd64) and Arm (linux/arm64) image.
With
depot build, the past 10 runs were9.2x faster
saving a total of
3h 35m 18s
compared to
docker build.About the benchmark
For every commit to mastodon/mastodon, GitHub Actions runs one workflow job building the project with the
docker/build-push-action action and caching enabled and one workflow job building the project with depot build. The time each job takes is recorded and visualized here.Last 10 GitHub Actions Runs
Split `invite_users` permission into `invite_bypass_approval` (#38278)
Depot
3m 19s / 9.2x fasterDocker
30m 37sPrefer `to_json` in backup service (#38297)
Depot
3m 13s / 10.5x fasterDocker
33m 49sNew service to fetch remote collections (#38298)
Depot
3m 9s / 5.7x fasterDocker
17m 50sRefactor: Relative timestamp component (#38275)
Depot
2m 24s / 7x fasterDocker
16m 41sProfile redesign: Adjust account number fields to be stacked (#38283)
Depot
2m 16s / 7.9x fasterDocker
17m 48sFinal backup service prep for JSON cleanup (#38284)
Depot
2m 17s / 15.9x fasterDocker
36m 20sUpdate dependency libvips to v8.18.1 (#38276)
Depot
2m 54s / 12.3x fasterDocker
35m 35sNew Crowdin Translations (automated) (#38288)
Depot
2m 27s / 7.7x fasterDocker
18m 54sAdd missing h1 headings to Reset Password & Resend Confirmation Link pages (#38285)
Depot
2m 9s / 7.8x fasterDocker
16m 51sFix error when processing `Add` activity where the target is embedded and not a special collection (#38282)
Depot
2m 9s / 8x fasterDocker
17m 10sDocker Workflow
jobs:
benchmark-docker:
name: Build with Docker
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- uses: docker/setup-buildx-action@v2
- uses: docker/setup-qemu-action@v2
- uses: docker/build-push-action@v2
with:
tags: depot/benchmark-mastodon:benchmark
platforms: linux/amd64,linux/arm64
View workflow source benchmark-docker:
name: Build with Docker
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- uses: docker/setup-buildx-action@v2
- uses: docker/setup-qemu-action@v2
- uses: docker/build-push-action@v2
with:
tags: depot/benchmark-mastodon:benchmark
platforms: linux/amd64,linux/arm64
Depot Workflow
jobs:
benchmark-depot:
name: Build with Depot
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- uses: depot/setup-action@v1
- uses: depot/build-push-action@v1
with:
tags: depot/benchmark-mastodon:benchmark
platforms: linux/amd64,linux/arm64
View workflow source benchmark-depot:
name: Build with Depot
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- uses: depot/setup-action@v1
- uses: depot/build-push-action@v1
with:
tags: depot/benchmark-mastodon:benchmark
platforms: linux/amd64,linux/arm64
Your builds have never been this quick.
Get started