]> juplo.de Git - demos/kafka/training/commitdiff
copy.sh, init-exercises.sh: Ausgabeverzeichnisse unter ../training-exercises/ zusamme...
authorKai Moritz <kai.milan.moritz@googlemail.com>
Sun, 31 May 2026 13:55:45 +0000 (13:55 +0000)
committerKai Moritz <kai.milan.moritz@googlemail.com>
Sun, 31 May 2026 13:55:45 +0000 (13:55 +0000)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
CLAUDE.md
copy.sh

index 15d5486bc4d3b2764c117c75cfbce5db6b4e9db2..26367578c274cd7396a6728bdb3ff32cc03bd818 100644 (file)
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -16,9 +16,9 @@ Branch-Namen kodieren ihre Rolle durch Suffixe. `copy.sh` wertet diese Suffixe a
 
 | Suffix | Bedeutung | Zielverzeichnis (`copy.sh`) |
 |--------|-----------|----------------------------|
-| *(keiner)* | Lösung / Musterlösung | `../spickzettel/<branch>` |
-| `--vorlage` | Übungsvorlage für Teilnehmer | `../vorlagen/<branch-ohne-suffix>` |
-| `--livecoding` | Startpunkt für Live-Coding-Demo (Schritt 0) | `../livecoding/<branch-ohne-suffix>` |
+| *(keiner)* | Lösung / Musterlösung | `../training-exercises/spickzettel/<branch>` |
+| `--vorlage` | Übungsvorlage für Teilnehmer | `../training-exercises/vorlagen/<branch-ohne-suffix>` |
+| `--livecoding` | Startpunkt für Live-Coding-Demo (Schritt 0) | `../training-exercises/livecoding/<branch-ohne-suffix>` |
 | `--livecoding--schritte` | Schrittweise Entwicklung einer Live-Coding-Session | *(wird nicht kopiert)* |
 
 Branch-Name-Präfixe gruppieren Übungen nach Thema:
@@ -213,7 +213,7 @@ Alle Skripte laden zuerst `branches.sh`, das die vollständige Branch-Liste defi
 | `reset.sh` | Ohne Argument: setzt alle Branches auf `origin/<branch>` zurück. Mit Argument: auf Tag `<branch>--<prefix>` |
 | `diff.sh` | Ohne Arg: lokaler Branch gegen `origin/<branch>`. Ein Arg: gegen `<branch>--<suffix>`. Zwei Args: `<branch>--<suffix1>` gegen `<branch>--<suffix2>` |
 | `build.sh` | Baut alle Branches (erkennt Maven/Gradle automatisch); `--vorlage`-Branches werden übersprungen. Mit `--publish`: Docker-Images veröffentlichen |
-| `copy.sh` | Kopiert Branches anhand ihres Suffix in `../vorlagen/`, `../livecoding/` oder `../spickzettel/` (siehe Suffix-Tabelle oben); `--livecoding--schritte`-Branches werden übersprungen. `rsync --delete` ist immer aktiv. Verzeichnisse zu nicht mehr gelisteten Branches werden automatisch bereinigt. Optionaler Tag-Suffix als erstes Argument kopiert den jeweiligen Tag-Stand. Mit `--nexus-url=<url>` werden Gradle-Setups anschließend für einen internen Nexus gepatcht |
+| `copy.sh` | Kopiert Branches anhand ihres Suffix in `../training-exercises/vorlagen/`, `../training-exercises/livecoding/` oder `../training-exercises/spickzettel/` (siehe Suffix-Tabelle oben); `--livecoding--schritte`-Branches werden übersprungen. `rsync --delete` ist immer aktiv. Verzeichnisse zu nicht mehr gelisteten Branches werden automatisch bereinigt. Optionaler Tag-Suffix als erstes Argument kopiert den jeweiligen Tag-Stand. Mit `--nexus-url=<url>` werden Gradle-Setups anschließend für einen internen Nexus gepatcht |
 | `patch-nexus.sh` | Patcht `build.gradle` (Nexus als Repository), `settings.gradle` (pluginManagement) und optional mit `--gradle-dist-url=<url>` auch `gradle-wrapper.properties`. Wird aus dem Zielverzeichnis (`../vorlagen/`) aufgerufen |
 
 Nach Massenoperationen immer zu `scripting` zurückkehren — Skripte führen am Ende `git checkout scripting` aus.
