minor(deps): update i386/alpine docker tag to v3.21 (#105) #118
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
name: docker | |
"on": | |
push: | |
branches: | |
- master | |
tags: | |
- v* | |
jobs: | |
docker: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
include: | |
- platform: linux/386 | |
goos: linux | |
goarch: 386 | |
- platform: linux/amd64 | |
goos: linux | |
goarch: amd64 | |
- platform: linux/arm64 | |
goos: linux | |
goarch: arm64 | |
- platform: linux/arm/6 | |
goos: linux | |
goarch: arm | |
goarm: 6 | |
steps: | |
- name: Checkout source | |
uses: actions/checkout@v4 | |
- name: Setup golang | |
uses: actions/setup-go@v5 | |
with: | |
go-version: ^1.23.0 | |
- name: Run generate | |
run: make generate | |
- name: Run build | |
env: | |
GOOS: ${{ matrix.goos }} | |
GOARCH: ${{ matrix.goarch }} | |
GOARM: ${{ matrix.goarm }} | |
run: make build | |
- name: Docker meta | |
id: meta | |
uses: docker/metadata-action@v5 | |
with: | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
images: | | |
gopad/gopad-cli | |
quay.io/gopad/gopad-cli | |
ghcr.io/gopad/gopad-cli | |
labels: | | |
org.opencontainers.image.vendor=Gopad | |
maintainer=Thomas Boerger <thomas@webhippie.de> | |
tags: | | |
type=ref,event=pr | |
type=raw,value=latest,enable=${{ github.ref == 'refs/heads/master' }} | |
type=semver,pattern={{version}} | |
type=semver,pattern={{major}}.{{minor}} | |
type=semver,pattern={{major}} | |
flavor: | | |
suffix=-${{ matrix.goos }}-${{ matrix.goarch }} | |
- name: Setup qemu | |
uses: docker/setup-qemu-action@v3 | |
- name: Setup buildx | |
id: buildx | |
uses: docker/setup-buildx-action@v3 | |
- name: Hub login | |
uses: docker/login-action@v3 | |
if: github.event_name != 'pull_request' | |
with: | |
username: ${{ secrets.DOCKER_USERNAME }} | |
password: ${{ secrets.DOCKER_PASSWORD }} | |
- name: Quay login | |
uses: docker/login-action@v3 | |
if: github.event_name != 'pull_request' | |
with: | |
registry: quay.io | |
username: ${{ secrets.QUAY_USERNAME }} | |
password: ${{ secrets.QUAY_PASSWORD }} | |
- name: Ghcr login | |
uses: docker/login-action@v3 | |
if: github.event_name != 'pull_request' | |
with: | |
registry: ghcr.io | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build image | |
uses: docker/build-push-action@v6 | |
with: | |
builder: ${{ steps.buildx.outputs.name }} | |
context: . | |
file: docker/Dockerfile.${{ matrix.goos }}.${{ matrix.goarch }} | |
platforms: ${{ matrix.platform }} | |
push: ${{ github.event_name != 'pull_request' }} | |
labels: ${{ steps.meta.outputs.labels }} | |
tags: ${{ steps.meta.outputs.tags }} | |
provenance: false | |
manifest: | |
runs-on: ubuntu-latest | |
needs: docker | |
steps: | |
- name: Checkout source | |
uses: actions/checkout@v4 | |
- name: Hub tags | |
id: hub | |
uses: docker/metadata-action@v5 | |
with: | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
images: gopad/gopad-cli | |
tags: | | |
type=raw,value=latest,enable=${{ github.ref == 'refs/heads/master' }} | |
type=semver,pattern={{version}} | |
type=semver,pattern={{major}}.{{minor}} | |
type=semver,pattern={{major}} | |
- name: Hub manifest | |
uses: actionhippie/manifest@v1 | |
with: | |
username: ${{ secrets.DOCKER_USERNAME }} | |
password: ${{ secrets.DOCKER_PASSWORD }} | |
platforms: linux/amd64,linux/386,linux/arm64,linux/arm/v6 | |
template: gopad/gopad-cli:VERSION-OS-ARCH | |
target: ${{ steps.hub.outputs.tags }} | |
ignore_missing: true | |
- name: Quay tags | |
id: quay | |
uses: docker/metadata-action@v5 | |
with: | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
images: quay.io/gopad/gopad-cli | |
tags: | | |
type=raw,value=latest,enable=${{ github.ref == 'refs/heads/master' }} | |
type=semver,pattern={{version}} | |
type=semver,pattern={{major}}.{{minor}} | |
type=semver,pattern={{major}} | |
- name: Quay manifest | |
uses: actionhippie/manifest@v1 | |
with: | |
username: ${{ secrets.QUAY_USERNAME }} | |
password: ${{ secrets.QUAY_PASSWORD }} | |
platforms: linux/amd64,linux/386,linux/arm64,linux/arm/v6 | |
template: quay.io/gopad/gopad-cli:VERSION-OS-ARCH | |
target: ${{ steps.quay.outputs.tags }} | |
ignore_missing: true | |
- name: Ghcr tags | |
id: ghcr | |
uses: docker/metadata-action@v5 | |
with: | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
images: ghcr.io/gopad/gopad-cli | |
tags: | | |
type=raw,value=latest,enable=${{ github.ref == 'refs/heads/master' }} | |
type=semver,pattern={{version}} | |
type=semver,pattern={{major}}.{{minor}} | |
type=semver,pattern={{major}} | |
- name: Ghcr manifest | |
uses: actionhippie/manifest@v1 | |
with: | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
platforms: linux/amd64,linux/386,linux/arm64,linux/arm/v6 | |
template: ghcr.io/gopad/gopad-cli:VERSION-OS-ARCH | |
target: ${{ steps.ghcr.outputs.tags }} | |
ignore_missing: true | |
readme: | |
runs-on: ubuntu-latest | |
needs: docker | |
steps: | |
- name: Checkout source | |
uses: actions/checkout@v4 | |
- name: Hub readme | |
uses: actionhippie/pushrm@v1 | |
with: | |
provider: dockerhub | |
target: gopad/gopad-cli | |
username: ${{ secrets.DOCKER_USERNAME }} | |
password: ${{ secrets.DOCKER_PASSWORD }} | |
description: "Gopad: API" | |
readme: README.md | |
- name: Quay readme | |
uses: actionhippie/pushrm@v1 | |
with: | |
provider: quay | |
target: quay.io/gopad/gopad-cli | |
apikey: ${{ secrets.QUAY_APIKEY }} | |
readme: README.md | |
... |