30 lines
780 B
YAML
30 lines
780 B
YAML
name: Build & Deploy
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- 'v*'
|
|
|
|
jobs:
|
|
deploy:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
# Intern klonen (NAT-Hairpin: öffentliche Domain aus dem Job-Container
|
|
# nicht erreichbar).
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
github-server-url: http://gitea:3000
|
|
|
|
# Zustandsloser Service ohne Laufzeit-Env → kein DOTENV/.env nötig.
|
|
# Der Docker-Build (pip install) ist der Build. Optionale Tests: hier
|
|
# VOR dem Deploy einfügen.
|
|
|
|
- name: Tag ermitteln
|
|
run: echo "IMAGE_TAG=${GITHUB_REF#refs/tags/}" >> $GITHUB_ENV
|
|
|
|
- name: Deployen
|
|
run: docker compose up -d --build --remove-orphans --wait --wait-timeout 180
|
|
|
|
- name: Alte Layer aufräumen
|
|
run: docker image prune -f
|