34 lines
2.3 KiB
Markdown
34 lines
2.3 KiB
Markdown
---
|
||||
|
|
name: sn-release
|
|||
|
|
description: Release eines LNO-Plugins über den Gitea-Tag-Workflow (Kanäle unstable/testing/stable, Versionsschema JJ.M.N, changelog, metadata.template, Feeds in Repository). Verwenden bei "Release", "Version veröffentlichen", "Tag setzen", "testing/unstable bauen". Nur für Maintainer; Agenten bereiten vor, taggen nicht.
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# Release erstellen
|
|||
|
|
|
|||
|
|
Ablauf und Fallstricke: `docs/architektur/schnittstellen.md` Abschnitt 9, `docs/wissen/fallstricke.md` (Release).
|
|||
|
|
|
|||
|
|
## Vorbereitung (Agent darf)
|
|||
|
|
1. Kanal-Branch prüfen: `git switch unstable && git pull --ff-only` (bzw. `testing`). **Gebaut wird der Kopf dieses Branches, nicht der getaggte Commit.**
|
|||
|
|
2. `changelog.txt`: Block über dem ersten `---` enthält die Einträge seit dem letzten Release; darüber Zeile `Version <JJ.M.N>-<kanal>:` ergänzen (Muster im Verlauf der Datei). Er wird zum Release-Text.
|
|||
|
|
3. `.gitea/templates/metadata.template` prüfen: Name, Beschreibung, URLs zeigen auf **dieses** Repo (bekannte Fehler: Plan41 → Test_Action, FLT → `Plugin_SN_Neu`). Version wird vom Workflow gesetzt.
|
|||
|
|
4. Tests: `python scripts/run_tests.py <paket> --baseline` ohne NEU ROT. Bei Fachplugins prüfen, ob die verwendete `sn_basis`-Version passende Schnittstellen hat (Änderungen seit letztem Basis-Release im Changelog).
|
|||
|
|
5. Version wählen: `JJ.M.N` = Jahr.Monat.Laufnummer im Monat (z. B. `26.9.1`). Unstable und testing zählen getrennt hoch.
|
|||
|
|
|
|||
|
|
## Auslösen (nur Maintainer)
|
|||
|
|
```bash
|
|||
|
|
git tag v26.9.1-u # -u unstable, -t testing, ohne Suffix stable (derzeit ohne Branch – nicht verwenden)
|
|||
|
|
git push origin v26.9.1-u
|
|||
|
|
```
|
|||
|
|
Der Repo-Workflow schickt einen Payload an `Repository` (Branch `hidden/workflows`); dieser baut das ZIP unter dem
|
|||
|
|
Gitea-Variablennamen `ZIP_FOLDER`, erzeugt `metadata.txt` aus dem Template, legt das Gitea-Release an und aktualisiert
|
|||
|
|
`plugins-<kanal>.xml`.
|
|||
|
|
|
|||
|
|
## Prüfen
|
|||
|
|
- Gitea → Repo → Releases: Eintrag `Version 26.9.1-unstable` mit ZIP-Asset.
|
|||
|
|
- `Repository/plugins-unstable.xml` enthält die neue Version.
|
|||
|
|
- QGIS mit Feed `unstable`: Plugin-Aktualisierung sichtbar, Installation startet ohne Fehler.
|
|||
|
|
|
|||
|
|
## Nach dem Release
|
|||
|
|
- `docs/status/STATUS.md`: Versionen je Kanal nachtragen.
|
|||
|
|
- Bekannter offener Punkt: Release-ZIPs enthalten derzeit `AGENTS.md`, `CLAUDE.md`, `docs/`, `tests/` (Excludes im zentralen Workflow ergänzen).
|