From 154d89e695327c17462b501dc70e2b5e65fe8cee Mon Sep 17 00:00:00 2001 From: Patrick Kabwe Date: Fri, 29 Aug 2025 21:07:44 +0200 Subject: [PATCH] chore(ci): update e2e workflow and improve build error handling --- .github/workflows/e2e-tests.yml | 5 +++++ scripts/e2e-maestro.sh | 12 ++++++++++++ 2 files changed, 17 insertions(+) mode change 100644 => 100755 scripts/e2e-maestro.sh diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 35a9205d..48d6e71d 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -121,6 +121,11 @@ jobs: - name: Checkout repository uses: actions/checkout@v5 + - name: Setup Xcode + uses: maxim-lobanov/setup-xcode@v1 + with: + xcode-version: 16.4 + - name: Create working directory run: mkdir -p ${{ env.WORKING_DIR }} diff --git a/scripts/e2e-maestro.sh b/scripts/e2e-maestro.sh old mode 100644 new mode 100755 index 131be412..42750e6d --- a/scripts/e2e-maestro.sh +++ b/scripts/e2e-maestro.sh @@ -64,9 +64,17 @@ if [ "$PLATFORM" == "ios" ]; then # Check if xcpretty is available if command -v xcpretty >/dev/null 2>&1; then set -o pipefail && $buildCmd | xcpretty + if [ $? -ne 0 ]; then + echo "❌ iOS build failed!" + exit 1 + fi else echo "⚠️ xcpretty not found. Install with: gem install xcpretty" $buildCmd + if [ $? -ne 0 ]; then + echo "❌ iOS build failed!" + exit 1 + fi fi # Launch the simulator if not already booted @@ -92,6 +100,10 @@ else # Build with optimizations and pretty output echo "🔨 Building Android app..." ./gradlew assembleRelease --no-daemon --build-cache --parallel --console=rich + if [ $? -ne 0 ]; then + echo "❌ Android build failed!" + exit 1 + fi APK_PATH="app/build/outputs/apk/release/app-release.apk" # Install the APK