Add scripts/run_firebase_test.sh that strips ANSI codes and removes UP-TO-DATE task lines, libsqlite warnings, Gradle deprecation notices and other high-volume noise before it hits the CI log. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
37 lines
926 B
Bash
Executable File
37 lines
926 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# Runs the Firebase Test Lab Dagger pipeline with Gradle/Dagger noise filtered out.
|
|
set -uo pipefail
|
|
|
|
RC_FILE=$(mktemp)
|
|
trap 'rm -f "$RC_FILE"' EXIT
|
|
|
|
_strip_ansi() {
|
|
sed 's/\x1b\[[0-9;]*[mGKHFJ]//g'
|
|
}
|
|
|
|
_filter_noise() {
|
|
grep -vE \
|
|
'> Task :.+(UP-TO-DATE|NO-SOURCE)'\
|
|
'|[0-9]+ files found for path '\''lib/'\
|
|
'|^Inputs:'\
|
|
'|^[[:space:]]+-[[:space:]]/'\
|
|
'|\[Incubating\]'\
|
|
'|Deprecated Gradle features'\
|
|
'|warning-mode all'\
|
|
'|please refer to https://docs\.gradle'\
|
|
'|[0-9]+ actionable tasks'\
|
|
'|^warning: \[options\]'\
|
|
'|^Note: Some input files'\
|
|
'|^\s*[┆│]\s*$' \
|
|
|| true
|
|
}
|
|
|
|
{
|
|
dagger call --progress=plain -q -m ci --source=. test-android-firebase \
|
|
--service-account-key env:FIREBASE_TEST_LAB_SERVICE_ACCOUNT_KEY \
|
|
--project-id "$FIREBASE_PROJECT_ID"
|
|
echo $? > "$RC_FILE"
|
|
} 2>&1 | _strip_ansi | _filter_noise
|
|
|
|
exit "$(cat "$RC_FILE" 2>/dev/null || echo 1)"
|