@@ -224,14 +224,14 @@ Dieser Branch enthält zwei zusätzliche Skripte für die Schulungs-Initialisier
 
 | Skript | Zweck |
 |--------|-------|
-| `init-exercises.sh` | Initialisiert die mit `copy.sh` kopierten Übungsverzeichnisse (`vorlagen/`, `livecoding/`, `spickzettel/`). Standard: `--maven` (entfernt Gradle-Artefakte). Mit `--gradle`: verteilt Gradle-Wrapper (JAR, properties, gradlew) und entfernt Maven-Artefakte. Beide Modi löschen Build-Ausgaben und Caches. Scheitert mit Fehler, wenn `--gradle` verwendet wird, aber der Wrapper noch nicht bereit ist — dann zuerst `README-gradle.sh` ausführen. |
+| `init-exercises.sh` | Initialisiert die mit `copy.sh` kopierten Übungsverzeichnisse (`training-exercises/vorlagen/`, `training-exercises/livecoding/`, `training-exercises/spickzettel/`). Standard: `--maven` (entfernt Gradle-Artefakte). Mit `--gradle`: verteilt Gradle-Wrapper (JAR, properties, gradlew) und entfernt Maven-Artefakte. Beide Modi löschen Build-Ausgaben und Caches. Scheitert mit Fehler, wenn `--gradle` verwendet wird, aber der Wrapper noch nicht bereit ist — dann zuerst `README-gradle.sh` ausführen. |
 | `README-gradle.sh` | Technik-Check für Gradle: stellt Gradle-Wrapper bereit (lädt ihn herunter, falls fehlend) und führt Build-Test durch. Ohne Schalter: scheitert laut, wenn installierte Version nicht zur benötigten passt. Mit `--update`: ersetzt veralteten Wrapper durch die benötigte Version. |
 
 `gradle-wrapper.jar` ist absichtlich nicht im Repository (wird von Unternehmens-Mail-Filtern blockiert). `gradlew` und `gradle/wrapper/gradle-wrapper.properties` sind versioniert und definieren die maßgebliche Gradle-Version für alle Übungen der Schulung. Der Versions-Marker `gradle/wrapper/.gradle-version` ist gitignoriert.
 
 ### TGZ-Verzeichnisstruktur
 
-Branch-Namen bilden auch die Verzeichnisstruktur im verteilten TGZ ab: Der Branch `springkafka/technik-check--vorlage` wird als `springkafka/technik-check/` extrahiert. Von dort ist `../..` das Trainings-Wurzelverzeichnis — so findet `init-exercises.sh` alle Übungsverzeichnisse korrekt.
+Branch-Namen bilden auch die Verzeichnisstruktur im verteilten TGZ ab: Der Branch `springkafka/technik-check--vorlage` wird als `springkafka/technik-check/` extrahiert. Von dort ist `../..` das Vorlagen-Wurzelverzeichnis (`training-exercises/vorlagen/`) — `init-exercises.sh` berechnet `livecoding` und `spickzettel` als Geschwisterordner davon und findet so alle Übungsverzeichnisse korrekt.
 
 ## Einen neuen Übungs-Branch hinzufügen
 
diff --git a/copy.sh b/copy.sh
index ddd1d199715a5cd8d2a6e774416dc3c9f1e0379a..0cf6d6a4576f43333e8d6da61e6fa5ee9fda624c 100755 (executable)
--- a/copy.sh
+++ b/copy.sh
@@ -1,9 +1,9 @@
 #!/bin/bash
 set -e
 
-VORLAGEN=../vorlagen
-LIVECODING=../livecoding
-MUSTERLOESUNGEN=../spickzettel
+VORLAGEN=../training-exercises/vorlagen
+LIVECODING=../training-exercises/livecoding
+MUSTERLOESUNGEN=../training-exercises/spickzettel
 
 source branches.sh