-
-
Notifications
You must be signed in to change notification settings - Fork 368
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
[BUG] Danger succeeds despite receiving a 403 error from GitHub API and having --failOnErrors
flag set
#1441
Comments
I get this one multiple time too, after a few debugs, I noticed the 403 isn't from Danger itself but Github and it won't impact the Danger JS result If you are running with the CI option (--ci), you will notice there is a Danger service running in your CI so you have your Github Workflow (This one gets 403) and Danger will launch a service which is the one that evaluates the result to post the messages With failOnErrors you tell to the Danger Server to fail if there is a log of Danger Error messages |
Thanks for commenting, @eppisapiafsl. It's true that the 403 is coming from GitHub's API. However, isn't Danger the one initiating this API call? Therefore, I would expect Danger to surface that error to the user, since some of its functionality with a third party dependency is failing (i.e. the GitHub API). Instead, Danger is simply logging the failure and leaving it to the user to parse through "successful" log output to try to figure out why Danger didn't do what was expected. In this case, it's failing to create a comment on the PR, which is one of the main benefits of integrating Danger into a project. Maybe the
|
This comment was marked as outdated.
This comment was marked as outdated.
Rereading the log file, actually this case should be covered under the Specifically this message:
We have to have some way to know to early exit if the DangerFile couldn’t prepare connect to github — might need to be a runtime value. The reason is that people might use DangerJS without wanting to post to GitHub — you might only care about the exit code at the end, and the messages could go into the logs. |
So after further there thought, perhaps something like if (!danger.github.hasCommentPermission) {
error(“DangerJS cannot comment. Check for Token Expiration?”)
} |
Describe the bug
I'm working to integrate Danger into the GitHub Actions CI one of my open source repos (see this PR). I know I don't have my GitHub PAT set quite right, but the Danger step is still succeeding despite receiving a
403
response and having the--failOnErrors
flag set. See the following output of the Danger step in my workflow:See screenshot below showing overall success of the workflow run despite Danger receiving the
403
error and failing to post the message to the PR.To Reproduce
Steps to reproduce the behavior:
dangerfile.js
to the repo (see mine below).package.json
that will run Danger.failOnErrors
flag set.403
error is triggered.DANGER_GITHUB_API_TOKEN
repository secret for GitHub Actions with the value of the GitHub PAT.403
error occurred and no message being posted to the PR by Danger.Expected behavior
Danger should fail since it received a
403
error and wasn't able to post the message to the PR successful, which should ultimately result in my workflow run failing.Screenshots
Your Environment
Additional context
For reference, here is the super basic
dangerfile.js
that I created based on the Danger "Getting Started" documentation:And here is what my CI step looks like that runs Danger:
My main concern here is that I plan to setup my GitHub PAT to expire after 1 year, at which point it would be nice for my CI builds to start failing at the "Danger" step so that I can be reminded to go back and regenerate my PAT. As it stands now, the step will silently fail which will negate any value provided by having Danger setup in the first place.
The text was updated successfully, but these errors were encountered: