Skip to content

Commit 73f5f67

Browse files
authored
Merge branch 'main' into dependabot/npm_and_yarn/smoke-tests/src/androidTest/backend/functions/functions/multi-580a7c2f10
2 parents b1d5e4b + 9b6e08e commit 73f5f67

340 files changed

Lines changed: 21874 additions & 3229 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/ai-daily-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ jobs:
6363
6464
- name: Upload logs
6565
if: failure()
66-
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
66+
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
6767
with:
6868
name: logcat.txt
6969
path: logcat.txt
Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
name: App Distribution Gradle Compatibility Tests
2+
3+
on:
4+
schedule:
5+
- cron: '0 6 * * *' # Run daily at 6:00 am UTC
6+
pull_request:
7+
paths:
8+
- 'firebase-appdistribution/**'
9+
- 'firebase-appdistribution-api/**'
10+
- 'firebase-appdistribution-gradle/**'
11+
workflow_dispatch: # Allow manual triggering
12+
13+
permissions:
14+
contents: read
15+
issues: write
16+
17+
jobs:
18+
app-distribution-plugin:
19+
runs-on: ubuntu-latest
20+
steps:
21+
- name: Checkout code
22+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
23+
- name: Set up JDK 17
24+
uses: actions/setup-java@3a4f6e1af504cf6a31855fa899c6aa5355ba6c12 # v4.7.0
25+
with:
26+
java-version: 17
27+
distribution: temurin
28+
cache: gradle
29+
30+
- name: Setup local.properties for prodTest
31+
run: |
32+
echo "${{ secrets.INTEG_TESTS_FAD_GRADLE_PROD_TEST_PROPERTIES }}" > local.properties
33+
34+
- name: Add FAD service-credentials.json
35+
env:
36+
INTEG_TESTS_FAD_SERVICE_CREDENTIALS: ${{ secrets.INTEG_TESTS_FAD_SERVICE_CREDENTIALS }}
37+
if: env.INTEG_TESTS_FAD_SERVICE_CREDENTIALS != '' && env.INTEG_TESTS_FAD_SERVICE_CREDENTIALS != 'null'
38+
run: |
39+
echo $INTEG_TESTS_FAD_SERVICE_CREDENTIALS | base64 -d > firebase-appdistribution-gradle/service-credentials.json
40+
41+
- name: Run tests
42+
id: tests
43+
env:
44+
FIREBASE_TOKEN: ${{ secrets.INTEG_TESTS_FAD_FIREBASE_TOKEN }}
45+
run: |
46+
./gradlew \
47+
:firebase-appdistribution-gradle:prodTest \
48+
:firebase-appdistribution-gradle:integrationTest --continue
49+
50+
- name: Upload Test Report
51+
if: failure()
52+
uses: actions/upload-artifact@v4
53+
with:
54+
name: integration-test-report
55+
path: firebase-appdistribution-gradle/build/reports/tests/
56+
57+
- name: Create GitHub Issue on Failure
58+
if: failure()
59+
env:
60+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
61+
run: |
62+
gh issue create \
63+
--title "[firebase-appdistribution] Gradle Compatibility Tests Failed" \
64+
--body "The daily compatibility tests failed on the main branch. Please check the workflow logs here to diagnose the failure: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}" \
65+
--label "api: appdistribution"

.github/workflows/build-release-artifacts.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,21 +41,21 @@ jobs:
4141
./gradlew firebasePublish
4242
4343
- name: Upload m2 repo
44-
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
44+
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
4545
with:
4646
name: m2repository
4747
path: build/m2repository/
4848
retention-days: 15
4949

5050
- name: Upload release notes
51-
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
51+
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
5252
with:
5353
name: release_notes
5454
path: build/release-notes/
5555
retention-days: 15
5656

5757
- name: Upload kotlindocs
58-
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
58+
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
5959
with:
6060
name: kotlindocs
6161
path: build/firebase-kotlindoc/

.github/workflows/ci_tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ jobs:
9999
env:
100100
MATRIX_MODULE: ${{matrix.module}}
101101
- name: Upload Test Results
102-
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
102+
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
103103
if: always()
104104
with:
105105
name: unit-test-result-${{env.ARTIFACT_NAME}}

