Skip to content

Latest commit

 

History

History
91 lines (65 loc) · 3.65 KB

README.adoc

File metadata and controls

91 lines (65 loc) · 3.65 KB

Entwickler-Dokumentation

In diesem Verzeichnis befindet sich einige Informationen für die Entwicklung, sofern sie nicht bereits im obersten README enthalten sind.

CI-Build

Table 1. Builds
Branch GitHub Actions CoverAlls.io codecov.io

master

coveralls

codecov

develop

Build Status

coveralls

codecov

Der CI-Build (CI: Continuous Integration) läuft nach einem Commit und einem Push auf GitHub an.

GitFlow-Branching

Entwickelt wird nach der GitFlow-Branching-Strategie. D.h. die eigentliche Entwicklung findet auf dem develop-Zweig statt.

Release bauen

Der Bau eines Releases ist nicht durch den CI-Build abgedeckt, sondern erfolgt manuell mit Hilfe des jgitflow-maven-plugin, das im POM entsprechend konfiguriert ist:

Table 2. Checkliste
Schritt Kommandos Anmerkung

auf Release-Branch wechseln

git checkout release/6.x

Die folgenden Schritte sollten auf dem Release-Branch erfolgen, weil dort das letzte Release abgelegt wird.

Release starten

git merge develop

Änderungen des aktuellen develop-Branches auf den release-Branch bringen. Danach "-SNAPSHOT" von der Version in de.jfachwert.java-conventions.gradle.kts entfernen.

alle Artefakte bauen (gradle)

./gradlew clean assemble sign

ab v6 ist der Bau nur noch mit Gradle möglich, da das maven-dokka-plugin keine Maven-Module unterstützt

Release deployen (gradle)

./gradlew publishToSonatype

Damit werden die Artefakte nach oss.sonatype.org hochgeladen. Die Task funktioniert auch für Snapshots, sodass im Vorfeld das Hochladen ins Snapshot-Repo getestet werden kann.

Release freigeben

oss.sonatype.org

"Staging Repositories" selektieren, danach "Close", "Refresh" und "Release".

Einchecken + Tag vergeben

git commit …​

NamensKonvention für Tag ist jfachwert-x.x.x

Release-Notes erstellen

releases

Unter Tags "Add release notes" selektieren und Release-Notes erstellen oder/und mit Release-Notes verlinken

Architektur-Dokumentation

./gradlew asciidoctor

Damit wird die Architektur-Dokumentation generiert, die in seiner Rohfassung unter src/main/asciidoc zu finden ist. Zur erfolgreichen Generierung muss GraphViz auf dem Rechner installiert sein. Danach wird build/generated-docs auf jFachwert.de/generated-docs hochgeladen.

auf master- und develop-Branch mergen

git checkout master …​

auf develop mit neuem Snapshot beginnen