chore: monorepo - plugin, backend und hilfsdaten in einem repo

- Eltern-Ordner ist jetzt EIN Git-Repo (statt getrennter Repos).
- root .gitignore haelt Secrets (.env), node_modules, DB und Build-Artefakte raus.
- release.ps1: manueller Release (ZIP bauen + ans Backend laden).
- root README mit Struktur und Release-Ablauf.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
s4luorth
2026-06-07 14:41:38 +02:00
commit ecb5e1bd22
37 changed files with 4390 additions and 0 deletions

View File

@@ -0,0 +1,41 @@
# Gitea Act Runner Einrichtung
Einmalig nötig, damit der Release-Workflow (Tag `v*`) automatisch baut + hochlädt.
## 1. Registrierungs-Token holen
Gitea → Repo **GDPR-Content-Blocker****Settings → Actions → Runner**
Button **„Neuen Runner erstellen"**. Es erscheint ein **Registration Token**
(eine lange Zeichenkette). Kopieren.
(Alternativ instanzweit: Admin-Bereich → Actions → Runners → Create new Runner.)
## 2. Token eintragen
In `docker-compose.yml` bei `GITEA_RUNNER_REGISTRATION_TOKEN` einsetzen.
## 3. Runner starten (auf dem Server, wo Docker läuft)
```bash
cd /pfad/zu/gitea-runner
docker compose up -d
docker compose logs -f # "runner registered successfully" abwarten
```
Danach in Gitea unter Settings → Actions → Runner taucht „hub-runner" mit
Status **idle/online** auf. Ab jetzt laufen Workflows automatisch.
## 4. Testen
Im Plugin-Repo:
```bash
git tag v1.0.1
git push origin v1.0.1
```
Gitea → Repo → Tab **Actions** zeigt den Lauf. Bei Erfolg ist die ZIP im Backend:
```bash
curl https://hub.lucas-orth.de/api/v1/releases/gdpr-content-blocker -H "X-Admin-Token: TOKEN"
```
## Hinweise
- Der Runner braucht Zugriff auf den Docker-Socket (startet die Job-Container).
- Erstes Image (catthehacker/ubuntu) wird beim ersten Lauf gezogen → dauert kurz.
- Das `data/`-Verzeichnis enthält nach der Registrierung die Runner-Identität
(`.runner`). Nicht löschen, sonst neu registrieren.
- Token wird nur einmal gebraucht; nach erfolgreicher Registrierung ignoriert.

View File

@@ -0,0 +1,18 @@
services:
gitea-runner:
image: gitea/act_runner:latest
container_name: gitea-runner
restart: always
environment:
GITEA_INSTANCE_URL: https://gitea.lucas-orth.de
# Registrierungs-Token aus: Repo → Settings → Actions → Runner →
# "Neuen Runner erstellen". Nur fuer die ERSTE Registrierung noetig.
GITEA_RUNNER_REGISTRATION_TOKEN: "HIER_TOKEN_EINFUEGEN"
GITEA_RUNNER_NAME: hub-runner
# Bildet das im Workflow genutzte "ubuntu-latest" auf ein Image ab,
# das zip, rsync, curl, git und node bereits enthaelt.
GITEA_RUNNER_LABELS: "ubuntu-latest:docker://catthehacker/ubuntu:act-latest"
volumes:
- ./data:/data
# Docker-Socket: der Runner startet die Job-Container ueber den Host-Docker.
- /var/run/docker.sock:/var/run/docker.sock