@@ -64,15 +64,16 @@ jobs:
64
64
with :
65
65
node-version : ${{ env.FDC_NODEJS_VERSION }}
66
66
67
- - name : install firebase-tools
67
+ - name : Install Firebase Tools (" firebase" command-line tool)
68
68
run : |
69
+ set -euo pipefail
69
70
set -v
70
71
mkdir -p ${{ env.FDC_FIREBASE_TOOLS_DIR }}
71
72
cd ${{ env.FDC_FIREBASE_TOOLS_DIR }}
72
73
echo '{}' > package.json
73
74
npm install --fund=false --audit=false --save --save-exact firebase-tools@${{ env.FDC_FIREBASE_TOOLS_VERSION }}
74
75
75
- - name : Restore Gradle cache
76
+ - name : Restore Gradle Cache
76
77
id : restore-gradle-cache
77
78
uses : actions/cache/restore@d4323d4df104b026a6aa633fdb11d772146be0bf # 4.2.2
78
79
if : github.event_name != 'schedule'
84
85
restore-keys : |
85
86
gradle-cache-jqnvfzw6w7-
86
87
87
- - name : tool versions
88
+ - name : Print Command-Line Tool Versions
88
89
continue-on-error : true
89
90
run : |
91
+ set -euo pipefail
92
+
90
93
function run_cmd {
91
94
echo "==============================================================================="
92
95
echo "Running Command: $*"
@@ -105,6 +108,7 @@ jobs:
105
108
106
109
- name : Gradle assembleDebugAndroidTest
107
110
run : |
111
+ set -euo pipefail
108
112
set -v
109
113
110
114
# Speed up build times and also avoid configuring firebase-crashlytics-ndk
@@ -117,7 +121,7 @@ jobs:
117
121
${{ (inputs.gradleInfoLog && '--info') || '' }} \
118
122
:firebase-dataconnect:assembleDebugAndroidTest
119
123
120
- - name : Save Gradle cache
124
+ - name : Save Gradle Cache
121
125
uses : actions/cache/save@d4323d4df104b026a6aa633fdb11d772146be0bf # 4.2.2
122
126
if : github.event_name == 'schedule'
123
127
with :
@@ -126,14 +130,15 @@ jobs:
126
130
~/.gradle/wrapper
127
131
key : gradle-cache-jqnvfzw6w7-${{ github.run_id }}
128
132
129
- - name : Enable KVM group permissions for Android Emulator
133
+ - name : Enable KVM Group Permissions for Android Emulator
130
134
run : |
135
+ set -euo pipefail
131
136
echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' \
132
137
| sudo tee /etc/udev/rules.d/99-kvm4all.rules
133
138
sudo udevadm control --reload-rules
134
139
sudo udevadm trigger --name-match=kvm
135
140
136
- - name : Restore AVD cache
141
+ - name : Restore AVD Cache
137
142
uses : actions/cache/restore@d4323d4df104b026a6aa633fdb11d772146be0bf # 4.2.2
138
143
if : github.event_name != 'schedule'
139
144
id : restore-avd-cache
@@ -156,7 +161,7 @@ jobs:
156
161
disable-animations : true
157
162
script : ' echo "Generated AVD snapshot for caching; event_name=${{ github.event_name }}, cache-matched-key=${{ steps.restore-avd-cache.outputs.cache-matched-key }}"'
158
163
159
- - name : Save AVD cache
164
+ - name : Save AVD Cache
160
165
uses : actions/cache/save@d4323d4df104b026a6aa633fdb11d772146be0bf # 4.2.2
161
166
if : github.event_name == 'schedule'
162
167
with :
@@ -165,9 +170,11 @@ jobs:
165
170
~/.android/adb*
166
171
key : avd-cache-zhdsn586je-api${{ env.FDC_ANDROID_EMULATOR_API_LEVEL }}-${{ github.run_id }}
167
172
168
- - name : Data Connect Emulator
173
+ - name : Data Connect Emulator Start
174
+ id : data-connect-emulator
169
175
run : |
170
- set -x
176
+ set -euo pipefail
177
+ set -xv
171
178
172
179
echo 'emulator.postgresConnectionUrl=postgresql://postgres:[email protected] :5432?sslmode=disable' > firebase-dataconnect/dataconnect.local.properties
173
180
@@ -176,14 +183,29 @@ jobs:
176
183
:firebase-dataconnect:connectors:runDebugDataConnectEmulator \
177
184
>firebase.emulator.dataconnect.log 2>&1 &
178
185
179
- - name : Firebase Auth Emulator
186
+ echo "FIREBASE_DATA_CONNECT_EMULATOR_PID=$!" >> "$GITHUB_ENV"
187
+
188
+ - name : Firebase Auth Emulator Start
189
+ id : firebase-auth-emulator
180
190
run : |
181
- set -x
191
+ set -euo pipefail
192
+ set -xv
193
+
182
194
cd firebase-dataconnect/emulator
183
195
${{ env.FDC_FIREBASE_COMMAND }} emulators:start --only=auth >firebase.emulator.auth.log 2>&1 &
184
196
185
- - name : Capture Logcat Logs
186
- run : adb logcat >logcat.log &
197
+ echo "FIREBASE_AUTH_EMULATOR_PID=$!" >> "$GITHUB_ENV"
198
+
199
+ - name : Logcat Log Capture Start
200
+ id : logcat-capture
201
+ continue-on-error : true
202
+ run : |
203
+ set -euo pipefail
204
+ set -xv
205
+
206
+ "$ANDROID_HOME/platform-tools/adb" logcat >logcat.log 2>&1 &
207
+
208
+ echo "LOGCAT_PID=$!" >> "$GITHUB_ENV"
187
209
188
210
- name : Gradle connectedCheck
189
211
id : connectedCheck
@@ -201,25 +223,26 @@ jobs:
201
223
script : |
202
224
set -eux && ./gradlew ${{ (inputs.gradleInfoLog && '--info') || '' }} :firebase-dataconnect:connectedCheck :firebase-dataconnect:connectors:connectedCheck
203
225
204
- - name : Upload log file artifacts
226
+ - name : Upload Log Files
205
227
uses : actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
206
228
with :
207
229
name : integration_test_logs
208
230
path : " **/*.log"
209
231
if-no-files-found : warn
210
232
compression-level : 9
211
233
212
- - name : Upload Gradle build report artifacts
234
+ - name : Upload Gradle Build Reports
213
235
uses : actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
214
236
with :
215
237
name : integration_test_gradle_build_reports
216
238
path : firebase-dataconnect/**/build/reports/
217
239
if-no-files-found : warn
218
240
compression-level : 9
219
241
220
- - name : Verify "Gradle connectedCheck" step was successful
242
+ - name : Verify "Gradle connectedCheck" Step Was Successful
221
243
if : steps.connectedCheck.outcome != 'success'
222
244
run : |
245
+ set -euo pipefail
223
246
echo 'Failing because the outcome of the "Gradle connectedCheck" step ("${{ steps.connectedCheck.outcome }}") was not successful'
224
247
exit 1
225
248
0 commit comments