-
Notifications
You must be signed in to change notification settings - Fork 16
ci: add script to add file attribute to junit.xml #1487
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
BenchmarksComparisonBenchmark execution time: 2026-01-30 22:47:34 Comparing candidate commit 06d7e4f in PR branch Found 2 performance improvements and 0 performance regressions! Performance is the same for 55 metrics, 2 unstable metrics. scenario:normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて
CandidateCandidate benchmark detailsGroup 1
Group 2
Group 3
Group 4
Group 5
Group 6
Group 7
Group 8
Group 9
Group 10
Group 11
Group 12
Group 13
Group 14
Group 15
Group 16
Group 17
Group 18
Group 19
BaselineOmitted due to size. |
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #1487 +/- ##
========================================
Coverage 70.98% 70.99%
========================================
Files 422 424 +2
Lines 68791 69074 +283
========================================
+ Hits 48831 49036 +205
- Misses 19960 20038 +78
🚀 New features to boost your workflow:
|
Artifact Size Benchmark Reportaarch64-alpine-linux-musl
aarch64-apple-darwin
aarch64-unknown-linux-gnu
libdatadog-x64-windows
libdatadog-x86-windows
x86_64-alpine-linux-musl
x86_64-apple-darwin
x86_64-unknown-linux-gnu
|
42d12e2 to
7dc428a
Compare
7dc428a to
06d7e4f
Compare
What does this PR do?
cargo-nextest does not include the file path for test cases when generating junit.xml. This script runs after the junit.xml is generated by nextest and uses cargo-metadata to resolve the filename for tests.
Motivation
The Test Optimization tool uses the file attribute and the git CODEOWNERS file to map test failures to code owners to provide granular alerting capabilities.
Additional Notes
Comments in the code explain this but two things make this less trivial than expected:
libdd-profiling-ffihas a lib target ofdatadog_profiling_ffi. For unit tests we need to include a fallback to check the alias if it exists to properly resolve to the file name.How to test the change?
Generate the Junit file locally with
cargo nextest run --profile ci --workspacetotarget/nextest/ci/junit.xmlRun the script to add file attributes with
cargo run --bin add_junit_file_attributes -- target/nextest/ci/junit.xml -o junit_with_files.xmlI verified all tests have codeowners in Test Optimization on my branch