From 56131b209a2e6b35df8ce141bdb6e703a494616c Mon Sep 17 00:00:00 2001 From: migatu Date: Sat, 25 Jul 2026 13:30:24 +0200 Subject: [PATCH] ci: workflow budujacy obraz uslugi render (PRE-24) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Luka: usluga render (services/render) weszla w #32, ale zaden workflow nie budowal jej obrazu — wiec astrololo-render:latest nie istnial w rejestrze, a pod zawislby na ImagePullBackOff po wdrozeniu manifestow. Osobny pipeline (jak build-swisseph), nie dopisanie do build.yaml: obraz dzwiga TeX Live (setki MB), a build.yaml chodzi przy KAZDYM pushu do mastera. Budowanie renderu za kazdym razem spowalnialoby kazdy deploy — a to wlasnie ta izolacja miala usunac. Wyzwalany tylko zmiana w services/render/**; workflow_dispatch do bootstrapu. Merge tego PR zbuduje pierwszy obraz (push dotyka pliku workflow, wiec trigger sie odpali) i wypchnie :latest — dopiero potem ma sens merge deploy#5. Co-Authored-By: Claude Opus 4.8 --- .gitea/workflows/build-render.yaml | 34 ++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 .gitea/workflows/build-render.yaml diff --git a/.gitea/workflows/build-render.yaml b/.gitea/workflows/build-render.yaml new file mode 100644 index 0000000..7261c4e --- /dev/null +++ b/.gitea/workflows/build-render.yaml @@ -0,0 +1,34 @@ +name: build-render + +# Osobny pipeline dla uslugi render (raport PDF, PRE-24) — celowo ODDZIELONY od +# glownego build.yaml (data/logic/presentation). Obraz dzwiga TeX Live (setki MB), +# wiec budowanie go przy KAZDYM pushu do mastera spowalnialoby kazdy deploy — a to +# wlasnie ta izolacja mial usunac (patrz services/render/app/main.py, LOG-27). +# Buduje sie tylko, gdy zmienia sie sama usluga. +# +# Obraz konsumuje astrololo/render.yaml w repo `deploy`. +on: + push: + branches: [master] + paths: + - 'services/render/**' + - '.gitea/workflows/build-render.yaml' + workflow_dispatch: {} # reczne odpalenie (bootstrap pierwszego obrazu) + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Login + run: echo "${{ secrets.REGISTRY_TOKEN }}" | docker login gitea.czernobog.pl -u gitea --password-stdin + - name: Build & push render (TeX Live — pierwszy build trwa dluzej) + run: | + TAG=${GITHUB_SHA::8} + IMG=gitea.czernobog.pl/gitea/astrololo-render + # Dockerfile sprawdza obecnosc xelatex + rsvg-convert przy budowie, wiec + # build jest zarazem testem, ze obraz ma komplet narzedzi. + docker build -t $IMG:$TAG -t $IMG:latest ./services/render + docker push $IMG:$TAG + docker push $IMG:latest + echo "Zbudowano i wypchnieto: $IMG:$TAG (+ latest)"