]> juplo.de Git - demos/kafka/training/commitdiff
init-exercises.sh: technik-check-Verzeichnis in beiden Modi überspringen
authorKai Moritz <kai.milan.moritz@googlemail.com>
Sun, 31 May 2026 14:43:03 +0000 (14:43 +0000)
committerKai Moritz <kai.milan.moritz@googlemail.com>
Fri, 12 Jun 2026 17:49:07 +0000 (19:49 +0200)
Das eigene Verzeichnis (SCRIPT_DIR) wird weder von --maven noch von
--gradle verändert -- es dient nur als Quelle für den Wrapper und
muss für einen späteren Moduswechsel intakt bleiben.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
init-exercises.sh

index 4df7deeb61c5724d2e1595cf7f37730906801735..2c1cdde75b72a7eeaf3e45ca33e5ad2010326b32 100755 (executable)
@@ -1,8 +1,9 @@
 #!/bin/bash
 # Initialisiert die mit copy.sh kopierten Übungsverzeichnisse für die Schulung.
-# --maven (Standard): Entfernt Gradle-Artefakte aus allen Übungsverzeichnissen.
+# --maven (Standard): Entfernt Gradle-Artefakte aus den Übungsverzeichnissen.
 # --gradle: Gradle-Wrapper verteilen und Maven-Artefakte entfernen.
 #   Scheitert mit Fehler, wenn der Wrapper noch nicht bereit ist -- erst README-gradle.sh ausführen.
+# Das eigene Verzeichnis (technik-check) wird in beiden Modi nicht verändert.
 # In beiden Modi werden Build-Ausgaben (target/, build/) und Caches (.gradle/) bereinigt.
 
 set -e
@@ -56,23 +57,21 @@ if [ "$MODE" = "gradle" ]; then
   echo "Gradle-Version: $REQUIRED"
 
   while IFS= read -r dir; do
-    if [ "$dir" != "$SCRIPT_DIR" ]; then
-      marker="$dir/gradle/wrapper/.gradle-version"
-      if [ ! -f "$dir/gradle/wrapper/gradle-wrapper.jar" ] || \
-         [ ! -f "$dir/gradle/wrapper/gradle-wrapper.properties" ] || \
-         [ ! -f "$dir/gradlew" ] || \
-         [ ! -f "$marker" ] || \
-         [ "$(cat "$marker")" != "$REQUIRED" ]; then
-        mkdir -p "$dir/gradle/wrapper"
-        cp "$WRAPPER_JAR" "$dir/gradle/wrapper/gradle-wrapper.jar"
-        cp "$WRAPPER_PROPS" "$dir/gradle/wrapper/gradle-wrapper.properties"
-        cp "$SCRIPT_DIR/gradlew" "$dir/gradlew"
-        chmod +x "$dir/gradlew"
-        echo "$REQUIRED" > "$marker"
-        echo "  Wrapper → $(basename "$(dirname "$dir")")/$(basename "$dir")"
-      fi
+    [ "$dir" = "$SCRIPT_DIR" ] && continue
+    marker="$dir/gradle/wrapper/.gradle-version"
+    if [ ! -f "$dir/gradle/wrapper/gradle-wrapper.jar" ] || \
+       [ ! -f "$dir/gradle/wrapper/gradle-wrapper.properties" ] || \
+       [ ! -f "$dir/gradlew" ] || \
+       [ ! -f "$marker" ] || \
+       [ "$(cat "$marker")" != "$REQUIRED" ]; then
+      mkdir -p "$dir/gradle/wrapper"
+      cp "$WRAPPER_JAR" "$dir/gradle/wrapper/gradle-wrapper.jar"
+      cp "$WRAPPER_PROPS" "$dir/gradle/wrapper/gradle-wrapper.properties"
+      cp "$SCRIPT_DIR/gradlew" "$dir/gradlew"
+      chmod +x "$dir/gradlew"
+      echo "$REQUIRED" > "$marker"
+      echo "  Wrapper → $(basename "$(dirname "$dir")")/$(basename "$dir")"
     fi
-
     for f in pom.xml .maven-dockerexclude; do
       [ -f "$dir/$f" ] && rm -v "$dir/$f"
     done
@@ -83,21 +82,15 @@ if [ "$MODE" = "gradle" ]; then
 
 elif [ "$MODE" = "maven" ]; then
   while IFS= read -r dir; do
-    if [ "$dir" = "$SCRIPT_DIR" ]; then
-      # Nur heruntergeladene Artefakte entfernen; build.gradle/settings.gradle/gradlew/properties
-      # bleiben, damit README-gradle.sh nach einem Moduswechsel wieder funktioniert
-      rm -vf "$dir/gradle/wrapper/gradle-wrapper.jar" \
-             "$dir/gradle/wrapper/.gradle-version"
-    else
-      rm -vf "$dir/build.gradle" \
-             "$dir/settings.gradle" \
-             "$dir/gradlew" \
-             "$dir/gradle/wrapper/gradle-wrapper.jar" \
-             "$dir/gradle/wrapper/gradle-wrapper.properties" \
-             "$dir/gradle/wrapper/.gradle-version"
-      rmdir "$dir/gradle/wrapper" 2>/dev/null || true
-      rmdir "$dir/gradle" 2>/dev/null || true
-    fi
+    [ "$dir" = "$SCRIPT_DIR" ] && continue
+    rm -vf "$dir/build.gradle" \
+           "$dir/settings.gradle" \
+           "$dir/gradlew" \
+           "$dir/gradle/wrapper/gradle-wrapper.jar" \
+           "$dir/gradle/wrapper/gradle-wrapper.properties" \
+           "$dir/gradle/wrapper/.gradle-version"
+    rmdir "$dir/gradle/wrapper" 2>/dev/null || true
+    rmdir "$dir/gradle" 2>/dev/null || true
     for d in .gradle target build; do
       [ -d "$dir/$d" ] && echo "removed: $dir/$d" && rm -rf "$dir/$d" || true
     done