Mitwirken
Release-Prozess
Wie ein grüner main einen versionierten Release erzeugt.
Releases sind vollständig automatisiert: du führst weder npm version aus noch pusht du Tags.
Auslöser
Jeder Push auf main löst den release-Job aus. Gibt es seit dem letzten Tag keine release-würdigen Commits, passiert nichts.
Was läuft
semantic-releaseanalysiert die Commits, entscheidet die nächste Version (oder überspringt)- Erstellt einen Git-Tag (z. B.
2.3.4) und einen GitHub Release mit automatisch generierten Notes - Schreibt die Version in die Root-
package.json - Pusht einen
chore(release): X.Y.Z [skip ci]-Commit zurück auf main
Dann parallel:
publish-imagesbaut und pusht Docker-Images zu GHCR mit den TagsX.Y.Z,X.Y,Xundsha-…publish-helmaktualisiertversionundappVersiondes Charts, paketiert ihn, pusht zu GHCR OCI und hängt ihn an den GitHub Release an
Hotfixes
Nutze fix:-Commits; sie schneiden einen Patch-Release. Es gibt keinen separaten Hotfix-Branch, main ist immer auslieferbar.
Einen Release zurücknehmen
Lösche weder den Tag noch den Release. Schneide einen neuen revert: ...- oder fix: ...-Commit, der die Änderung rückgängig macht. Der nächste Pipeline-Lauf erzeugt einen neuen Patch-Release.