Skip to content

Update docker-publish.yaml #2

Update docker-publish.yaml

Update docker-publish.yaml #2

name: Docker
on:
push:
branches:
- master
workflow_dispatch: # Allow manual triggering of the workflow
permissions:
contents: read
packages: write
jobs:
push:
name: Push
runs-on: ubuntu-20.04
strategy:
fail-fast: false
matrix:
image:
- {type: "games", image: "source", PREFIX: "", SUFFIX: "", context: "./games/source", platforms: "linux/amd64"}
- {type: "generic", image: "alpine", PREFIX: "", SUFFIX: "", context: "./generic/alpine", platforms: "linux/amd64,linux/arm64"}
- {type: "generic", image: "debian", PREFIX: "", SUFFIX: "", context: "./generic/debian", platforms: "linux/amd64,linux/arm64"}
- {type: "generic", image: "ubi" , PREFIX: "", SUFFIX: "", context: "./generic/ubi" , platforms: "linux/amd64,linux/arm64"}
- {type: "go", image: "1.19", PREFIX: "go", SUFFIX: "", context: "./go", platforms: "linux/amd64,linux/arm64"}
- {type: "go", image: "1.20", PREFIX: "go", SUFFIX: "", context: "./go", platforms: "linux/amd64,linux/arm64"}
- {type: "go", image: "1.21", PREFIX: "go", SUFFIX: "", context: "./go", platforms: "linux/amd64,linux/arm64"}
- {type: "installers", image: "alpine", PREFIX: "", SUFFIX: "-install", context: "./installers/alpine", platforms: "linux/amd64,linux/arm64"}
- {type: "installers", image: "debian", PREFIX: "", SUFFIX: "-install", context: "./installers/debian", platforms: "linux/amd64,linux/arm64"}
- {type: "installers", image: "source", PREFIX: "", SUFFIX: "-install", context: "./installers/source", platforms: "linux/amd64"}
- {type: "installers", image: "ubi" , PREFIX: "", SUFFIX: "-install", context: "./installers/ubi" , platforms: "linux/amd64,linux/arm64"}
# Java 8 build fails, maybe the image source is dead?
# - {type: "java", image: "8" , PREFIX: "java", SUFFIX: "", context: "./java", platforms: "linux/amd64"}
- {type: "java", image: "8-zulu" , PREFIX: "java", SUFFIX: "", context: "./java", platforms: "linux/amd64,linux/arm64"}
- {type: "java", image: "11-hotspot", PREFIX: "java", SUFFIX: "", context: "./java", platforms: "linux/amd64,linux/arm64"}
- {type: "java", image: "11-zulu" , PREFIX: "java", SUFFIX: "", context: "./java", platforms: "linux/amd64,linux/arm64"}
- {type: "java", image: "17-zulu" , PREFIX: "java", SUFFIX: "", context: "./java", platforms: "linux/amd64,linux/arm64"}
- {type: "java", image: "18-zulu" , PREFIX: "java", SUFFIX: "", context: "./java", platforms: "linux/amd64,linux/arm64"}
- {type: "java", image: "19-zulu" , PREFIX: "java", SUFFIX: "", context: "./java", platforms: "linux/amd64,linux/arm64"}
- {type: "java", image: "20-zulu" , PREFIX: "java", SUFFIX: "", context: "./java", platforms: "linux/amd64,linux/arm64"}
- {type: "java", image: "21-zulu" , PREFIX: "java", SUFFIX: "", context: "./java", platforms: "linux/amd64,linux/arm64"}
- {type: "node", image: "16", PREFIX: "node", SUFFIX: "", context: "./node", platforms: "linux/amd64,linux/arm64"}
- {type: "node", image: "18", PREFIX: "node", SUFFIX: "", context: "./node", platforms: "linux/amd64,linux/arm64"}
- {type: "python", image: "3.10", PREFIX: "python", SUFFIX: "", context: "./python", platforms: "linux/amd64,linux/arm64"}
- {type: "python", image: "3.11", PREFIX: "python", SUFFIX: "", context: "./python", platforms: "linux/amd64,linux/arm64"}
- {type: "python", image: "3.12", PREFIX: "python", SUFFIX: "", context: "./python", platforms: "linux/amd64,linux/arm64"}
- {type: "runtimes", image: "steamrt-sniper", PREFIX: "", SUFFIX: "", context: "./runtimes/steamrt-sniper", platforms: "linux/amd64"}
steps:
- name: Code checkout
uses: actions/checkout@v4
- name: Setup QEMU
uses: docker/setup-qemu-action@v3
- name: Setup Docker buildx
uses: docker/setup-buildx-action@v3
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.ACCOUNT_TOKEN }}
# - name: Login to Quay
# uses: docker/login-action@v3
# with:
# registry: quay.io
# username: matthewp
# password: ${{ secrets.QUAY_SECRET }}
- name: Build and Push
uses: docker/build-push-action@v5
with:
context: ./${{ matrix.image.context }}
file: ./${{ matrix.image.type }}/${{ matrix.image.image }}/Containerfile
platforms: ${{ matrix.image.platforms }}
push: true
tags: |
ghcr.io/cerberus-labs-technologies/images:${{ matrix.image.PREFIX }}${{ matrix.image.image }}${{ matrix.image.SUFFIX }}