-
Notifications
You must be signed in to change notification settings - Fork 2.3k
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
Add Continuous Fuzzing Integration via fuzzit.dev #1001
Conversation
All (the pull request submitter and all commit authors) CLAs are signed, but one or more commits were authored or co-authored by someone other than the pull request submitter. We need to confirm that all authors are ok with their commits being contributed to this project. Please have them confirm that by leaving a comment that contains only Note to project maintainer: There may be cases where the author cannot leave a comment, or the comment is not properly detected as consent. In those cases, you can manually confirm consent of the commit author(s), and set the ℹ️ Googlers: Go here for more info. |
@dominikh can you confirm with |
Codecov Report
@@ Coverage Diff @@
## master #1001 +/- ##
=======================================
Coverage 53.45% 53.45%
=======================================
Files 40 40
Lines 4028 4028
=======================================
Hits 2153 2153
Misses 1676 1676
Partials 199 199 Continue to review full report at Codecov.
|
I think @achew22 is better suited for the org ownership role. I will take a look at the code. |
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.
Looks great! Just one small question.
.circleci/config.yml
Outdated
@@ -48,6 +48,14 @@ jobs: | |||
- checkout | |||
- run: go get golang.org/x/lint/golint | |||
- run: make lint | |||
fuzzit: | |||
docker: | |||
- image: fuzzitdev/golang:1.12.7-buster |
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.
Would there be any value in using something like the latest tag instead of this?
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.
so the Dockerfile is here
the tag is the version of golang and it's always the latest (we push to that tag if there are changes) though it doesn't really change often as it just golang+clang docker
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.
I think it'd be nice to have it automatically update, could we make it latest?
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.
what do you mean by latest? latest golang or latest golang:1.12.7
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.
fuzzitdev/golang:latest
. Is this not a tag you will support?
@googlebot I consent |
CLAs look good, thanks! ℹ️ Googlers: Go here for more info. |
I'm confused by the build error, does it mean anything to you? |
@johanbrandhorst first time I'm seeing this. very strange. |
I'll try to solve this tomorrow morning |
5acff46
to
53f0222
Compare
Add a basic fuzz test for the httprule package, run regression tests locally on every PR and continuous fuzzing on fuzzit.dev.
@johanbrandhorst Looks like it works! you need to sign up at https://app.fuzzit.dev so I can add you to grpc-gateway account so you can take over (let me know once you sign-up). You will need to copy the key from https://app.fuzzit.dev/orgs/grpc-gateway/settings to CircleCI environment variable |
Awesome, great job, as I mentioned I nominate @achew22 to be our org manager, he can make the CircleCI changes too. Andrew could you please merge this once that's done? |
The link of https://app.fuzzit.dev/orgs/grpc-gateway/settings doesn't seem to exist. I'm guessing there is a manual step on @yevgenypats's part to create that. I have created an account through the github oauth login, the email on file is the same one I commit to this repo under. I presume that the API key for fuzzit isn't secret, can you confirm that for me? |
@achew22 you should have access now. The api key is indeed a secret and this why it should be stored in the CircleCI environment variable. |
@achew22 ping |
@johanbrandhorst @achew22 friendly ping:) |
@yevgenypats I've registered with fuzzit, could you add me as an admin to the grpc-gateway? |
@johanbrandhorst done. you should have access now to https://app.fuzzit.dev/orgs/grpc-gateway/dashboard |
I've added the |
Yes! |
Thanks for getting this in @yevgenypats :) |
Sure! feel free to RT:) https://twitter.com/fuzzitdev/status/1166282998125334528 |
This PR adds a continuous fuzzing integration to grpc-gateway Circle pipeline via Fuzzit service.
This means the following:
To take ownership of the organisation, please login to https://app.fuzzit.dev and let me know your account.
This is PR relates to this issue:
#998
Also this PR lays the foundation with the first basic go-fuzz target function that fuzzes the http-rule.
Please review and feel free to comment/ask questions
cc @johanbrandhorst