.github/workflows/create-releases-buildtools.yml

Lines changed: 8 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ jobs:
4040
./gradlew \
4141
-Dmaven.repo.local=${ARTIFACTS} \
4242
:firebase-appdistribution-gradle:publishToMavenLocal
43-
- uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
43+
- uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
4444
with:
4545
name: firebase-appdistribution-gradle
4646
path: ${{ env.ARTIFACTS }}
@@ -62,24 +62,16 @@ jobs:
6262
- name: Setup Gradle
6363
uses: gradle/actions/setup-gradle@0723195856401067f7a2779048b490ace7a47d7c # v5.0.2
6464

65-
- name: Make release for Firebase Crashlytics Buildtools
65+
- name: Make release for Firebase Crashlytics
6666
run: |
6767
./gradlew \
68-
-Dmaven.repo.local=${ARTIFACTS}-buildtools \
69-
:firebase-crashlytics-buildtools:publishToMavenLocal
70-
- uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
71-
with:
72-
name: firebase-crashlytics-buildtools
73-
path: ${{ env.ARTIFACTS }}-buildtools
74-
- name: Make release for Firebase Crashlytics Gradle Plugin
75-
run: |
76-
./gradlew \
77-
-Dmaven.repo.local=${ARTIFACTS}-plugin \
68+
-Dmaven.repo.local=${ARTIFACTS} \
69+
:firebase-crashlytics-buildtools:publishToMavenLocal \
7870
:firebase-crashlytics-gradle:publishToMavenLocal
79-
- uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
71+
- uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
8072
with:
81-
name: firebase-crashlytics-gradle
82-
path: ${{ env.ARTIFACTS }}-plugin
73+
name: firebase-crashlytics-gradle-and-buildtools
74+
path: ${{ env.ARTIFACTS }}
8375

8476

8577
make-performance-release:
@@ -103,7 +95,7 @@ jobs:
10395
./gradlew \
10496
-Dmaven.repo.local=${ARTIFACTS} \
10597
:firebase-perf-gradle:publishToMavenLocal
106-
- uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
98+
- uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
10799
with:
108100
name: firebase-perf-gradle
109101
path: ${{ env.ARTIFACTS }}

.github/workflows/create_releases.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ jobs:
5353
INPUTS_PAST_NAME: ${{ inputs.past-name }}
5454

5555
- name: Create Pull Request
56-
uses: peter-evans/create-pull-request@271a8d0340265f705b14b6d32b9829c1cb33d45e # v7.0.8
56+
uses: peter-evans/create-pull-request@c0f553fe549906ede9cf27b5156039d195d2ece0 # v8.1.0
5757
with:
5858
base: 'releases/${{ inputs.name }}'
5959
branch: 'releases/${{ inputs.name }}.release'

.github/workflows/dataconnect.yml

Lines changed: 29 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,8 @@ on:
3434
env:
3535
FDC_JAVA_VERSION: ${{ inputs.javaVersion || '17' }}
3636
FDC_ANDROID_EMULATOR_API_LEVEL: ${{ inputs.androidEmulatorApiLevel || '34' }}
37-
FDC_NODEJS_VERSION: ${{ inputs.nodeJsVersion || '20' }}
38-
FDC_FIREBASE_TOOLS_VERSION: ${{ inputs.firebaseToolsVersion || '15.11.0' }}
37+
FDC_NODEJS_VERSION: ${{ inputs.nodeJsVersion || '24' }}
38+
FDC_INPUT_FIREBASE_TOOLS_VERSION: ${{ inputs.firebaseToolsVersion }}
3939
FDC_FIREBASE_TOOLS_DIR: /tmp/firebase-tools
4040
FDC_FIREBASE_COMMAND: /tmp/firebase-tools/node_modules/.bin/firebase
4141
FDC_PYTHON_VERSION: ${{ inputs.pythonVersion || '3.13' }}
@@ -54,6 +54,16 @@ jobs:
5454
with:
5555
show-progress: false
5656

