Skip to content
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

Update fuzzer and integrate with OneFuzz #4135

Merged
merged 30 commits into from
Feb 13, 2024

Conversation

ryfu-msft
Copy link
Contributor

@ryfu-msft ryfu-msft commented Feb 2, 2024

Updates the WinGetYamlFuzzer so that it builds successfully for only the fuzzing configuration and x64 or x86 platforms.

Building a libfuzzer with MSVC is now supported so I removed everything related to creating our own libfuzzer.

I started by removing the WINGET_DISABLE_FOR_FUZZING macro and trying to get the project to build successfully, since a lot has changed since this was last implemented and things are a lot more complex now. I worked backwards by removing references that were not needed and building with the the required ASan and SanCov compiler options.

Microsoft Reviewers: Open in CodeFlow

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

@ryfu-msft
Copy link
Contributor Author

/azp run

Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@microsoft microsoft deleted a comment from github-actions bot Feb 7, 2024

This comment has been minimized.

@ryfu-msft ryfu-msft marked this pull request as ready for review February 7, 2024 18:37
@ryfu-msft ryfu-msft requested a review from a team as a code owner February 7, 2024 18:37

This comment has been minimized.

- job: 'Fuzzing'
timeoutInMinutes: 60
dependsOn: 'GetReleaseTag'
condition: always()
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I feel strongly that this condition should be changed so that the fuzzing job only runs for the master branch. I don't think we should overload the onefuzz task by submitting artifacts for every PR build as the task doesn't immediately give us any information about fuzzing bugs. Those are autogenerated by the onefuzz service and sent as an ADO notification. It would be less noisy if it only ran for a master branch commit because that is actual code that is checked in and not being worked on.

If there are no objections, I will change this after this PR is reviewed and approved so that we can see it run to completion.

Copy link
Contributor

@yao-msft yao-msft Feb 7, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, if "the task doesn't immediately give us any information about fuzzing bugs", then we should consider running it only on ci builds

azure-pipelines.yml Outdated Show resolved Hide resolved
azure-pipelines.yml Show resolved Hide resolved
src/WinGetYamlFuzzing/OneFuzzConfig.json Outdated Show resolved Hide resolved
src/WinGetYamlFuzzing/OneFuzzConfig.json Outdated Show resolved Hide resolved
src/WinGetYamlFuzzing/OneFuzzConfig.json Outdated Show resolved Hide resolved
"AdoTemplate": {
"Org": "ms",
"Project": "winget-cli",
"AssignedTo": "[email protected]",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: Is this required field? Unless you are responsible for triaging all fuzzing related bugs?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes this is required, and I'll volunteer myself to help with triaging :)

This comment has been minimized.

@microsoft microsoft deleted a comment from github-actions bot Feb 9, 2024
@ryfu-msft ryfu-msft requested a review from yao-msft February 9, 2024 18:49
yao-msft
yao-msft previously approved these changes Feb 13, 2024
src/WinGetYamlFuzzing/WinGetYamlFuzzing.vcxproj Outdated Show resolved Hide resolved
@ryfu-msft ryfu-msft merged commit be14d83 into microsoft:master Feb 13, 2024
8 checks passed
@ryfu-msft ryfu-msft deleted the retryFuzzing branch February 13, 2024 02:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants