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

Return 200 even if non-action webhook is come #1197

Merged
merged 1 commit into from
Sep 13, 2015

Conversation

dtan4
Copy link

@dtan4 dtan4 commented Sep 11, 2015

When Drone receives Github ping webhook, it returns 502 and webhook is failed because of reference to nil object. This should not be expected behavior I think.

In this PR I modified the code to return 200 OK to make webhook success.

Error message

Sep 11 17:15:12 core-01 docker[1655]: 2015/09/11 08:15:12 http: panic serving 172.17.8.1:58845: runtime error: invalid memory address or nil pointer dereference
Sep 11 17:15:12 core-01 docker[1655]: goroutine 148 [running]:
Sep 11 17:15:12 core-01 docker[1655]: net/http.func·011()
Sep 11 17:15:12 core-01 docker[1655]: /usr/local/go/src/pkg/net/http/server.go:1100 +0xb7
Sep 11 17:15:12 core-01 docker[1655]: runtime.panic(0xb42de0, 0x11b98d3)
Sep 11 17:15:12 core-01 docker[1655]: /usr/local/go/src/pkg/runtime/panic.c:248 +0x18d
Sep 11 17:15:12 core-01 docker[1655]: github.com/drone/drone/server/handler.PostHook(0xc2089804b0, 0xc2089803f0, 0x7f850aec79f8, 0xc20872a1e0, 0xc2081c11e0)
Sep 11 17:15:12 core-01 docker[1655]: /var/cache/drone/src/github.com/drone/drone/server/handler/hook.go:46 +0xfdb
Sep 11 17:15:12 core-01 docker[1655]: github.com/zenazn/goji/web.handlerFuncWrap.ServeHTTPC(0xd5d430, 0xc2089804b0, 0xc2089803f0, 0x7f850aec79f8, 0xc20872a1e0, 0xc2081c11e0)
Sep 11 17:15:12 core-01 docker[1655]: /var/cache/drone/src/github.com/zenazn/goji/web/handler.go:25 +0x54
Sep 11 17:15:12 core-01 docker[1655]: github.com/zenazn/goji/web.(*router).route(0xc2080271b8, 0xc2081bbd70, 0x7f850aec79f8, 0xc20872a1e0, 0xc2081c11e0)
Sep 11 17:15:12 core-01 docker[1655]: /var/cache/drone/src/github.com/zenazn/goji/web/router.go:119 +0x143
Sep 11 17:15:12 core-01 docker[1655]: github.com/zenazn/goji/web.func·002(0x7f850aec79f8, 0xc20872a1e0, 0xc2081c11e0)
Sep 11 17:15:12 core-01 docker[1655]: /var/cache/drone/src/github.com/zenazn/goji/web/middleware.go:88 +0x5f
Sep 11 17:15:12 core-01 docker[1655]: net/http.HandlerFunc.ServeHTTP(0xc2081a5460, 0x7f850aec79f8, 0xc20872a1e0, 0xc2081c11e0)
Sep 11 17:15:12 core-01 docker[1655]: /usr/local/go/src/pkg/net/http/server.go:1235 +0x40
Sep 11 17:15:12 core-01 docker[1655]: github.com/drone/drone/server/middleware.func·006(0x7f850aec79f8, 0xc20872a1e0, 0xc2081c11e0)
Sep 11 17:15:12 core-01 docker[1655]: /var/cache/drone/src/github.com/drone/drone/server/middleware/user.go:21 +0x1a6
Sep 11 17:15:12 core-01 docker[1655]: net/http.HandlerFunc.ServeHTTP(0xc2081a5480, 0x7f850aec79f8, 0xc20872a1e0, 0xc2081c11e0)
Sep 11 17:15:12 core-01 docker[1655]: /usr/local/go/src/pkg/net/http/server.go:1235 +0x40
Sep 11 17:15:12 core-01 docker[1655]: github.com/drone/drone/server/middleware.func·001(0x7f850aec79f8, 0xc20872a1e0, 0xc2081c11e0)
Sep 11 17:15:12 core-01 docker[1655]: /var/cache/drone/src/github.com/drone/drone/server/middleware/header.go:28 +0x4e9
Sep 11 17:15:12 core-01 docker[1655]: net/http.HandlerFunc.ServeHTTP(0xc20811fe20, 0x7f850aec79f8, 0xc20872a1e0, 0xc2081c11e0)
Sep 11 17:15:12 core-01 docker[1655]: /usr/local/go/src/pkg/net/http/server.go:1235 +0x40
Sep 11 17:15:12 core-01 docker[1655]: main.func·002(0x7f850aec79f8, 0xc20872a1e0, 0xc2081c11e0)
Sep 11 17:15:12 core-01 docker[1655]: /var/cache/drone/src/github.com/drone/drone/server/main.go:176 +0x721
Sep 11 17:15:12 core-01 docker[1655]: net/http.HandlerFunc.ServeHTTP(0xc2081a54a0, 0x7f850aec79f8, 0xc20872a1e0, 0xc2081c11e0)
Sep 11 17:15:12 core-01 docker[1655]: /usr/local/go/src/pkg/net/http/server.go:1235 +0x40
Sep 11 17:15:12 core-01 docker[1655]: github.com/drone/drone/server/middleware.func·002(0x7f850aec79f8, 0xc20872a1e0, 0xc2081c11e0)
Sep 11 17:15:12 core-01 docker[1655]: /var/cache/drone/src/github.com/drone/drone/server/middleware/options.go:22 +0x261
Sep 11 17:15:12 core-01 docker[1655]: net/http.HandlerFunc.ServeHTTP(0xc20811fe50, 0x7f850aec79f8, 0xc20872a1e0, 0xc2081c11e0)
Sep 11 17:15:12 core-01 docker[1655]: /usr/local/go/src/pkg/net/http/server.go:1235 +0x40
Sep 11 17:15:12 core-01 docker[1655]: github.com/zenazn/goji/web.(*cStack).ServeHTTP(0xc2081bbd70, 0x7f850aec79f8, 0xc20872a1e0, 0xc2081c11e0)
Sep 11 17:15:12 core-01 docker[1655]: /var/cache/drone/src/github.com/zenazn/goji/web/middleware.go:46 +0x7f
Sep 11 17:15:12 core-01 docker[1655]: github.com/zenazn/goji/web.(*Mux).ServeHTTP(0xc208027180, 0x7f850aec79f8, 0xc20872a1e0, 0xc2081c11e0)
Sep 11 17:15:12 core-01 docker[1655]: /var/cache/drone/src/github.com/zenazn/goji/web/mux.go:45 +0x5f
Sep 11 17:15:12 core-01 docker[1655]: net/http.(*ServeMux).ServeHTTP(0xc208020930, 0x7f850aec79f8, 0xc20872a1e0, 0xc2081c11e0)
Sep 11 17:15:12 core-01 docker[1655]: /usr/local/go/src/pkg/net/http/server.go:1511 +0x1a3
Sep 11 17:15:12 core-01 docker[1655]: net/http.serverHandler.ServeHTTP(0xc208005c80, 0x7f850aec79f8, 0xc20872a1e0, 0xc2081c11e0)
Sep 11 17:15:12 core-01 docker[1655]: /usr/local/go/src/pkg/net/http/server.go:1673 +0x19f
Sep 11 17:15:12 core-01 docker[1655]: net/http.(*conn).serve(0xc208974280)
Sep 11 17:15:12 core-01 docker[1655]: /usr/local/go/src/pkg/net/http/server.go:1174 +0xa7e
Sep 11 17:15:12 core-01 docker[1655]: created by net/http.(*Server).Serve
Sep 11 17:15:12 core-01 docker[1655]: /usr/local/go/src/pkg/net/http/server.go:1721 +0x313

Ping Webhook fails

webhook_-_http___eeceb0c8_ngrok_io_api_hook_github_com_b0otnhbapydw1yqj6inrlvw5pepvioyyuriu7isx

@bradrydzewski
Copy link

awesome, thanks!

bradrydzewski added a commit that referenced this pull request Sep 13, 2015
Return 200 even if non-action webhook is come
@bradrydzewski bradrydzewski merged commit 5d858ec into harness:master Sep 13, 2015
@dtan4 dtan4 deleted the nil-webhook-200 branch September 13, 2015 19:04
bot2-harness pushed a commit that referenced this pull request Apr 10, 2024
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.

None yet

2 participants