Regroupe l'état de travail en cours réalisé dans un même worktree sur plusieurs tickets/sprints (#85, #136, #145, #155-160, #162-164), mélangeant des tickets QA et inProgress. Ne constitue pas une feature terminée : commit de sauvegarde avant triage/split par ticket en branches feature/* dédiées. Exclut les dossiers d'environnement de build locaux et le heap dump parasite (.gitignore mis à jour). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
50 lines
1.5 KiB
Bash
Executable File
50 lines
1.5 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
MODE="${1:-debug}"
|
|
|
|
if [[ "$MODE" != "debug" && "$MODE" != "release" ]]; then
|
|
echo "Usage: $0 [debug|release]" >&2
|
|
exit 2
|
|
fi
|
|
|
|
PROJECT_ROOT="/home/anthony/Documents/Projects/GameTime"
|
|
BUILD_ENV_ROOT="$PROJECT_ROOT/.ideai/build-env"
|
|
SDK_COPY="$BUILD_ENV_ROOT/flutter-sdk"
|
|
HOME_DIR="$BUILD_ENV_ROOT/home"
|
|
GRADLE_DIR="$BUILD_ENV_ROOT/gradle"
|
|
PUB_CACHE_DIR="$BUILD_ENV_ROOT/pub-cache"
|
|
TMP_DIR="$BUILD_ENV_ROOT/tmp"
|
|
ANDROID_HOME="/opt/android-sdk"
|
|
JAVA_HOME="/usr/lib/jvm/java-21-openjdk"
|
|
FLUTTER_BIN="$SDK_COPY/bin/flutter"
|
|
|
|
mkdir -p "$BUILD_ENV_ROOT" "$HOME_DIR/.config" "$HOME_DIR/.local/share" "$HOME_DIR/.cache" "$GRADLE_DIR" "$PUB_CACHE_DIR" "$TMP_DIR"
|
|
|
|
if [[ ! -x "$FLUTTER_BIN" ]]; then
|
|
cp -a /opt/flutter "$SDK_COPY"
|
|
fi
|
|
|
|
export HOME="$HOME_DIR"
|
|
export XDG_CONFIG_HOME="$HOME_DIR/.config"
|
|
export XDG_DATA_HOME="$HOME_DIR/.local/share"
|
|
export XDG_CACHE_HOME="$HOME_DIR/.cache"
|
|
export GRADLE_USER_HOME="$GRADLE_DIR"
|
|
export PUB_CACHE="$PUB_CACHE_DIR"
|
|
export TMPDIR="$TMP_DIR"
|
|
export TMP="$TMP_DIR"
|
|
export TEMP="$TMP_DIR"
|
|
export JAVA_TOOL_OPTIONS="-Djava.io.tmpdir=$TMP_DIR"
|
|
export GRADLE_OPTS="-Djava.io.tmpdir=$TMP_DIR"
|
|
export ANDROID_HOME
|
|
export JAVA_HOME
|
|
export PATH="$JAVA_HOME/bin:$ANDROID_HOME/cmdline-tools/latest/bin:$ANDROID_HOME/platform-tools:$PATH"
|
|
|
|
cd "$PROJECT_ROOT"
|
|
|
|
"$FLUTTER_BIN" --disable-analytics pub get
|
|
"$FLUTTER_BIN" build apk "--$MODE"
|
|
|
|
APK_PATH="$PROJECT_ROOT/build/app/outputs/flutter-apk/app-$MODE.apk"
|
|
echo "APK built at: $APK_PATH"
|