Docker-Images bauen und veröffentlichen / build (, omsorgCore/Dockerfile, omsorgcore) (push) Successful in 3s
Docker-Images bauen und veröffentlichen / build (, omsorgWeb/Dockerfile, omsorgweb) (push) Successful in 4s
Docker-Images bauen und veröffentlichen / build (, omsorgapp/Dockerfile, omsorgapp) (push) Successful in 3s
Rebuilding and pushing all three images on every commit was unnecessary churn - the workflow now triggers exclusively on v* tags, so :latest tracks the last released version instead of the last commit. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
52 lines
1.6 KiB
YAML
52 lines
1.6 KiB
YAML
name: Docker-Images bauen und veröffentlichen
|
|
|
|
on:
|
|
push:
|
|
tags: ["v*"]
|
|
|
|
env:
|
|
REGISTRY: git.omsorg-pflegedienste.de
|
|
IMAGE_NAMESPACE: admin/omsorg
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
include:
|
|
- image: omsorgcore
|
|
dockerfile: omsorgCore/Dockerfile
|
|
build_args: ""
|
|
- image: omsorgapp
|
|
dockerfile: omsorgapp/Dockerfile
|
|
build_args: ""
|
|
- image: omsorgweb
|
|
dockerfile: omsorgWeb/Dockerfile
|
|
build_args: ""
|
|
steps:
|
|
- name: Code auschecken
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Bei Registry anmelden
|
|
run: echo "${{ secrets.REGISTRY_TOKEN }}" | docker login ${{ env.REGISTRY }} -u "${{ gitea.actor }}" --password-stdin
|
|
|
|
- name: Image bauen und pushen
|
|
run: |
|
|
BUILD_ARGS=""
|
|
if [ -n "${{ matrix.build_args }}" ]; then
|
|
BUILD_ARGS="--build-arg ${{ matrix.build_args }}"
|
|
fi
|
|
|
|
IMAGE="${{ env.REGISTRY }}/${{ env.IMAGE_NAMESPACE }}/${{ matrix.image }}"
|
|
# Läuft nur noch bei einem Tag-Push (siehe `on:` oben) - :latest zeigt damit immer auf
|
|
# den zuletzt getaggten Release, nicht auf jeden main-Commit. :<sha> bleibt zusätzlich
|
|
# als exakter Build-Beleg, :<tag-name> (z.B. v0.1.3) zum gezielten Pinnen.
|
|
TAGS="-t $IMAGE:latest -t $IMAGE:${{ gitea.sha }} -t $IMAGE:${{ gitea.ref_name }}"
|
|
|
|
docker buildx build \
|
|
--push \
|
|
-f "${{ matrix.dockerfile }}" \
|
|
$TAGS \
|
|
$BUILD_ARGS \
|
|
.
|