Skip to content

Commit b06d0d7

Browse files
authored
dataconnect.yml: ensure that test logs are uploaded even when the tests fail (#6670)
1 parent 59839ee commit b06d0d7

File tree

1 file changed

+20
-5
lines changed

1 file changed

+20
-5
lines changed

.github/workflows/dataconnect.yml

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -174,8 +174,16 @@ jobs:
174174
cd firebase-dataconnect/emulator
175175
${{ env.FDC_FIREBASE_COMMAND }} emulators:start --only=auth >firebase.emulator.auth.log 2>&1 &
176176
177+
- name: Capture Logcat Logs
178+
run: adb logcat >logcat.log &
179+
177180
- name: Gradle connectedCheck
181+
id: connectedCheck
178182
uses: reactivecircus/android-emulator-runner@v2
183+
# Allow this GitHub Actions "job" to continue even if the tests fail so that logs from a
184+
# failed test run get uploaded as "artifacts" and are available to investigate failed runs.
185+
# A later step in this "job" will fail the job if this step fails
186+
continue-on-error: true
179187
with:
180188
api-level: ${{ env.FDC_ANDROID_EMULATOR_API_LEVEL }}
181189
arch: x86_64
@@ -185,21 +193,28 @@ jobs:
185193
script: |
186194
set -eux && ./gradlew ${{ (inputs.gradleInfoLog && '--info') || '' }} :firebase-dataconnect:connectedCheck :firebase-dataconnect:connectors:connectedCheck
187195
188-
- uses: actions/upload-artifact@v4
189-
if: true
196+
- name: Upload log file artifacts
197+
uses: actions/upload-artifact@v4
190198
with:
191-
name: logs
199+
name: integration_test_logs
192200
path: "**/*.log"
193201
if-no-files-found: warn
194202
compression-level: 9
195203

196-
- uses: actions/upload-artifact@v4
204+
- name: Upload Gradle build report artifacts
205+
uses: actions/upload-artifact@v4
197206
with:
198-
name: gradle_build_reports
207+
name: integration_test_gradle_build_reports
199208
path: firebase-dataconnect/**/build/reports/
200209
if-no-files-found: warn
201210
compression-level: 9
202211

212+
- name: Check test result
213+
if: steps.connectedCheck.outcome != 'success'
214+
run: |
215+
echo "Failing the job since the connectedCheck step failed"
216+
exit 1
217+
203218
# Check this yml file with "actionlint": https://github.com/rhysd/actionlint
204219
# To run actionlint yourself, run `brew install actionlint` followed by
205220
# `actionlint .github/workflows/dataconnect.yml`

0 commit comments

Comments
 (0)