From f9df3e20fada7ac472062e9d086aea3f92431967 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hern=C3=A2ni=20Marques?= Date: Fri, 17 Jul 2026 21:54:17 +0200 Subject: [PATCH] android-test: master self-build failures are WARN only too Only published F-Droid remains a matrix blocker; master tip issues warn and continue without failing overall exit alone. --- .../android-test/GUI-AUTOMATION-NOTES.md | 4 ++-- .../taler-monitoring/android-test/README.md | 6 ++--- .../run-android-variant-matrix.sh | 22 ++++++++++--------- 3 files changed, 17 insertions(+), 15 deletions(-) diff --git a/scripts/taler-monitoring/android-test/GUI-AUTOMATION-NOTES.md b/scripts/taler-monitoring/android-test/GUI-AUTOMATION-NOTES.md index 836526d..798bb7d 100644 --- a/scripts/taler-monitoring/android-test/GUI-AUTOMATION-NOTES.md +++ b/scripts/taler-monitoring/android-test/GUI-AUTOMATION-NOTES.md @@ -245,9 +245,9 @@ Scripts **today** implement Android only; they should honour: | Variant | Source | Severity | Purpose | |---------|--------|----------|---------| -| **stable-self** | tag `wallet-1.6.1` rebuilt here | **WARN only** | Same release tree, our Gradle — never hard-blocks the matrix | +| **stable-self** | tag `wallet-1.6.1` rebuilt here | **WARN only** | Same release tree, our Gradle — never hard-blocks | | **published** | F-Droid APK URL | **BLOCKER** | What users install; FAIL_FAST stops here | -| **master** | `origin/master` | soft fail | Tip of mainline | +| **master** | `origin/master` | **WARN only** | Tip of mainline — never hard-blocks | | **fix** (optional) | inference fix branch | soft fail | GOA automation fixes | Default matrix order: `stable-self,published,master`. diff --git a/scripts/taler-monitoring/android-test/README.md b/scripts/taler-monitoring/android-test/README.md index 3ab8d6f..595a187 100644 --- a/scripts/taler-monitoring/android-test/README.md +++ b/scripts/taler-monitoring/android-test/README.md @@ -38,12 +38,12 @@ Runs several smokes so a single odd developer build cannot be the only sample: |---------|------| | Order | Variant | Severity | What | |------|---------|----------|------| -| **1** | **stable-self** | **WARN only** (not a blocker) | Rebuild tag `wallet-1.6.1` on this host | +| **1** | **stable-self** | **WARN only** | Rebuild tag `wallet-1.6.1` on this host | | **2** | **published** | **BLOCKER** | F-Droid stable APK (`net.taler.wallet.fdroid` 1.6.1 / 854) | -| **3** | **master** | fail counts / FAIL_FAST | Rebuild `origin/master` | +| **3** | **master** | **WARN only** | Rebuild `origin/master` | **Default:** `FAIL_FAST=1` only stops on **blocker** failures (`published`). -`stable-self` failure → warning in `SUMMARY.txt`, matrix continues, exit code unaffected by that warn alone. +`stable-self` / `master` failure → warning in `SUMMARY.txt`, matrix continues, exit code unaffected by those warns alone. ```bash ./run-android-variant-matrix.sh diff --git a/scripts/taler-monitoring/android-test/run-android-variant-matrix.sh b/scripts/taler-monitoring/android-test/run-android-variant-matrix.sh index 9f80700..baabbf3 100755 --- a/scripts/taler-monitoring/android-test/run-android-variant-matrix.sh +++ b/scripts/taler-monitoring/android-test/run-android-variant-matrix.sh @@ -8,12 +8,12 @@ # 2) **published** — F-Droid stable APK (what users install) # Failure → **BLOCKER** (matrix exit ≠ 0; FAIL_FAST stops here) # 3) **master** — rebuild origin/master -# Failure → counts toward overall fail; does not skip earlier gates +# Failure → **WARN only** (tip breakage / ANR must not block stable gate) # -# Why stable-self in addition to published? -# Isolates "our toolchain rebuild of the release tag" vs "F-Droid binary". -# Rebuild issues (signing flavor, dirty host, low-RAM ANR on debug) must not -# block the published-stable gate — hence warn-only for stable-self. +# Why self-builds in addition to published? +# Isolates "our toolchain rebuild" vs "F-Droid binary". Rebuild issues +# (signing flavor, dirty host, low-RAM ANR on debug) must not block the +# published-stable gate — hence warn-only for stable-self **and** master. # # Usage: # ./run-android-variant-matrix.sh @@ -56,7 +56,7 @@ SUMMARY="$MATRIX_OUT/SUMMARY.txt" echo "=== Android variant matrix ===" | tee -a "$SUMMARY" echo "STACK=$STACK GUI=$GUI headless=${EMULATOR_HEADLESS} variants=$VARIANTS" | tee -a "$SUMMARY" echo "STABLE_TAG=$STABLE_TAG MASTER_BRANCH=$MASTER_BRANCH" | tee -a "$SUMMARY" -echo "severity: stable-self=WARN published=BLOCKER master=fail-count" | tee -a "$SUMMARY" +echo "severity: stable-self=WARN published=BLOCKER master=WARN" | tee -a "$SUMMARY" echo "out: $MATRIX_OUT" | tee -a "$SUMMARY" # Ensure device once (headless AVD by default) @@ -79,7 +79,9 @@ overall=0 variant_severity() { case "$1" in stable-self|stable|self-stable|release-self) echo warn ;; + master|main) echo warn ;; published|fdroid|stable-published) echo blocker ;; + # optional fix branch etc.: soft fail (counts) unless overridden *) echo soft ;; esac } @@ -158,7 +160,7 @@ for raw in "${VLIST[@]}"; do run_selfbuild "stable-self" "$STABLE_TAG" warn || rc=$? ;; master|main) - run_selfbuild "master" "$MASTER_BRANCH" soft || rc=$? + run_selfbuild "master" "$MASTER_BRANCH" warn || rc=$? ;; fix|fix-branch|inference) run_selfbuild "fix" "$FIX_BRANCH" soft || rc=$? @@ -171,7 +173,7 @@ for raw in "${VLIST[@]}"; do if [ "$rc" -ne 0 ]; then case "$sev" in warn) - echo "WARN: variant $v failed rc=$rc — self-build only, NOT a blocker; continuing" | tee -a "$SUMMARY" + echo "WARN: variant $v failed rc=$rc — self-build, NOT a blocker; continuing" | tee -a "$SUMMARY" WARNINGS+=("$v:$rc") RESULTS+=("$v:WARN($rc)") # do not set overall; do not FAIL_FAST @@ -186,7 +188,7 @@ for raw in "${VLIST[@]}"; do fi ;; soft) - echo "FAIL: variant $v rc=$rc (counts toward overall; not stable-self)" | tee -a "$SUMMARY" + echo "FAIL: variant $v rc=$rc (counts toward overall)" | tee -a "$SUMMARY" RESULTS+=("$v:FAIL($rc)") overall=1 if [ "$FAIL_FAST" = "1" ]; then @@ -213,5 +215,5 @@ if [ "${#WARNINGS[@]}" -gt 0 ]; then fi echo "" echo "Compare OUT_DIR trees under $MATRIX_OUT" -echo "stable-self failure = WARN only; published failure = BLOCKER." +echo "stable-self / master failure = WARN only; published failure = BLOCKER." exit "$overall"