-
Notifications
You must be signed in to change notification settings - Fork 143
Add automatic issue creation for scheduled fuzzing job failures with area/fuzzing label filtering #823
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
@copilot address feedback |
I've addressed the feedback by reverting to the inline approach where fuzzing steps are directly in Fuzzing.yml and the notification runs as an additional step (not a separate job) only on failure. The script includes --repo parameter support for testing as requested. |
deed6c7
to
e29625c
Compare
I tested running the script against my fork jsturtevant#3 closed https://github.com/jsturtevant/hyperlight-1/issues?q=is%3Aissue%20state%3Aclosed |
b5856cc
to
f3bac73
Compare
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.
kind/fuzzing
-> area/fuzzing
@copilot look at the feedback |
- Created dev/notify-fuzzing-failure.sh script to handle GitHub issue creation/updates - Modified Fuzzing.yml and dep_fuzzing.yml workflows to add failure notifications - Added proper permissions for issue creation and comments - Script checks for existing open fuzzing failure issues and either creates new ones or adds comments - Includes robust error handling and test mode for validation Co-authored-by: jsturtevant <[email protected]>
… workflow - Removed notification step and issues permission from dep_fuzzing.yml (reusable workflow) - Added separate notify-failure job to Fuzzing.yml (scheduled workflow) - This ensures issues are only created for scheduled cron job failures, not PR runs Co-authored-by: jsturtevant <[email protected]>
- Added --repo "$REPO" to gh issue comment command (line 103) - Added --repo "$REPO" to gh issue create command (line 148) - This enables testing against specific repositories by setting the REPO variable Co-authored-by: jsturtevant <[email protected]>
Signed-off-by: James Sturtevant <[email protected]>
Co-authored-by: jsturtevant <[email protected]>
Co-authored-by: jsturtevant <[email protected]>
Co-authored-by: jsturtevant <[email protected]>
c49cab9
to
1583008
Compare
fixes: #181
This PR implements automatic GitHub issue creation and management for fuzzing job failures in scheduled workflows. When fuzzing jobs fail during the weekly scheduled runs, the system automatically creates new issues or adds comments to existing ones with proper error handling and repository-standard labeling.
Key Features
area/fuzzing
label for precise issue identification instead of title pattern matchingarea/testing
,kind/bug
,area/fuzzing
,lifecycle/needs-review
)--repo
parameter for testing against different repositoriesImplementation
The notification system is implemented as an additional step in the main fuzzing job that runs only on failure (
if: failure()
). All fuzzing steps from the reusable workflow have been inlined directly intoFuzzing.yml
to ensure the notification only triggers for scheduled runs, maintaining the matrix strategy for different fuzzing targets (fuzz_host_print
,fuzz_guest_call
,fuzz_host_call
).The script searches for existing open issues with the
area/fuzzing
label and either adds a comment to the most recent one or creates a new issue with comprehensive details including workflow run links and next steps for investigation. The label-based filtering approach eliminates pagination concerns and ensures reliable issue management by using precise label queries instead of title pattern matching.💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.