Skip to content

v20250516-1

v20250516-1 #1

Workflow file for this run

name: Build and Push Docker Image on Release
on:
release:
types: [published]
workflow_dispatch:
jobs:
build-and-push:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Log in to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Extract tag name
id: vars
run: |
TAG=${GITHUB_REF#refs/tags/}
echo "tag=${TAG}" >> $GITHUB_OUTPUT
- name: Build Docker image
run: |
IMAGE=ghcr.io/${{ github.repository_owner }}/${{ github.event.repository.name }}
docker build --build-arg BUILD_MODE=dev -t $IMAGE:dev-${{ steps.vars.outputs.tag }} -t $IMAGE:latest-dev .
docker build --build-arg BUILD_MODE=prod -t $IMAGE:${{ steps.vars.outputs.tag }} -t $IMAGE:latest .
- name: Push Docker image
run: |
IMAGE=ghcr.io/${{ github.repository_owner }}/${{ github.event.repository.name }}
docker push $IMAGE:dev-${{ steps.vars.outputs.tag }}
docker push $IMAGE:${{ steps.vars.outputs.tag }}
docker push $IMAGE:latest-dev
docker push $IMAGE:latest