fix: Gitea-Registry-URL nicht aus gitea.server_url ableiten
Docker Image bauen und veroeffentlichen / build-and-push (push) Failing after 3m2s
Docker Image bauen und veroeffentlichen / build-and-push (push) Failing after 3m2s
gitea.server_url ist in manchen Gitea-Versionen leer (go-gitea/gitea#23276) und liefert selbst im Erfolgsfall eine volle URL mit https://-Schema statt des fuer docker login/Image-Tags benoetigten reinen Hostnamens. Registry jetzt fest als git.encry.de hinterlegt, k8s-Manifeste entsprechend vorausgefuellt.
This commit is contained in:
1 parent
66ae781948
commit
04da561380
4 files changed
+20
-9
No files matched your search
@@ -12,6 +12,14 @@ on:
|
|||||||
jobs:
|
jobs:
|
||||||
build-and-push:
|
build-and-push:
|
||||||
runs-on: docker-builder
|
runs-on: docker-builder
|
||||||
|
env:
|
||||||
|
# Fest hinterlegt statt ${{ gitea.server_url }}: das hat in manchen
|
||||||
|
# Gitea-Versionen einen Bug (leerer Wert im Runner, siehe
|
||||||
|
# go-gitea/gitea#23276) und liefert selbst wenn es funktioniert eine
|
||||||
|
# volle URL MIT "https://"-Schema — docker login/Image-Tags brauchen
|
||||||
|
# aber den reinen Hostnamen ohne Schema. Bei einem Umzug auf eine
|
||||||
|
# andere Gitea-Instanz hier anpassen.
|
||||||
|
REGISTRY: git.encry.de
|
||||||
steps:
|
steps:
|
||||||
- name: Code auschecken
|
- name: Code auschecken
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
@@ -29,7 +37,7 @@ jobs:
|
|||||||
- name: Bei der Gitea-Container-Registry anmelden
|
- name: Bei der Gitea-Container-Registry anmelden
|
||||||
uses: docker/login-action@v3
|
uses: docker/login-action@v3
|
||||||
with:
|
with:
|
||||||
registry: ${{ gitea.server_url }}
|
registry: ${{ env.REGISTRY }}
|
||||||
username: ${{ gitea.actor }}
|
username: ${{ gitea.actor }}
|
||||||
# GITEA_TOKEN hat aktuell KEIN Package-Write-Recht (Gitea-
|
# GITEA_TOKEN hat aktuell KEIN Package-Write-Recht (Gitea-
|
||||||
# Einschraenkung, Stand heute) — deshalb ein separates Personal
|
# Einschraenkung, Stand heute) — deshalb ein separates Personal
|
||||||
@@ -43,7 +51,7 @@ jobs:
|
|||||||
id: meta
|
id: meta
|
||||||
uses: docker/metadata-action@v5
|
uses: docker/metadata-action@v5
|
||||||
with:
|
with:
|
||||||
images: ${{ gitea.server_url }}/${{ steps.image.outputs.name }}
|
images: ${{ env.REGISTRY }}/${{ steps.image.outputs.name }}
|
||||||
tags: |
|
tags: |
|
||||||
type=raw,value=latest,enable={{is_default_branch}}
|
type=raw,value=latest,enable={{is_default_branch}}
|
||||||
type=sha,format=short
|
type=sha,format=short
|
||||||
@@ -76,6 +84,6 @@ jobs:
|
|||||||
context: .
|
context: .
|
||||||
target: builder
|
target: builder
|
||||||
push: true
|
push: true
|
||||||
tags: ${{ gitea.server_url }}/${{ steps.image.outputs.name }}:migrate-${{ gitea.sha }}
|
tags: ${{ env.REGISTRY }}/${{ steps.image.outputs.name }}:migrate-${{ gitea.sha }}
|
||||||
cache-from: type=gha
|
cache-from: type=gha
|
||||||
cache-to: type=gha,mode=max
|
cache-to: type=gha,mode=max
|
||||||
@@ -23,7 +23,7 @@ spec:
|
|||||||
restartPolicy: Never
|
restartPolicy: Never
|
||||||
containers:
|
containers:
|
||||||
- name: migrate
|
- name: migrate
|
||||||
image: git.example.com/OWNER/wabenhain:migrate-REPLACE-ME
|
image: git.encry.de/nick.rosenloecher/wabenhain:migrate-REPLACE-ME
|
||||||
# prisma migrate deploy (nicht "db push"): wendet die committeten
|
# prisma migrate deploy (nicht "db push"): wendet die committeten
|
||||||
# Migrationsdateien nicht-interaktiv an, das ist Prismas
|
# Migrationsdateien nicht-interaktiv an, das ist Prismas
|
||||||
# vorgesehener Weg fuer Produktions-Deployments. db:seed danach
|
# vorgesehener Weg fuer Produktions-Deployments. db:seed danach
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ spec:
|
|||||||
spec:
|
spec:
|
||||||
containers:
|
containers:
|
||||||
- name: app
|
- name: app
|
||||||
image: git.example.com/OWNER/wabenhain:latest
|
image: git.encry.de/nick.rosenloecher/wabenhain:latest
|
||||||
ports:
|
ports:
|
||||||
- containerPort: 3000
|
- containerPort: 3000
|
||||||
envFrom:
|
envFrom:
|
||||||
|
|||||||
+7
-4
@@ -37,10 +37,13 @@ anwendbar. Nummerierung = empfohlene Reihenfolge.
|
|||||||
4. `01-configmap.yaml`: `DATABASE_PROVIDER` (postgresql/mysql) und
|
4. `01-configmap.yaml`: `DATABASE_PROVIDER` (postgresql/mysql) und
|
||||||
`NEXT_PUBLIC_SITE_URL` (echte Domain) anpassen.
|
`NEXT_PUBLIC_SITE_URL` (echte Domain) anpassen.
|
||||||
|
|
||||||
5. In `04-migrate-job.yaml` und `05-app-deployment.yaml` die
|
5. `image:` in `04-migrate-job.yaml`/`05-app-deployment.yaml` zeigt bereits
|
||||||
`image:`-Platzhalter (`git.example.com/OWNER/wabenhain:...`) durch die
|
auf `git.encry.de/nick.rosenloecher/wabenhain` — nur noch den Tag pruefen
|
||||||
tatsaechliche Registry/Owner/Tag aus Schritt 1 ersetzen. In
|
(`:latest` in `05-app-deployment.yaml` passt fuer den jeweils neuesten
|
||||||
`06-ingress.yaml` `shop.example.com` durch die echte Domain ersetzen
|
`main`-Build; `:migrate-REPLACE-ME` in `04-migrate-job.yaml` durch den
|
||||||
|
echten Commit-Kurzhash aus dem Gitea-Actions-Lauf ersetzen, sichtbar unter
|
||||||
|
Repo → Actions → Workflow-Run). In `06-ingress.yaml` `shop.example.com`
|
||||||
|
durch die echte Domain ersetzen
|
||||||
(zweimal: `host:` und `tls.hosts`).
|
(zweimal: `host:` und `tls.hosts`).
|
||||||
|
|
||||||
## Deployment
|
## Deployment
|
||||||
|
|||||||
Reference in new issue
Block a user