57+
- name: Initialize FDC_FIREBASE_TOOLS_VERSION environment variable
58+
run: |
59+
set -euo pipefail
60+
if [[ -n "$FDC_INPUT_FIREBASE_TOOLS_VERSION" ]]; then
61+
version="$FDC_INPUT_FIREBASE_TOOLS_VERSION"
62+
else
63+
version="$(cat firebase-dataconnect/ci/firebase-tools-version.txt)"
64+
fi
65+
echo "FDC_FIREBASE_TOOLS_VERSION=${version}" >> "$GITHUB_ENV"
66+
5767
- uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0
5868
with:
5969
java-version: ${{ env.FDC_JAVA_VERSION }}
@@ -259,15 +269,15 @@ jobs:
259269
set -eux && ./gradlew --warning-mode all ${{ (inputs.gradleInfoLog && '--info') || '' }} :firebase-dataconnect:connectedCheck :firebase-dataconnect:connectors:connectedCheck
260270
261271
- name: Upload Log Files
262-
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
272+
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
263273
with:
264274
name: integration_test_logs
265275
path: "**/*.log"
266276
if-no-files-found: warn
267277
compression-level: 9
268278

269279
- name: Upload Gradle Build Reports
270-
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
280+
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
271281
with:
272282
name: integration_test_gradle_build_reports
273283
path: firebase-dataconnect/**/build/reports/
@@ -305,16 +315,26 @@ jobs:
305315
with:
306316
args: -color /github/workspace/.github/workflows/dataconnect.yml
307317

308-
shellcheck:
318+
zshellcheck:
309319
continue-on-error: false
310320
runs-on: ubuntu-latest
311321
steps:
312322
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
313323
with:
314324
show-progress: false
315325
sparse-checkout: 'firebase-dataconnect/'
316-
- name: shellcheck
317-
run: find . -name '*.sh' -print0 | xargs --verbose -0 shellcheck --norc --enable=all --shell=bash
326+
- name: zshellcheck setup
327+
run: |
328+
set -xveuo pipefail
329+
cd '${{ runner.temp }}'
330+
mkdir zshellcheck
331+
cd zshellcheck
332+
curl -fsSL -o zshellcheck.tar.gz https://github.com/afadesigns/zshellcheck/releases/download/v1.0.17/zshellcheck_Linux_x86_64.tar.gz
333+
tar xvf zshellcheck.tar.gz
334+
- name: zshellcheck
335+
run: |
336+
set -xveuo pipefail
337+
find . -name '*.zsh' -exec '${{ runner.temp }}/zshellcheck/zshellcheck' -severity style -no-color -no-banner -diff '{}' +
318338
319339
python-ci-unit-tests:
320340
continue-on-error: false
@@ -393,6 +413,7 @@ jobs:
393413
needs:
394414
- 'integration-test'
395415
- 'actionlint-dataconnect-yml'
416+
- 'zshellcheck'
396417
- 'python-ci-unit-tests'
397418
- 'python-ci-lint'
398419
- 'python-ci-format'
@@ -418,6 +439,7 @@ jobs:
418439
cat >'${{ runner.temp }}/job_results.txt' <<EOF
419440
integration-test:${{ needs.integration-test.result }}
420441
actionlint-dataconnect-yml:${{ needs.actionlint-dataconnect-yml.result }}
442+
zshellcheck:${{ needs.zshellcheck.result }}
421443
python-ci-unit-tests:${{ needs.python-ci-unit-tests.result }}
422444
python-ci-lint:${{ needs.python-ci-lint.result }}
423445
python-ci-format:${{ needs.python-ci-format.result }}

.github/workflows/dataconnect_demo_app.yml

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ on:
2020
- cron: '0 11 * * *' # Run nightly at 11am UTC (3am Pacific, 6am Eastern)
2121

