You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Description
Improve the E2E messenger report generated by CI and reorganize the
report scripts so the same logic is easier to follow.
User-facing changes:
Add a Reason column to the failed-tests thread table and rename
Test group to Tests.
Link cluster names in failed-tests thread replies to the matching
workflow/job URL.
Hide the Errors column in the main test-results table when there
are no Ginkgo errors.
Calculate Success Rate from executed specs only:
passed / (passed + failed + errors).
Add table header emojis to the main report.
Use the full Ginkgo Failure.Message text as the failed-test reason.
Stop wrapping *exec.ExitError with %w in
test/e2e/internal/framework/ssh.go so Ginkgo no longer dumps Go
internals into the report when an SSH command fails.
Capture Ginkgo stdout/stderr in the reusable pipeline and parse it as
a fallback report source so suite-level failures such as
SynchronizedBeforeSuite are still surfaced when the JSON report is
missing or contains only setup failure data.
Internal refactors (no behavior change, covered by existing tests):
Move the shared withTempDir / createCore jest helpers into
shared/test-utils.js to remove duplication across three test files.
Extract escapeRegExp in shared/report-model.js; consolidate
buildStatusMessage into a status → template lookup table; remove a
redundant ternary in buildClusterStatus.
Unify the Ginkgo source lookup (findGinkgoReport /
findGinkgoOutput → one findGinkgoSource) and call
parseGinkgoFile once with the descriptor picked up front.
Iterate over a list of required keys in
requireClusterReportConfig instead of three identical if blocks.
Pre-filter cluster reports once by storage key and merge
renderClusterFailuresSection / renderMissingReportsSection into
a single renderBulletSection helper. Output stays byte-identical;
verified by existing messenger-report tests.
Pass the loop credentials object as-is to postToLoopApi so the
two call sites collapse to one-liners.
---------
Signed-off-by: Nikita Korolev <nikita.korolev@flant.com>
0 commit comments