Skip to content

Commit a7eec5a

Browse files
authored
chore(ci): nightly build (#18229)
1 parent c23dbad commit a7eec5a

9 files changed

Lines changed: 174 additions & 134 deletions

File tree

.github/workflows/android.yaml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,16 +24,22 @@ on:
2424
- '**/flutterfire_ui/**'
2525
- '**.md'
2626
workflow_call:
27+
inputs:
28+
nightly_test_mode:
29+
type: boolean
30+
default: false
2731

2832
jobs:
2933
android:
3034
runs-on: ubuntu-latest
31-
timeout-minutes: 45
35+
timeout-minutes: ${{ inputs.nightly_test_mode && 5 || 45 }}
3236
strategy:
3337
fail-fast: false
3438
matrix:
3539
working_directory:
3640
['tests', 'packages/cloud_firestore/cloud_firestore/example']
41+
exclude:
42+
- working_directory: ${{ inputs.nightly_test_mode && 'packages/cloud_firestore/cloud_firestore/example' || 'none' }}
3743
env:
3844
AVD_ARCH: x86_64
3945
AVD_API_LEVEL: 34

.github/workflows/e2e_tests_fdc.yaml

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,14 +21,18 @@ on:
2121
- '**/example/**'
2222
- '**.md'
2323
workflow_call:
24+
inputs:
25+
nightly_test_mode:
26+
type: boolean
27+
default: false
2428

2529
permissions:
2630
contents: read
2731

2832
jobs:
2933
android:
3034
runs-on: ubuntu-latest
31-
timeout-minutes: 45
35+
timeout-minutes: ${{ inputs.nightly_test_mode && 5 || 45 }}
3236
strategy:
3337
fail-fast: false
3438
env:
@@ -140,7 +144,7 @@ jobs:
140144

141145
ios:
142146
runs-on: macos-15
143-
timeout-minutes: 45
147+
timeout-minutes: ${{ inputs.nightly_test_mode && 5 || 45 }}
144148
strategy:
145149
fail-fast: false
146150
steps:
@@ -261,7 +265,7 @@ jobs:
261265

262266
web:
263267
runs-on: macos-latest
264-
timeout-minutes: 15
268+
timeout-minutes: ${{ inputs.nightly_test_mode && 5 || 15 }}
265269
strategy:
266270
fail-fast: false
267271
steps:
@@ -340,7 +344,7 @@ jobs:
340344

341345
web-wasm:
342346
runs-on: macos-latest
343-
timeout-minutes: 15
347+
timeout-minutes: ${{ inputs.nightly_test_mode && 5 || 15 }}
344348
strategy:
345349
fail-fast: false
346350
steps:

.github/workflows/ios.yaml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,16 +24,22 @@ on:
2424
- '**/flutterfire_ui/**'
2525
- '**.md'
2626
workflow_call:
27+
inputs:
28+
nightly_test_mode:
29+
type: boolean
30+
default: false
2731

2832
jobs:
2933
ios:
3034
runs-on: macos-15
31-
timeout-minutes: 60
35+
timeout-minutes: ${{ inputs.nightly_test_mode && 5 || 60 }}
3236
strategy:
3337
fail-fast: false
3438
matrix:
3539
working_directory:
3640
['tests', 'packages/cloud_firestore/cloud_firestore/example']
41+
exclude:
42+
- working_directory: ${{ inputs.nightly_test_mode && 'packages/cloud_firestore/cloud_firestore/example' || 'none' }}
3743
steps:
3844
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938
3945
- uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a

.github/workflows/macos.yaml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,16 +24,22 @@ on:
2424
- '**/flutterfire_ui/**'
2525
- '**.md'
2626
workflow_call:
27+
inputs:
28+
nightly_test_mode:
29+
type: boolean
30+
default: false
2731

2832
jobs:
2933
macos:
3034
runs-on: macos-15
31-
timeout-minutes: 45
35+
timeout-minutes: ${{ inputs.nightly_test_mode && 5 || 45 }}
3236
strategy:
3337
fail-fast: false
3438
matrix:
3539
working_directory:
3640
['tests', 'packages/cloud_firestore/cloud_firestore/example']
41+
exclude:
42+
- working_directory: ${{ inputs.nightly_test_mode && 'packages/cloud_firestore/cloud_firestore/example' || 'none' }}
3743
steps:
3844
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938
3945
- uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a

.github/workflows/nightly.yaml

Lines changed: 50 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,20 @@
11
name: nightly-ci
2+
run-name: ${{ github.event.inputs.test_mode == 'true' && format('[Test Mode] {0}', github.workflow) || github.workflow }}
23

3-
# concurrency:
4-
# group: ${{ github.workflow }}-${{ github.ref }}
5-
# cancel-in-progress: false
4+
concurrency:
5+
group: ${{ github.workflow }}-${{ github.ref }}
6+
cancel-in-progress: false
67

78
on:
8-
# schedule:
9-
# - cron: '0 4 * * *'
10-
workflow_dispatch:
9+
schedule:
10+
- cron: '0 4 * * *'
11+
# The dispatch is only for test purpose
12+
# workflow_dispatch:
13+
# inputs:
14+
# test_mode:
15+
# description: 'Run in test mode'
16+
# type: boolean
17+
# default: false
1118

1219
permissions:
1320
contents: read
@@ -16,22 +23,59 @@ permissions:
1623
jobs:
1724
e2e-android:
1825
uses: ./.github/workflows/android.yaml
26+
with:
27+
nightly_test_mode: ${{ github.event.inputs.test_mode == 'true' }}
1928
secrets: inherit
2029
e2e-ios:
2130
uses: ./.github/workflows/ios.yaml
31+
with:
32+
nightly_test_mode: ${{ github.event.inputs.test_mode == 'true' }}
2233
secrets: inherit
2334
e2e-macos:
2435
uses: ./.github/workflows/macos.yaml
36+
with:
37+
nightly_test_mode: ${{ github.event.inputs.test_mode == 'true' }}
2538
secrets: inherit
2639
e2e-web:
2740
uses: ./.github/workflows/web.yaml
41+
with:
42+
nightly_test_mode: ${{ github.event.inputs.test_mode == 'true' }}
2843
secrets: inherit
2944
e2e-windows:
3045
uses: ./.github/workflows/windows.yaml
46+
with:
47+
nightly_test_mode: ${{ github.event.inputs.test_mode == 'true' }}
3148
secrets: inherit
3249
e2e-fdc:
3350
uses: ./.github/workflows/e2e_tests_fdc.yaml
51+
with:
52+
nightly_test_mode: ${{ github.event.inputs.test_mode == 'true' }}
3453
secrets: inherit
3554
e2e-pipeline:
3655
uses: ./.github/workflows/e2e_tests_pipeline.yaml
56+
if: ${{ github.event.inputs.test_mode != 'true' }}
3757
secrets: inherit
58+
59+
update-dashboard:
60+
runs-on: ubuntu-latest
61+
if: ${{ always() && !cancelled() }}
62+
needs: [e2e-android, e2e-ios, e2e-macos, e2e-web, e2e-windows, e2e-fdc, e2e-pipeline]
63+
steps:
64+
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938
65+
- uses: subosito/flutter-action@f2c4f6686ca8e8d6e6d0f28410eeef506ed66aff
66+
with:
67+
channel: 'stable'
68+
- name: Update Dashboard Issue
69+
env:
70+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
71+
TEST_MODE: ${{ github.event.inputs.test_mode == 'true' }}
72+
ANDROID_STATUS: ${{ needs.e2e-android.result }}
73+
IOS_STATUS: ${{ needs.e2e-ios.result }}
74+
MACOS_STATUS: ${{ needs.e2e-macos.result }}
75+
WEB_STATUS: ${{ needs.e2e-web.result }}
76+
WINDOWS_STATUS: ${{ needs.e2e-windows.result }}
77+
FDC_STATUS: ${{ needs.e2e-fdc.result }}
78+
PIPELINE_STATUS: ${{ needs.e2e-pipeline.result }}
79+
REPO: ${{ github.repository }}
80+
run: |
81+
dart .github/workflows/scripts/nightly_issue_dashboard.dart

0 commit comments

Comments
 (0)