Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
77 changes: 67 additions & 10 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -177,8 +177,8 @@ jobs:
- name: Distribute
run: make dist-webui

docker:
name: Docker
docker-amd64:
name: Docker AMD64
needs: [testing, create_release]
runs-on: ubuntu-latest
steps:
Expand All @@ -187,17 +187,74 @@ jobs:
with:
go-version: stable
id: go

- name: Check out code
uses: actions/checkout@v4
- name: Extract VERSION from Makefile
id: get_version
run: |
VERSION=$(make --no-print-directory get-version)
echo "version=$VERSION" >> $GITHUB_OUTPUT
- name: Login to DockerHub
run: echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin
env:
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- name: Build and push amd64 image
run: |
docker build --platform linux/amd64 -t moov/ach:${{ steps.get_version.outputs.version }}-amd64 -t moov/ach:latest-amd64 -f Dockerfile .
docker push moov/ach:${{ steps.get_version.outputs.version }}-amd64
docker push moov/ach:latest-amd64

- name: Docker
run: make docker

- name: Docker Push
run: |+
echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin
make release-push
docker-arm64:
name: Docker ARM64
needs: [testing, create_release]
runs-on: ubuntu-24.04-arm
steps:
- name: Set up Go 1.x
uses: actions/setup-go@v5
with:
go-version: stable
id: go
- name: Check out code
uses: actions/checkout@v4
- name: Extract VERSION from Makefile
id: get_version
run: |
VERSION=$(make --no-print-directory get-version)
echo "version=$VERSION" >> $GITHUB_OUTPUT
- name: Login to DockerHub
run: echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin
env:
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- name: Build and push arm64 image
run: |
docker build --platform linux/arm64 -t moov/ach:${{ steps.get_version.outputs.version }}-arm64 -t moov/ach:latest-arm64 -f Dockerfile .
docker push moov/ach:${{ steps.get_version.outputs.version }}-arm64
docker push moov/ach:latest-arm64

docker-manifest:
name: Docker Manifest
needs: [docker-amd64, docker-arm64]
runs-on: ubuntu-latest
steps:
- name: Extract VERSION from Makefile
id: get_version
run: |
VERSION=$(make --no-print-directory get-version)
echo "version=$VERSION" >> $GITHUB_OUTPUT
- name: Login to DockerHub
run: echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin
env:
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- name: Create and push manifests
run: |
docker manifest create moov/ach:${{ steps.get_version.outputs.version }} \
moov/ach:${{ steps.get_version.outputs.version }}-amd64 \
moov/ach:${{ steps.get_version.outputs.version }}-arm64
docker manifest push moov/ach:${{ steps.get_version.outputs.version }}
docker manifest create moov/ach:latest \
moov/ach:latest-amd64 \
moov/ach:latest-arm64
docker manifest push moov/ach:latest
3 changes: 3 additions & 0 deletions makefile
Original file line number Diff line number Diff line change
Expand Up @@ -104,3 +104,6 @@ cover-test:
go test -coverprofile=cover.out ./...
cover-web:
go tool cover -html=cover.out

get-version:
@echo $(VERSION)
Loading