Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
e0c330d
iOS: Remove Analytics dependency from GMA integration test (#1386)
jonsimantov Jul 19, 2023
3cd0dca
Add stub workflow for updating feature branches.
jonsimantov Jul 20, 2023
00eeac8
Add script to merge main into all active feature branches on a regula…
jonsimantov Jul 23, 2023
b5e5477
Increase retry. (#1402)
jonsimantov Jul 24, 2023
b9a53cf
Add Firestore test history report (#1403)
jonsimantov Jul 25, 2023
daf92c8
Revert "OR Query Implementation (#1335)" (#1399)
tom-andersen Jul 28, 2023
27a10bc
Wrap the real-time RemoteConfig test in flaky-block to automatically …
AlmostMatt Jul 31, 2023
ed42949
Merge branch 'feature_branch/ump-sdk' into main
jonsimantov Jul 31, 2023
9ac8881
Update the iOS version used by FTL (#1408)
a-maurice Jul 31, 2023
f8b6a36
Kick off nightly packaging an hour earlier (#1409)
a-maurice Aug 2, 2023
18367c0
Fix crash on gma::Initialize without a Firebase App (#1320)
AlmostMatt Aug 2, 2023
505f12e
build: pass along the CMake path (#1410)
compnerd Aug 3, 2023
5df80a2
Add log to gsutil fetch. (#1411)
jonsimantov Aug 3, 2023
3002ff4
Update mobile dependencies - Thu Aug 03 2023 (#1413)
firebase-workflow-trigger[bot] Aug 6, 2023
f198c6f
feat(auth): Add emulator support (#1400)
cynthiajoan Aug 6, 2023
f84253e
Update merge-to-main script (#1420)
jonsimantov Aug 7, 2023
64d5d42
Update release version number for M135, 11.4.0 (#1421)
AlmostMatt Aug 8, 2023
669b0fb
feat(auth): enable emulator support on desktop (#1423)
cynthiajoan Aug 10, 2023
86198bb
Internal Updates. (#1422)
nakirekommula Aug 10, 2023
7a19a44
Add Analytics function for on-device conversion (#1429)
a-maurice Aug 21, 2023
ca5cdee
Update mobile dependencies - Tue Aug 29 2023 (#1436)
firebase-workflow-trigger[bot] Aug 30, 2023
f55c43c
add UseEmulator api to auth (#1437)
cynthiajoan Aug 31, 2023
18d57fd
Merge branch 'feature_branch/ump-sdk' into workflow/auto-merge-featur…
jonsimantov Sep 11, 2023
File filter

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Add Firestore test history report (#1403)
* Add --firestore flag to report Firestore history. * Add Firestore report to nightly cron job. * Remove multiline commands. * Revert "Remove multiline commands." This reverts commit 6393ae9. * Fix tabbing. * Fix packaging test detection for Firestore.
  • Loading branch information
jonsimantov authored Jul 25, 2023
commit b9a53cf29fefe8e351e8b6b53a238a8365aa8993
29 changes: 26 additions & 3 deletions .github/workflows/build-report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,16 @@ env:

jobs:
generate-report:
strategy:
fail-fast: false
matrix:
test_set: [ general, firestore ]
runs-on: ubuntu-20.04
name: generate-report-${{ matrix.test_set }}
steps:
- name: Pause 5 minutes to offset Firestore fetches.
if: ${{ matrix.test_set == 'firestore' }}
run: sleep 300
- name: Setup python
uses: actions/setup-python@v4
with:
Expand All @@ -36,14 +44,24 @@ jobs:
timeout_minutes: 20
max_attempts: 3
shell: bash
command: python3 scripts/gha/report_build_status.py --token ${{ github.token }} --days ${{ env.numDays }} --write_cache build_status_short.cache
command: |
extra_flags=
if [[ "${{ matrix.test_set }}" == "firestore" ]]; then
extra_flags=--firestore
fi
python3 scripts/gha/report_build_status.py --token ${{ github.token }} --days ${{ env.numDays }} --write_cache build_status_short.cache ${extra_flags}
- name: Fetch extended GitHub jobs (with retry)
uses: nick-invision/retry@v2
with:
timeout_minutes: 80
max_attempts: 3
shell: bash
command: python3 scripts/gha/report_build_status.py --token ${{ github.token }} --days ${{ env.numDaysExtended }} --write_cache build_status.cache
command: |
extra_flags=
if [[ "${{ matrix.test_set }}" == "firestore" ]]; then
extra_flags=--firestore
fi
python3 scripts/gha/report_build_status.py --token ${{ github.token }} --days ${{ env.numDaysExtended }} --write_cache build_status.cache ${extra_flags}
- name: Generate report files
run: |
python3 scripts/gha/report_build_status.py --token ${{ github.token }} --days ${{ env.numDays }} --output_markdown --read_cache build_status_short.cache > report_short.md
Expand Down Expand Up @@ -88,4 +106,9 @@ jobs:
timeout_minutes: 5
max_attempts: 3
shell: bash
command: python3 scripts/gha/update_issue_comment.py --token ${{ github.token }} --issue_title '[C++] Nightly Integration Testing Report' --start_tag build-dashboard-comment-start --end_tag build-dashboard-comment-end < comment.md
command: |
issue_title='[C++] Nightly Integration Testing Report'
if [[ "${{ matrix.test_set }}" == "firestore" ]]; then
issue_title='[C++] Nightly Integration Testing Report for Firestore'
fi
python3 scripts/gha/update_issue_comment.py --token ${{ github.token }} --issue_title "${issue_title}" --start_tag build-dashboard-comment-start --end_tag build-dashboard-comment-end < comment.md
21 changes: 15 additions & 6 deletions scripts/gha/report_build_status.py
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,10 @@
"summary_include_crashes", True,
"Whether to include CRASH/TIMEOUT in the test summary.")

flags.DEFINE_bool(
"firestore", False,
"Report on Firestore tests rather than on general tests.")

_WORKFLOW_TESTS = 'integration_tests.yml'
_WORKFLOW_PACKAGING = 'cpp-packaging.yml'
_TRIGGER_USER = 'firebase-workflow-trigger[bot]'
Expand Down Expand Up @@ -380,11 +384,10 @@ def main(argv):
if run['status'] != 'completed': continue
if run['day'] < start_date or run['day'] > end_date: continue
run['duration'] = dateutil.parser.parse(run['updated_at'], ignoretz=True) - run['date']
if general_test_time in str(run['date']):
compare_test_time = firestore_test_time if FLAGS.firestore else general_test_time
if compare_test_time in str(run['date']):
source_tests[day] = run
all_days.add(day)
# elif firestore_test_time in str(run['date']):
# firestore_tests[day] = run

workflow_id = _WORKFLOW_PACKAGING
all_runs = firebase_github.list_workflow_runs(FLAGS.token, workflow_id, _BRANCH, 'schedule', _LIMIT)
Expand Down Expand Up @@ -426,9 +429,15 @@ def main(argv):
with progress.bar.Bar('Downloading triggered workflow logs...', max=len(package_tests_all)) as bar:
for run in package_tests_all:
day = str(run['date'].date())
if day in package_tests and int(package_tests[day]['id']) < int(run['id']):
bar.next()
continue
if day in package_tests:
# Packaging triggers two tests. For Firestore, we want the larger run ID (the second run triggered).
if FLAGS.firestore and int(package_tests[day]['id']) > int(run['id']):
bar.next()
continue
# For general tests we want the smaller run ID (the first run triggered).
if not FLAGS.firestore and int(package_tests[day]['id']) < int(run['id']):
bar.next()
continue

packaging_run = 0

Expand Down