feat: v4 changes

This commit is contained in:
diced
2025-02-16 17:25:11 -08:00
parent a6807a681c
commit 477aca289a
7 changed files with 171 additions and 45 deletions

View File

@@ -2,9 +2,9 @@ name: 'Build'
on:
push:
branches: [v4]
branches: [v4, trunk]
pull_request:
branches: [v4]
branches: [v4, trunk]
workflow_dispatch:
jobs:

87
.github/workflows/docker-release.yml vendored Normal file
View File

@@ -0,0 +1,87 @@
name: 'Push Release Docker Images'
on:
push:
tags:
- 'v4.*.*'
workflow_dispatch:
jobs:
push:
strategy:
matrix:
arch: [amd64, arm64]
name: push release
runs-on: ubuntu-24.04${{ matrix.arch == 'arm64' && '-arm' || '' }}
steps:
- uses: actions/checkout@v4
- name: Get version
id: version
run: |
echo "zipline_version=$(jq .version package.json -r)" >> $GITHUB_OUTPUT
- name: Get commit sha
id: sha
run: |
echo "short_sha=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
- uses: docker/setup-buildx-action@v3
- uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- uses: docker/build-push-action@v6
with:
push: true
platforms: linux/${{ matrix.arch }}
cache-from: type=gha
cache-to: type=gha,mode=max
provenance: false
tags: |
ghcr.io/diced/zipline:${{ steps.version.outputs.zipline_version }}-${{ matrix.arch }}
ghcr.io/diced/zipline:${{ steps.version.outputs.zipline_version }}-${{ steps.sha.outputs.short_sha }}-${{ matrix.arch }}
amend-builds:
runs-on: ubuntu-24.04
needs: push
steps:
- uses: actions/checkout@v4
- name: Get version
id: version
run: |
echo "zipline_version=$(jq .version package.json -r)" >> $GITHUB_OUTPUT
- name: Get commit sha
id: sha
run: |
echo "short_sha=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
- uses: docker/setup-buildx-action@v3
- uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: pull images
run: |
docker pull --platform=linux/amd64 ghcr.io/diced/zipline:${{ steps.version.outputs.zipline_version }}-amd64
docker pull --platform=linux/arm64 ghcr.io/diced/zipline:${{ steps.version.outputs.zipline_version }}-arm64
- name: create manifests
run: |
docker manifest create ghcr.io/diced/zipline:${{ steps.version.outputs.zipline_version }} \
--amend ghcr.io/diced/zipline:${{ steps.version.outputs.zipline_version }}-amd64 \
--amend ghcr.io/diced/zipline:${{ steps.version.outputs.zipline_version }}-arm64 && \
docker manifest create ghcr.io/diced/zipline:latest \
--amend ghcr.io/diced/zipline:${{ steps.version.outputs.zipline_version }}-amd64 \
--amend ghcr.io/diced/zipline:${{ steps.version.outputs.zipline_version }}-arm64
- name: push manifests
run: |
docker manifest push ghcr.io/diced/zipline:${{ steps.version.outputs.zipline_version }} && \
docker manifest push ghcr.io/diced/zipline:latest

View File

@@ -2,7 +2,7 @@ name: 'Push Docker Images'
on:
push:
branches: [v4]
branches: [v4, trunk]
workflow_dispatch:
jobs:
@@ -36,10 +36,10 @@ jobs:
cache-to: type=gha,mode=max
provenance: false
tags: |
ghcr.io/diced/zipline:v4-${{ matrix.arch }}
ghcr.io/diced/zipline:v4-${{ steps.sha.outputs.short_sha }}-${{ matrix.arch }}
ghcr.io/diced/zipline:trunk-${{ matrix.arch }}
ghcr.io/diced/zipline:trunk-${{ steps.sha.outputs.short_sha }}-${{ matrix.arch }}
ammend-builds:
amend-builds:
runs-on: ubuntu-24.04
needs: push
steps:
@@ -57,19 +57,23 @@ jobs:
password: ${{ secrets.GITHUB_TOKEN }}
- name: pull images
run: |
docker pull --platform=linux/amd64 ghcr.io/diced/zipline:v4-${{ steps.sha.outputs.short_sha }}-amd64
docker pull --platform=linux/arm64 ghcr.io/diced/zipline:v4-${{ steps.sha.outputs.short_sha }}-arm64
docker pull --platform=linux/amd64 ghcr.io/diced/zipline:trunk-${{ steps.sha.outputs.short_sha }}-amd64
docker pull --platform=linux/arm64 ghcr.io/diced/zipline:trunk-${{ steps.sha.outputs.short_sha }}-arm64
- name: create manifests
run: |
docker manifest create ghcr.io/diced/zipline:v4-${{ steps.sha.outputs.short_sha }} \
docker manifest create ghcr.io/diced/zipline:trunk-${{ steps.sha.outputs.short_sha }} \
--amend ghcr.io/diced/zipline:v4-${{ steps.sha.outputs.short_sha }}-amd64 \
--amend ghcr.io/diced/zipline:v4-${{ steps.sha.outputs.short_sha }}-arm64 && \
docker manifest create ghcr.io/diced/zipline:trunk \
--amend ghcr.io/diced/zipline:v4-${{ steps.sha.outputs.short_sha }}-amd64 \
--amend ghcr.io/diced/zipline:v4-${{ steps.sha.outputs.short_sha }}-arm64
docker manifest create ghcr.io/diced/zipline:v4 \
--amend ghcr.io/diced/zipline:v4-${{ steps.sha.outputs.short_sha }}-amd64 \
--amend ghcr.io/diced/zipline:v4-${{ steps.sha.outputs.short_sha }}-arm64
- name: push manifests
run: |
docker manifest push ghcr.io/diced/zipline:v4-${{ steps.sha.outputs.short_sha }} && \
docker manifest push ghcr.io/diced/zipline:v4
docker manifest push ghcr.io/diced/zipline:trunk-${{ steps.sha.outputs.short_sha }} && \
docker manifest push ghcr.io/diced/zipline:trunk && \
docker manifest push ghcr.io/diced/zipline:v4 && \