Open krainboltgreene opened 5 years ago
In reality the http status should be 424 and the message should be "respository does not have a drone configuration file".
I think I need some context with this issue. The original discourse thread was not very clear
ah ok, is this issue a suggestion to change the response code to 424 when the yaml does not exist? sorry, I did not understand at first.
Well, if I get only one change in it's that the HTTP Body contains information that is very misleading and should reflect the actual issue.
But while I'm here I suggest that the status code could be more semantically correct than 500 by using 424.
To replicate this by the way setup a drone ci, activate a project with out a configuration file, make a commit.
The 'Not Found' error message is coming from GitHub, not from Drone. This is one of many error messages that could be returned from GitHub, so returning a 424 may not always be accurate. We also integrate with Gogs, Gitea, Bitbucket, Gitlab which may use different text to indicate the file does not exist. Perhaps we could try to translate the various error payloads from the different systems to abstract the errors and provide more meaningful responses.
I am going to send this over to go-scm where we handle the abstractions.
See also: https://discourse.drone.io/t/status-500-issue-at-cloud-drone-io-for-push-webhooks-on-github/3266
Here's the logs: