-
Notifications
You must be signed in to change notification settings - Fork 16
[CHAOSPLT-932] Add support for internal fuzzing infra #1372
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
Conversation
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #1372 +/- ##
==========================================
- Coverage 71.16% 71.14% -0.03%
==========================================
Files 403 404 +1
Lines 64368 64492 +124
==========================================
+ Hits 45810 45883 +73
- Misses 18558 18609 +51
🚀 New features to boost your workflow:
|
BenchmarksComparisonBenchmark execution time: 2025-12-15 14:26:26 Comparing candidate commit c46f03b in PR branch Found 0 performance improvements and 0 performance regressions! Performance is the same for 57 metrics, 2 unstable metrics. 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. |
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
|
a470af9 to
ff918ab
Compare
VianneyRuhlmann
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
| .gitignore @Datadog/libdatadog | ||
| .gitlab-ci.yml @Datadog/apm-common-components-core | ||
| .gitlab/benchmarks.yml @Datadog/apm-common-components-core | ||
| .gitlab/fuzz.yml @Datadog/chaos-platform |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks for flagging ownership
r1viollet
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Thank you for adding the infra to do this.
NIT: it was not totally clear where I should look up the reports from the readme (I understand I can go to gitlab, though you might want a more explicit mechanism)
What does this PR do?
This PR adds a fuzzer using
cargo-fuzzthat then runs in our internal fuzzing infrastructure.Motivation
This aims to enable fuzz testing via cargo fuzz in this repository. Adding a initial fuzzer is simply a bootstraping part.
The end goal is to find bugs before customers do.
There's already some existing property test / fuzz test with
boleroin other crate (i.e:libdd-profiling{,-protobuf}) but these run only in Github's CI for short amount of time (30sec). The fuzzing infra will let these run last for hours.This new pipeline will NOT run in feature branches and will NOT block CI. We only use the CI system to build the binaries and upload it to our internal infra, to be run for extended period of time.
Because blocking CI on "very wrong" failure is still valuable during quick developement cycle, the other existing fuzz test and property tests will still run for 30sec on github actions. These fuzz test will NOT be part of the fuzzing infrastructure (and so you won't have access to the enrichment, auto fix proposal, stats, ...)
Additional Notes
How to test the change?
Click the
fuzzpipeline in gitlab of this branch.Example result here