make_installer_client.sh 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #!/usr/bin/env bash
  2. # ============================================================================
  3. # Trixy Client — Release-Build
  4. #
  5. # Erstellt:
  6. # - trixy-client-{version}.tar.gz (Quellcode — nur Client-relevantes)
  7. # - trixy-installer-client-{version}.tar.gz (Installer TUI)
  8. # - install.sh (Bootstrap)
  9. # ============================================================================
  10. set -euo pipefail
  11. SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
  12. source "${SCRIPT_DIR}/common.sh"
  13. MODE="client"
  14. echo "========================================"
  15. echo " Trixy Client Release-Build"
  16. echo "========================================"
  17. # Build-Konfiguration laden
  18. load_build_conf
  19. # Version parsen
  20. VERSION=$(parse_version)
  21. echo " Version: ${VERSION}"
  22. # Release-Verzeichnis
  23. RELEASE_DIR=$(prepare_release_dir "${VERSION}" "${MODE}")
  24. echo " Release: ${RELEASE_DIR}"
  25. echo ""
  26. print_build_conf "${MODE}"
  27. # Source-tar (Client: kein Server-Code, keine Plugins, kein Trainer)
  28. # trixy_core bleibt komplett (interne Cross-Imports)
  29. EXTRA_EXCLUDES="./plugins ./trainer ./models ./assets ./docs ./bash ./data ./cron ./config/server_config.json ./config/standalone_config.json ./config/trainer_config.json"
  30. create_source_tar "${MODE}" "${VERSION}" "${RELEASE_DIR}" "${EXTRA_EXCLUDES}"
  31. # Installer-tar
  32. create_installer_tar "${MODE}" "${VERSION}" "${RELEASE_DIR}"
  33. # install.sh
  34. generate_install_sh "${MODE}" "${VERSION}" "${RELEASE_DIR}"
  35. # Zusammenfassung
  36. print_summary "${MODE}" "${VERSION}" "${RELEASE_DIR}"