Skip to content

feat(ci): restore benchmark PR comments + add reliability/chaos reporting#589

Draft
jbachorik wants to merge 11 commits into
mainfrom
jb/ci-pr-comments
Draft

feat(ci): restore benchmark PR comments + add reliability/chaos reporting#589
jbachorik wants to merge 11 commits into
mainfrom
jb/ci-pr-comments

Conversation

@jbachorik

Copy link
Copy Markdown
Collaborator

What does this PR do?:
Restores benchmark comparison comments on PRs (broken since the CI pipeline was migrated into the repo) and adds reliability + chaos test result comments triggered by the test:reliability label.

Motivation:
Benchmark PR comments stopped posting after the pipeline migration from java-profiler-build because the old scripts depended on UPSTREAM_PROJECT_NAME/UPSTREAM_BRANCH which are never set in the in-repo pipeline. Reviewers lost per-PR benchmark regression visibility. Separately, reliability/chaos test results were only surfaced via Slack on scheduled runs; there was no way to see them on a PR.

Additional Notes:
Key design decisions:

  • Benchmark comments: per-cell post-pr-comment.sh calls removed; a new aggregation job (post-benchmarks-pr-comment) collects all comparison-baseline-vs-candidate_*.md artifacts and posts one comment.
  • Reliability/chaos: label-gated via a dynamic child pipeline (test:reliabilitygenerate-reliability-child-pipelinerun-reliability-tests trigger). The label is detected in prepare.sh via jq (with grep fallback) and exported as RUN_RELIABILITY=true to build.env. Scheduled runs on main are untouched.
  • Both notifier jobs use when: always so failures are reported (with when: on_success they would be silenced exactly when needed most).
  • DDPROF_COMMIT_BRANCH is forwarded to the child pipeline via trigger: variables: since forward: pipeline_variables doesn't carry dotenv artifact variables across the child pipeline boundary.
  • chaos_check.sh already has a built-in fallback to rebuild chaos.jar inline and download ddprof from Maven snapshots, so the child pipeline doesn't need chaos:build/build-artifact parent artifacts.

How to test the change?:

  • Push a branch, open a PR, manually trigger benchmark jobs — verify a single aggregated "Benchmarks" PR comment is posted.
  • Add label test:reliability to a PR — verify the reliability child pipeline triggers and a "Reliability & Chaos" comment is posted after jobs complete.
  • Let a reliability job fail — verify the comment is still posted (not silenced by when: on_success).

For Datadog employees:

  • If this PR touches code that signs or publishes builds or packages, or handles
    credentials of any kind, I've requested a review from @DataDog/security-design-and-guidance.
  • This PR doesn't touch any of that.
  • JIRA: [JIRA-XXXX]

…ting

- Fix benchmark comments: replace UPSTREAM_* dependency with
  DDPROF_COMMIT_BRANCH; aggregate all per-cell reports into one comment
- Add reliability/chaos PR comments via dynamic child pipeline gated
  on test:reliability label (detected in prepare.sh)
- Fix notifier jobs: when:always so failures are reported (not silenced)
- Forward DDPROF_COMMIT_BRANCH/SHA to child pipeline via trigger variables
- Use jq (with grep fallback) for label detection in prepare.sh
- Fix cut -f2 → cut -f2- to preserve full FAIL reason text
- Fix multiline REASON dotenv: grep -m1 + tr -d '\n'
- Fix tr '+' '_' mangling reason value; scope git insteadOf to clone

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@jbachorik jbachorik added the AI label Jun 10, 2026
@dd-octo-sts

dd-octo-sts Bot commented Jun 10, 2026

Copy link
Copy Markdown
Contributor

CI Test Results

Run: #27332413323 | Commit: 6a1b201 | Duration: 12m 41s (longest job)

All 32 test jobs passed

Status Overview

JDK glibc-aarch64/debug glibc-amd64/debug musl-aarch64/debug musl-amd64/debug
8 - - -
8-ibm - - -
8-j9 - -
8-librca - -
8-orcl - - -
11 - - -
11-j9 - -
11-librca - -
17 - -
17-graal - -
17-j9 - -
17-librca - -
21 - -
21-graal - -
21-librca - -
25 - -
25-graal - -
25-librca - -

Legend: ✅ passed | ❌ failed | ⚪ skipped | 🚫 cancelled

Summary: Total: 32 | Passed: 32 | Failed: 0


Updated: 2026-06-11 08:14:11 UTC

@datadog-datadog-prod-us1

This comment has been minimized.

@dd-octo-sts

dd-octo-sts Bot commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

⚠️ Reliability & Chaos Tests

Status not configured
Commit fe128d733890fb66ce1b1b99e8b02ead26b44b68

@jbachorik jbachorik force-pushed the jb/ci-pr-comments branch from 7258f4c to 484e303 Compare June 11, 2026 08:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant