52 lines
1.3 KiB
YAML
52 lines
1.3 KiB
YAML
name: Release
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- "*"
|
|
|
|
jobs:
|
|
docker-build:
|
|
runs-on: ${{ matrix.runner }}
|
|
strategy:
|
|
matrix:
|
|
include:
|
|
- runner: "buildjet-4vcpu-ubuntu-2204"
|
|
tag: "latest"
|
|
platform: "amd64"
|
|
- runner: "buildjet-4vcpu-ubuntu-2204-arm"
|
|
tag: "arm"
|
|
platform: "linux/arm64"
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v3
|
|
- name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v2
|
|
|
|
- name: Docker meta
|
|
id: meta
|
|
uses: docker/metadata-action@v4
|
|
with:
|
|
images: ${{ secrets.DOCKER_IMAGE }}
|
|
flavor: latest=false
|
|
tags: |
|
|
type=raw,value=${{ matrix.tag }}
|
|
|
|
- name: Login to image repository
|
|
if: github.ref_type == 'tag'
|
|
uses: docker/login-action@v2
|
|
with:
|
|
username: ${{ secrets.DOCKER_USER }}
|
|
password: ${{ secrets.DOCKER_TOKEN }}
|
|
|
|
- name: Build and push
|
|
uses: docker/build-push-action@v4
|
|
with:
|
|
context: .
|
|
file: Dockerfile
|
|
platforms: ${{ matrix.platform }}
|
|
push: ${{ github.ref_type == 'tag' }}
|
|
tags: ${{ steps.meta.outputs.tags }}
|
|
labels: ${{ steps.meta.outputs.labels }}
|