- Notifications
You must be signed in to change notification settings - Fork2.7k
Handle Actions Cancel Workflow Run returning a 202#855
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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Uh oh!
There was an error while loading.Please reload this page.
Conversation
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.
Pull Request Overview
This PR fixes an issue where the GitHub Actions cancel workflow run command incorrectly treats a 202 Accepted response as an error. The GitHub API returns a 202 status code on successful cancellation, but the go-github library wraps this as an AcceptedError which was being handled as a failure.
- Handle
github.AcceptedError
as a success case instead of an error - Add test coverage for both successful cancellation (202) and conflict scenarios (409)
- Update test assertion to use
Contains
for more flexible error message matching
Reviewed Changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
File | Description |
---|---|
pkg/github/actions.go | Add error type checking to handle AcceptedError as success |
pkg/github/actions_test.go | Add comprehensive test cases and improve mock response handling |
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
842003a
intomainUh oh!
There was an error while loading.Please reload this page.
Actions Cancel Workflow Run returns a 202 on success. Check for a `*github.AcceptedError` in response to the API call to handle this correctly.
Actions Cancel Workflow Run returns a 202 on success, but this is returned as an error in
google/go-github
. We need to check if the error is a*github.AcceptedError
, and only if not respond that this failed.