Skip to content

feat(ci): report nightly test history to tcache - #3624

Draft
OlufemiAdeOlusile wants to merge 3 commits into
masterfrom
add-nightly-history-upload
Draft

feat(ci): report nightly test history to tcache#3624
OlufemiAdeOlusile wants to merge 3 commits into
masterfrom
add-nightly-history-upload

Conversation

@OlufemiAdeOlusile

Copy link
Copy Markdown
Collaborator

Summary

Nightly runs never report anything to tcache today (none of the three
nightly workflows set testrun_name). This wires them up to a new,
separate /history endpoint on tcache (merged in
mkoura/testing-results-cache#14), so the failure-analysis step can later
tell a new failure from one that happened last night too.

  • New report-history input + "Report nightly history" step in
    regression_reusable.yaml, PUTting to /history/<testrun_name>/<job_id>
    on failure. Separate from the existing /import step (a different
    route, a different table on tcache's side).
  • Gated on report-history, not just testrun_name, so manual
    regression/regression-dbsync dispatches never write to /history -
    only the three nightly workflows opt in.
  • nightly.yaml/nightly_cli.yaml/nightly_dbsync.yaml now set
    testrun_name (nightly/nightly-cli/nightly-dbsync) and
    report-history: true.

Side effect worth knowing: setting testrun_name on the nightlies for the
first time also turns on the pre-existing /import step for them (it was
previously dormant since they never set testrun_name). Since
skip_passed stays off, that data is written but never read back - no
functional change, just extra rows/files on tcache's existing side.

Follow-up, not in this PR: feeding the downloaded history into the
failure-analysis prompt (Phase 3).

Test plan

  • ./ai_run.sh make lint - clean except the pre-existing,
    unrelated debug-statements failure (reproduces on master too).
  • Manually dispatch one nightly workflow from this branch and confirm
    the new step actually PUTs to tcache's /history endpoint.

Add a report-history flag and a new "Report nightly history" step
to the reusable regression workflow, PUTting each failed nightly
run's JUnit XML to tcache's separate /history endpoint. Gated on
report-history rather than the existing testrun_name input so
manual regression/regression-dbsync dispatches never write here.

Wire testrun_name and report-history: true into the three real
nightly workflows (nightly, nightly-cli, nightly-dbsync).
Expose report-history on regression.yaml's manual dispatch and
widen the history-upload gate to success-or-failure, so a quick
smoke-test dispatch actually exercises the new curl call against
real tcache without waiting on a real failure or running the full
nightly suite.

TEMPORARY - to be reverted before this PR is finalized.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant