53 lines
1.7 KiB
YAML
53 lines
1.7 KiB
YAML
name: release-tag
|
|
|
|
on:
|
|
workflow_dispatch: # Manuelles Auslösen des Workflows
|
|
inputs:
|
|
image_tag:
|
|
description: 'Tag für das Docker-Image (z.B. latest oder v1.0.0)'
|
|
required: true
|
|
default: 'latest'
|
|
|
|
env:
|
|
image_name: just-for-test
|
|
registry: gitea.tebarius.duckdns.org
|
|
user: tebarius
|
|
|
|
jobs:
|
|
release-image:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v3
|
|
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@v2
|
|
|
|
- name: Login to Gitea
|
|
uses: docker/login-action@v2
|
|
with:
|
|
registry: ${{ env.registry }}
|
|
username: ${{ env.user }}
|
|
password: ${{ secrets.DOCKER_TOKEN }}
|
|
|
|
- name: Get Meta
|
|
id: meta
|
|
run: |
|
|
echo REPO_VERSION=$(git describe --tags --always | sed 's/^v//') >> $GITHUB_OUTPUT
|
|
echo DOCKERFILE_VERSION=$(grep 'LABEL version=' Dockerfile | sed 's/.*LABEL version="\([^"]*\)".*/\1/') >> $GITHUB_OUTPUT
|
|
|
|
- name: Build and push
|
|
run: |
|
|
# Stelle sicher, dass Buildx aktiviert ist
|
|
docker buildx create --use
|
|
|
|
# Führe den Multiarch-Build aus und pushe das Image
|
|
docker buildx build \
|
|
--file ./Dockerfile \
|
|
--platform linux/amd64,linux/386,linux/arm64,linux/arm/v7 \
|
|
--tag ${{ env.registry }}/${{ env.user }}/${{ env.image_name }}:${{ steps.meta.outputs.REPO_VERSION }} \
|
|
--tag ${{ env.registry }}/${{ env.user }}/${{ env.image_name }}:${{ steps.meta.outputs.DOCKERFILE_VERSION }} \
|
|
--tag ${{ env.registry }}/${{ env.user }}/${{ env.image_name }}:${{ github.event.inputs.image_tag }} \
|
|
--push ./
|