1.9 KiB
1.9 KiB
Release-Prozess
Ziel
Dieses Repo soll sich wie ein kleines Infrastrukturprodukt pflegen lassen:
- Aenderungen gesammelt entwickeln
- lokal validieren
- in Gitea taggen
- Releases mit klaren Upgrade-Hinweisen veroeffentlichen
Versionsschema
Empfohlen: semantische Versionierung fuer das Repo.
MAJOR: inkompatible Struktur- oder BetriebswechselMINOR: neue Features oder neue Betriebsfaelle ohne harte BruechePATCH: Fixes, Doku, sichere Defaults, kleinere Skriptanpassungen
Beispiele:
v0.1.0erste stabile Strukturv0.2.0neue optionalen Dienste oder neue Netzvariantenv0.2.1Bugfix im Update-/Backup-Verhalten
Maintainer-Ablauf
- Feature- oder Fix-Branch bauen
- lokal testen
CHANGELOG.mdaktualisieren- bei Upgrade-Auswirkungen
docs/upgrade-policy.mdpflegen - Merge nach
main - Release-Tag setzen
- Release Notes in Gitea anlegen
Lokale Checks vor einem Release
./scripts/release-check
./scripts/alanctl validate
./scripts/alanctl doctor
Optional auf einem echten Host:
./scripts/alanctl backup
./scripts/alanctl up --dashboard
./scripts/alanctl update-hermes
Tagging
git checkout main
git pull --ff-only
git tag -a v0.1.1 -m "alan-agents-workstation v0.1.1"
git push origin main --tags
Inhalt guter Release Notes
- Was ist neu?
- Was ist gefixt?
- Muss
.envangepasst werden? - Gibt es ein neues Netzwerk-/Volume-/Port-Verhalten?
- Ist ein manuelles Backup vor Upgrade empfohlen?
- Gibt es ein Rollback-Risiko bei State-Migrationen?
Release-Text vorbereiten
Nutze docs/release-template.md als portable Vorlage fuer die Release-Beschreibung in Gitea.
Empfohlener Ablauf:
./scripts/new-release <version>ausfuehrenCHANGELOG.mdfinalisieren- Release-Text aus
docs/release-template.mdkopieren und auf den konkreten Stand anpassen - Tag pushen und Release in Gitea anlegen