aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEllie Huxtable <ellie@atuin.sh>2026-03-16 13:52:46 -0700
committerGitHub <noreply@github.com>2026-03-16 13:52:46 -0700
commitf129e2afa5015e7e335aa03de8c3f75505a66f58 (patch)
tree05858f31605f3c36d8ab2c9a4e86afa10addcec0
parentfix: Nushell 0.111; future Nushell 0.112 support (#3266) (diff)
downloadatuin-f129e2afa5015e7e335aa03de8c3f75505a66f58.zip
chore(ci): use depot to build docker images too (#3281)
<!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
-rw-r--r--.github/workflows/docker.yaml103
-rw-r--r--depot.json1
2 files changed, 10 insertions, 94 deletions
diff --git a/.github/workflows/docker.yaml b/.github/workflows/docker.yaml
index e7b3da6a..68a1ad5c 100644
--- a/.github/workflows/docker.yaml
+++ b/.github/workflows/docker.yaml
@@ -5,72 +5,23 @@ on:
branches: [main]
jobs:
- publish_x86:
+ publish:
concurrency:
- group: ${{ github.ref }}-x86
+ group: ${{ github.ref }}-docker
cancel-in-progress: true
permissions:
packages: write
- runs-on: ubuntu-latest
+ runs-on: depot-ubuntu-24.04
steps:
- uses: actions/checkout@v6
- with:
- repository: atuinsh/atuin
- path: "./"
- name: Get Repo Owner
id: get_repo_owner
run: echo "REPO_OWNER=$(echo ${{ github.repository_owner }} | tr '[:upper:]' '[:lower:]')" > $GITHUB_ENV
- - name: Set up Docker Buildx
- uses: docker/setup-buildx-action@v3
- - name: Login to container Registry
- uses: docker/login-action@v3
- with:
- username: ${{ github.repository_owner }}
- password: ${{ secrets.GITHUB_TOKEN }}
- registry: ghcr.io
-
- - name: Get short sha
- id: shortsha
- run: echo "short_sha=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
-
- - name: Release build
- id: release_build
- uses: docker/build-push-action@v6
- with:
- outputs: "type=registry,push=true"
- platforms: linux/amd64
- file: ./Dockerfile
- context: .
- provenance: false
- build-args: |
- Version=dev
- GitCommit=${{ steps.shortsha.outputs.short_sha }}
- tags: |
- ghcr.io/${{ env.REPO_OWNER }}/atuin:${{ steps.shortsha.outputs.short_sha }}-amd64
-
- publish_aarch64:
- concurrency:
- group: ${{ github.ref }}-aarch64
- cancel-in-progress: true
- permissions:
- packages: write
-
- runs-on: ubuntu-24.04-arm
- steps:
- - uses: actions/checkout@v6
- with:
- repository: atuinsh/atuin
- path: "./"
-
- - name: Get Repo Owner
- id: get_repo_owner
- run: echo "REPO_OWNER=$(echo ${{ github.repository_owner }} | tr '[:upper:]' '[:lower:]')" > $GITHUB_ENV
+ - uses: depot/setup-action@v1
- - name: Set up Docker Buildx
- uses: docker/setup-buildx-action@v3
- name: Login to container Registry
uses: docker/login-action@v3
with:
@@ -82,12 +33,11 @@ jobs:
id: shortsha
run: echo "short_sha=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
- - name: Release build
- id: release_build
- uses: docker/build-push-action@v6
+ - name: Build and push
+ uses: depot/build-push-action@v1
with:
- outputs: "type=registry,push=true"
- platforms: linux/arm64
+ push: true
+ platforms: linux/amd64,linux/arm64
file: ./Dockerfile
context: .
provenance: false
@@ -95,39 +45,4 @@ jobs:
Version=dev
GitCommit=${{ steps.shortsha.outputs.short_sha }}
tags: |
- ghcr.io/${{ env.REPO_OWNER }}/atuin:${{ steps.shortsha.outputs.short_sha }}-aarch64
-
- publish_manifest:
- runs-on: ubuntu-latest
- needs: [publish_x86, publish_aarch64]
- steps:
- - uses: actions/checkout@v6
- with:
- repository: atuinsh/atuin
- path: "./"
-
- - name: Get Repo Owner
- id: get_repo_owner
- run: echo "REPO_OWNER=$(echo ${{ github.repository_owner }} | tr '[:upper:]' '[:lower:]')" > $GITHUB_ENV
-
- - name: Login to container Registry
- uses: docker/login-action@v3
- with:
- username: ${{ github.repository_owner }}
- password: ${{ secrets.GITHUB_TOKEN }}
- registry: ghcr.io
-
- - name: Get short sha
- id: shortsha
- run: echo "short_sha=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
-
- - name: Create manifest
- run: |
- docker manifest create ghcr.io/${{ env.REPO_OWNER }}/atuin:${{ steps.shortsha.outputs.short_sha }} \
- --amend ghcr.io/${{ env.REPO_OWNER }}/atuin:${{ steps.shortsha.outputs.short_sha }}-amd64 \
- --amend ghcr.io/${{ env.REPO_OWNER }}/atuin:${{ steps.shortsha.outputs.short_sha }}-aarch64
- docker manifest annotate --arch amd64 --os linux ghcr.io/${{ env.REPO_OWNER }}/atuin:${{ steps.shortsha.outputs.short_sha }} ghcr.io/${{ env.REPO_OWNER }}/atuin:${{ steps.shortsha.outputs.short_sha }}-amd64
- docker manifest annotate --arch arm64 --os linux ghcr.io/${{ env.REPO_OWNER }}/atuin:${{ steps.shortsha.outputs.short_sha }} ghcr.io/${{ env.REPO_OWNER }}/atuin:${{ steps.shortsha.outputs.short_sha }}-aarch64
- docker manifest inspect ghcr.io/${{ env.REPO_OWNER }}/atuin:${{ steps.shortsha.outputs.short_sha }}
-
- docker manifest push ghcr.io/${{ env.REPO_OWNER }}/atuin:${{ steps.shortsha.outputs.short_sha }}
+ ghcr.io/${{ env.REPO_OWNER }}/atuin:${{ steps.shortsha.outputs.short_sha }}
diff --git a/depot.json b/depot.json
new file mode 100644
index 00000000..e51895a6
--- /dev/null
+++ b/depot.json
@@ -0,0 +1 @@
+{"id":"v6vqpk6559"}