2222
env:
23-
FDC_NODE_VERSION: ${{ inputs.nodeVersion || '20' }}
24-
FDC_FIREBASE_TOOLS_VERSION: ${{ inputs.firebaseToolsVersion || '15.11.0' }}
23+
FDC_NODE_VERSION: ${{ inputs.nodeVersion || '24' }}
24+
FDC_INPUT_FIREBASE_TOOLS_VERSION: ${{ inputs.firebaseToolsVersion }}
2525
FDC_JAVA_VERSION: ${{ inputs.javaVersion || '17' }}
2626
FDC_FIREBASE_TOOLS_DIR: ${{ github.workspace }}/firebase-tools
2727
FDC_FIREBASE_COMMAND: ${{ github.workspace }}/firebase-tools/node_modules/.bin/firebase
@@ -38,7 +38,19 @@ jobs:
3838
steps:
3939
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
4040
with:
41-
sparse-checkout: firebase-dataconnect/demo
41+
sparse-checkout: |
42+
firebase-dataconnect/demo
43+
firebase-dataconnect/ci/
44+
45+
- name: Initialize FDC_FIREBASE_TOOLS_VERSION environment variable
46+
run: |
47+
set -euo pipefail
48+
if [[ -n "$FDC_INPUT_FIREBASE_TOOLS_VERSION" ]]; then
49+
version="$FDC_INPUT_FIREBASE_TOOLS_VERSION"
50+
else
51+
version="$(cat firebase-dataconnect/ci/firebase-tools-version.txt)"
52+
fi
53+
echo "FDC_FIREBASE_TOOLS_VERSION=${version}" >> "$GITHUB_ENV"
4254
4355
- name: Create Cache Key Files
4456
run: |
@@ -128,21 +140,21 @@ jobs:
128140
${{ (inputs.gradleInfoLog && '--info') || '' }} \
129141
dokkaGeneratePublicationHtml
130142
131-
- uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
143+
- uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
132144
with:
133145
name: apks
134146
path: firebase-dataconnect/demo/build/**/*.apk
135147
if-no-files-found: warn
136148
compression-level: 0
137149

138-
- uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
150+
- uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
139151
with:
140152
name: gradle_build_reports
141153
path: firebase-dataconnect/demo/build/reports/
142154
if-no-files-found: warn
143155
compression-level: 9
144156

145-
- uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
157+
- uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
146158
with:
147159
name: ktdoc
148160
path: firebase-dataconnect/demo/build/dokka/html

.github/workflows/fireperf-e2e.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ jobs:
9696
}
9797
- name: Upload test artifacts
9898
if: always()
99-
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
99+
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
100100
with:
101101
name: test-artifacts (${{ matrix.environment }})
102102
path: |

.github/workflows/firestore_ci_tests.yml

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ jobs:
9494
./gradlew firebase-firestore:connectedCheck withErrorProne -PtargetBackend="prod" -PbackendEdition="standard" -PtargetDatabaseId="(default)"
9595
- name: Upload logs
9696
if: failure()
97-
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
97+
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
9898
with:
9999
name: logcat.txt
100100
path: logcat.txt
@@ -172,7 +172,6 @@ jobs:
172172
continue-on-error: true
173173

174174
- name: Firestore Enterprise DB Integ Tests
175-
timeout-minutes: 20
176175
uses: reactivecircus/android-emulator-runner@62dbb605bba737720e10b196cb4220d374026a6d #v2.33.0
177176
env:
178177
FIREBASE_CI: 1
@@ -189,9 +188,9 @@ jobs:
189188
./gradlew firebase-firestore:connectedCheck withErrorProne -PtargetBackend="prod" -PbackendEdition="enterprise" -PtargetDatabaseId="enterprise"
190189
- name: Upload logs
191190
if: failure()
192-
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
191+
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
193192
with:
194-
name: named-db-logcat.txt
193+
name: enterprise-db-logcat.txt
195194
path: logcat.txt
196195
retention-days: 7
197196
if-no-files-found: ignore
@@ -255,7 +254,7 @@ jobs:
255254
./gradlew firebase-firestore:connectedCheck withErrorProne -PtargetBackend="nightly" -PbackendEdition="enterprise" -PtargetDatabaseId="enterprise"
256255
- name: Upload logs
257256
if: failure()
258-
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
257+
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
259258
with:
260259
name: nightly-logcat.txt
261260
path: logcat.txt
@@ -332,7 +331,7 @@ jobs:
332331
./gradlew firebase-firestore:connectedCheck withErrorProne -PtargetBackend="emulator" -PbackendEdition="enterprise"
333332
- name: Upload logs
334333
if: failure()
335-
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
334+
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
336335
with:
337336
name: emulator-logcat.txt
338337
path: logcat.txt

0 commit comments

Comments
 (0)