redvault-ai/.forgejo/workflows/publish_docker.yml

59 lines
2 KiB
YAML
Raw Permalink Normal View History

2024-07-21 02:42:48 +02:00
name: Publish Docker
on:
workflow_dispatch:
push:
tags:
- "v[0-9]+.[0-9]+.[0-9]+"
jobs:
build_and_push:
runs-on: ubuntu-latest
strategy:
max-parallel: 1
matrix:
build_type: ['release', 'debug']
concurrency:
group: ci-${{ github.ref }}-${{ matrix.build_type }}
cancel-in-progress: true
steps:
- name: Set tag
run: |
if [[ -n "${{ inputs.tag }}" ]]; then
TAG=${{ inputs.tag }}
elif [[ "${{ github.ref_name }}" == 'main' ]]; then
TAG="latest"
else
TAG=${{ github.ref_name }}
fi
echo "TAG=${TAG}" >> $GITHUB_ENV
echo "BUILD_PKG=llama_forge_rs" >> $GITHUB_ENV
echo "BUILD_TYPE=${{ matrix.build_type }}" >> $GITHUB_ENV
echo "IMAGE=${{matrix.build_pkg}}:${TAG}-${{matrix.build_type}}" >> $GITHUB_ENV
echo "TAG=${TAG}"
echo "BUILD_PKG=llama_forge_rs"
echo "BUILD_TYPE=${{ matrix.build_type }}"
echo "IMAGE=${{matrix.build_pkg}}:${TAG}-${{matrix.build_type}}"
- name: Checkout
uses: actions/checkout@1d96c772d19495a3b5c517cd2bc0cb401ea0529f # v4
- name: Install docker
uses: https://github.com/papodaca/install-docker-action@main
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@d70bba72b1f3fd22344832f00baa16ece964efeb # v3
- name: Login to DockerHub
uses: docker/login-action@e92390c5fb421da1463c202d546fed0ec5c39f20 # v3
with:
registry: git.vlt81.de
username: ${{ secrets.REGISTRY_USERNAME }}
password: ${{ secrets.REGISTRY_TOKEN }}
- name: Build and push
uses: docker/build-push-action@2cdde995de11925a030ce8070c3d77a52ffcf1c0 # v5
with:
context: .
platforms: linux/amd64
push: true
tags: git.vlt81.de/oekonzept/${{env.IMAGE}}
build-args: |
BUILD_TYPE=${{env.BUILD_TYPE}}
BUILD_PKG=${{env.BUILD_PKG}}