ci: workflow budujący obraz usługi render (PRE-24) #33
@@ -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)"
|
||||||
Reference in New Issue
Block a user