Skip to content

Build and Push Container Image #208

Build and Push Container Image

Build and Push Container Image #208

Workflow file for this run

name: Build and Push Container Image
on:
workflow_run:
workflows: ["CI"]
types:
- completed
branches: [main]
release:
types: [published]
jobs:
docker:
runs-on: ubuntu-latest
if: ${{ github.event.workflow_run.conclusion == 'success' || github.event_name == 'release' }}
permissions:
contents: read
packages: write
steps:
- name: Set up QEMU
uses: docker/setup-qemu-action@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v4
- name: Log in to GitHub Container Registry
uses: docker/login-action@v4
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- uses: actions/checkout@v6
with:
ref: ${{ github.event.workflow_run.head_sha || github.sha }}
- name: Set image tags
id: vars
run: |
if [[ "${{ github.event_name }}" == "release" ]]; then
echo "TAGS=ghcr.io/robertzaage/grobro:latest,ghcr.io/robertzaage/grobro:${{ github.event.release.tag_name }}" >> $GITHUB_ENV
else
echo "TAGS=ghcr.io/robertzaage/grobro:dev" >> $GITHUB_ENV
fi
- name: Build and push to GHCR
uses: docker/build-push-action@v7
with:
platforms: linux/amd64,linux/arm64,linux/arm/v7
file: ./Dockerfile
push: true
tags: ${{ env.TAGS }}
provenance: false