Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-34612

Jenkins 2.1 not registering GitHub org webhooks: "WARNING: Failed to register GitHub Org hook to ..."

    • Icon: Bug Bug
    • Resolution: Won't Fix
    • Icon: Minor Minor
    • None
    • Jenkins 2.1, github-organization-folder 1.3, github-api 1.75

      When creating a new job for a GitHub org, I'm seeing the following in the Jenkins logs:

      WARNING: Failed to register GitHub Org hook to https://github.com/karlmdavis (missing permissions?): {"message":"Not Found","documentation_url":"https://developer.github.com/v3"}
      May 04, 2016 8:03:46 PM org.jenkinsci.plugins.orgfolder.github.MainLogic applyOrg
      WARNING: Failed to register GitHub Org hook to https://github.com/HHSIDEAlab (missing permissions?): {"message":"Not Found","documentation_url":"https://developer.github.com/v3"}
      

      I did confirm that the personal access token I'm using has the admin:repo_hook permission, as well as admin:org_hook. Not sure what else to check.

      The plugin seems to work correctly aside from this: it finds projects with Jenkinsfile s and builds them when asked. Just no webhook triggers.

          [JENKINS-34612] Jenkins 2.1 not registering GitHub org webhooks: "WARNING: Failed to register GitHub Org hook to ..."

          karlmdavis created issue -
          karlmdavis made changes -
          Description Original: When creating a new job for a GitHub org, I'm seeing the following in the Jenkins logs:

          {code}
          WARNING: Failed to register GitHub Org hook to https://github.com/karlmdavis (missing permissions?): {"message":"Not Found","documentation_url":"https://developer.github.com/v3"}
          May 04, 2016 8:03:46 PM org.jenkinsci.plugins.orgfolder.github.MainLogic applyOrg
          WARNING: Failed to register GitHub Org hook to https://github.com/HHSIDEAlab (missing permissions?): {"message":"Not Found","documentation_url":"https://developer.github.com/v3"}
          {code}

          I did confirm that the personal access token I'm using has the {{admin:repo_hook}} permission, as well as {{admin:org_hook}}. Not sure what else to check.

          The plugin seems to work correctly aside from this: it finds projects with {{Jenkinsfile}}s and builds them when asked. Just no webhook triggers.
          New: When creating a new job for a GitHub org, I'm seeing the following in the Jenkins logs:

          {code}
          WARNING: Failed to register GitHub Org hook to https://github.com/karlmdavis (missing permissions?): {"message":"Not Found","documentation_url":"https://developer.github.com/v3"}
          May 04, 2016 8:03:46 PM org.jenkinsci.plugins.orgfolder.github.MainLogic applyOrg
          WARNING: Failed to register GitHub Org hook to https://github.com/HHSIDEAlab (missing permissions?): {"message":"Not Found","documentation_url":"https://developer.github.com/v3"}
          {code}

          I did confirm that the personal access token I'm using has the {{admin:repo_hook}} permission, as well as {{admin:org_hook}}. Not sure what else to check.

          The plugin seems to work correctly aside from this: it finds projects with {{Jenkinsfile}} s and builds them when asked. Just no webhook triggers.

          karlmdavis added a comment -

          Blargh, I just figured out what the problem was. Hat tip to this fine fellow for the clue I needed: https://github.com/juretta/hudson-github-plugin/issues/4#issuecomment-56458604. The bug is actually a case-sensitivity issue.

          The log entries I included in my issue description were a red herring: a webhook was automatically created (I just missed it), and was being fired from GitHub as expected, and was even being received by Jenkins. Unfortunately, though, Jenkins was ignoring the hook events, because my organization name in Jenkins was cased as HHSIDEALab, rather than as HHSIDEAlab (which is how it's cased in GitHub and in the hook events).

          Hilariously, this blew a whole day for me. I know it's a super minor problem in the grand scheme of things, but if you folks could fix the issue, or at least add a useful error/warning in the logs, that'd be super helpful to "future me"s.

          karlmdavis added a comment - Blargh, I just figured out what the problem was. Hat tip to this fine fellow for the clue I needed: https://github.com/juretta/hudson-github-plugin/issues/4#issuecomment-56458604 . The bug is actually a case-sensitivity issue. The log entries I included in my issue description were a red herring: a webhook was automatically created (I just missed it), and was being fired from GitHub as expected, and was even being received by Jenkins. Unfortunately, though, Jenkins was ignoring the hook events, because my organization name in Jenkins was cased as HHSIDEALab , rather than as HHSIDEAlab (which is how it's cased in GitHub and in the hook events). Hilariously, this blew a whole day for me. I know it's a super minor problem in the grand scheme of things, but if you folks could fix the issue, or at least add a useful error/warning in the logs, that'd be super helpful to "future me"s.

          Simon So added a comment -

          Unbelievable. Thank you karlmdavis! Cost me probably a day as well, could have been worse!

          Simon So added a comment - Unbelievable. Thank you karlmdavis ! Cost me probably a day as well, could have been worse!

          Sorin Sbarnea added a comment -

          In my case, it was not that. It seems that the only way to avoid this error is to add the Jenkins user as an organisation owner. Being an admin is not enough, it has to be an owner, which is really worrying as an owner can wipe the entire organisation with two clicks.

          Sorin Sbarnea added a comment - In my case, it was not that. It seems that the only way to avoid this error is to add the Jenkins user as an organisation owner. Being an admin is not enough, it has to be an owner, which is really worrying as an owner can wipe the entire organisation with two clicks.

          Sorin Sbarnea added a comment - - edited

          I really doubt this is about case-sensitivity here because I get the same message even if the organization name and full-name do match on both Jenkins job and GitHub. Both strings are identical, same case, no special characters or prefix or suffix spaces.

          Failed to register GitHub Org hook to https://github.com/bmlltest (missing permissions?): {"message":"Not Found","documentation_url":"https://developer.github.com/v3"}
          

          Sorin Sbarnea added a comment - - edited I really doubt this is about case-sensitivity here because I get the same message even if the organization name and full-name do match on both Jenkins job and GitHub. Both strings are identical, same case, no special characters or prefix or suffix spaces. Failed to register GitHub Org hook to https: //github.com/bmlltest (missing permissions?): { "message" : "Not Found" , "documentation_url" : "https://developer.github.com/v3" }
          R. Tyler Croy made changes -
          Workflow Original: JNJira [ 170774 ] New: JNJira + In-Review [ 184037 ]

          Ying Bian added a comment -

          Same issue here. And I believe it is not case-sensitivity issue in my case.

          Ying Bian added a comment - Same issue here. And I believe it is not case-sensitivity issue in my case.

          Giovanni Tirloni added a comment - - edited

          Same issue encountered on the following environment:

          Jenkins 2.16
          GitHub API Plugin 1.76
          GitHub Branch Source Plugin 1.8.1
          GitHub Organization Folder Plugin 1.4
          GitHub plugin 1.20.0
          Pipeline 2.2

          Steps to reproduce:

          1 - New Item
          2 - Enter GitHub organization name
          3 - Select "GitHub organization"
          4 - Click OK

          Stack trace:

          Aug 04, 2016 8:14:26 PM WARNING org.jenkinsci.plugins.orgfolder.github.MainLogic applyOrg
          Failed to register GitHub Org hook to https://github.com/crash-test-dummies (missing permissions?): {"message":"Not Found","documentation_url":"https://developer.github.com/v3"}
          Aug 04, 2016 8:14:26 PM FINE org.jenkinsci.plugins.orgfolder.github.MainLogic
          null
          java.io.FileNotFoundException: {"message":"Not Found","documentation_url":"https://developer.github.com/v3"}
          	at org.kohsuke.github.Requester.handleApiError(Requester.java:553)
          	at org.kohsuke.github.Requester._to(Requester.java:264)
          	at org.kohsuke.github.Requester.to(Requester.java:205)
          	at org.kohsuke.github.GHHooks$Context.getHooks(GHHooks.java:25)
          	at org.kohsuke.github.GHOrganization.getHooks(GHOrganization.java:276)
          	at org.jenkinsci.plugins.orgfolder.github.MainLogic.existsHook(MainLogic.java:198)
          	at org.jenkinsci.plugins.orgfolder.github.MainLogic.applyOrg(MainLogic.java:89)
          	at org.jenkinsci.plugins.orgfolder.github.ItemListenerImpl.maybeApply(ItemListenerImpl.java:41)
          	at org.jenkinsci.plugins.orgfolder.github.ItemListenerImpl.onUpdated(ItemListenerImpl.java:29)
          	at hudson.model.listeners.ItemListener$3.apply(ItemListener.java:195)
          	at hudson.model.listeners.ItemListener$3.apply(ItemListener.java:193)
          	at hudson.model.listeners.ItemListener.forAll(ItemListener.java:167)
          	at hudson.model.listeners.ItemListener.fireOnUpdated(ItemListener.java:193)
          	at com.cloudbees.hudson.plugins.folder.AbstractFolder.save(AbstractFolder.java:667)
          	at hudson.util.PersistedList.onModified(PersistedList.java:173)
          	at hudson.util.PersistedList._onModified(PersistedList.java:181)
          	at hudson.util.PersistedList.add(PersistedList.java:72)
          	at jenkins.branch.CustomOrganizationFolderDescriptor.newInstance(CustomOrganizationFolderDescriptor.java:109)
          	at hudson.model.ItemGroupMixIn.createProject(ItemGroupMixIn.java:323)
          	at hudson.model.ItemGroupMixIn.createTopLevelItem(ItemGroupMixIn.java:203)
          	at jenkins.model.Jenkins.doCreateItem(Jenkins.java:3669)
          	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
          	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
          	at java.lang.reflect.Method.invoke(Method.java:498)
          	at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:324)
          	at org.kohsuke.stapler.interceptor.RequirePOST$Processor.invoke(RequirePOST.java:52)
          	at org.kohsuke.stapler.PreInvokeInterceptedFunction.invoke(PreInvokeInterceptedFunction.java:26)
          	at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:167)
          	at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:100)
          	at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:124)
          	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
          	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
          	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
          	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:649)
          	at org.kohsuke.stapler.Stapler.service(Stapler.java:238)
          	at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
          	at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669)
          	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:135)
          	at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:126)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
          	at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:80)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
          	at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at jenkins.security.BasicHeaderProcessor.doFilter(BasicHeaderProcessor.java:93)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
          	at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
          	at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:171)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
          	at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:49)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
          	at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:82)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
          	at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
          	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
          	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
          	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:553)
          	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
          	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
          	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
          	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
          	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
          	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
          	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
          	at org.eclipse.jetty.server.Server.handle(Server.java:499)
          	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)
          	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
          	at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)
          	at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
          	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
          	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
          	at java.lang.Thread.run(Thread.java:745)
          Caused by: java.io.FileNotFoundException: https://api.github.com/orgs/crash-test-dummies/hooks
          	at com.squareup.okhttp.internal.huc.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:240)
          	at com.squareup.okhttp.internal.huc.DelegatingHttpsURLConnection.getInputStream(DelegatingHttpsURLConnection.java:210)
          	at com.squareup.okhttp.internal.huc.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:25)
          	at org.kohsuke.github.Requester.parse(Requester.java:492)
          	at org.kohsuke.github.Requester._to(Requester.java:243)
          	... 85 more
          

          Giovanni Tirloni added a comment - - edited Same issue encountered on the following environment: Jenkins 2.16 GitHub API Plugin 1.76 GitHub Branch Source Plugin 1.8.1 GitHub Organization Folder Plugin 1.4 GitHub plugin 1.20.0 Pipeline 2.2 Steps to reproduce: 1 - New Item 2 - Enter GitHub organization name 3 - Select "GitHub organization" 4 - Click OK Stack trace: Aug 04, 2016 8:14:26 PM WARNING org.jenkinsci.plugins.orgfolder.github.MainLogic applyOrg Failed to register GitHub Org hook to https://github.com/crash-test-dummies (missing permissions?): {"message":"Not Found","documentation_url":"https://developer.github.com/v3"} Aug 04, 2016 8:14:26 PM FINE org.jenkinsci.plugins.orgfolder.github.MainLogic null java.io.FileNotFoundException: {"message":"Not Found","documentation_url":"https://developer.github.com/v3"} at org.kohsuke.github.Requester.handleApiError(Requester.java:553) at org.kohsuke.github.Requester._to(Requester.java:264) at org.kohsuke.github.Requester.to(Requester.java:205) at org.kohsuke.github.GHHooks$Context.getHooks(GHHooks.java:25) at org.kohsuke.github.GHOrganization.getHooks(GHOrganization.java:276) at org.jenkinsci.plugins.orgfolder.github.MainLogic.existsHook(MainLogic.java:198) at org.jenkinsci.plugins.orgfolder.github.MainLogic.applyOrg(MainLogic.java:89) at org.jenkinsci.plugins.orgfolder.github.ItemListenerImpl.maybeApply(ItemListenerImpl.java:41) at org.jenkinsci.plugins.orgfolder.github.ItemListenerImpl.onUpdated(ItemListenerImpl.java:29) at hudson.model.listeners.ItemListener$3.apply(ItemListener.java:195) at hudson.model.listeners.ItemListener$3.apply(ItemListener.java:193) at hudson.model.listeners.ItemListener.forAll(ItemListener.java:167) at hudson.model.listeners.ItemListener.fireOnUpdated(ItemListener.java:193) at com.cloudbees.hudson.plugins.folder.AbstractFolder.save(AbstractFolder.java:667) at hudson.util.PersistedList.onModified(PersistedList.java:173) at hudson.util.PersistedList._onModified(PersistedList.java:181) at hudson.util.PersistedList.add(PersistedList.java:72) at jenkins.branch.CustomOrganizationFolderDescriptor.newInstance(CustomOrganizationFolderDescriptor.java:109) at hudson.model.ItemGroupMixIn.createProject(ItemGroupMixIn.java:323) at hudson.model.ItemGroupMixIn.createTopLevelItem(ItemGroupMixIn.java:203) at jenkins.model.Jenkins.doCreateItem(Jenkins.java:3669) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:324) at org.kohsuke.stapler.interceptor.RequirePOST$Processor.invoke(RequirePOST.java:52) at org.kohsuke.stapler.PreInvokeInterceptedFunction.invoke(PreInvokeInterceptedFunction.java:26) at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:167) at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:100) at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:124) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:649) at org.kohsuke.stapler.Stapler.service(Stapler.java:238) at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:135) at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:126) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:80) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84) at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at jenkins.security.BasicHeaderProcessor.doFilter(BasicHeaderProcessor.java:93) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249) at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76) at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:171) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:49) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:82) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:553) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) at org.eclipse.jetty.server.Server.handle(Server.java:499) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544) at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) Caused by: java.io.FileNotFoundException: https://api.github.com/orgs/crash-test-dummies/hooks at com.squareup.okhttp.internal.huc.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:240) at com.squareup.okhttp.internal.huc.DelegatingHttpsURLConnection.getInputStream(DelegatingHttpsURLConnection.java:210) at com.squareup.okhttp.internal.huc.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:25) at org.kohsuke.github.Requester.parse(Requester.java:492) at org.kohsuke.github.Requester._to(Requester.java:243) ... 85 more

          Giovanni Tirloni added a comment - - edited

          I can confirm that once user is made owner of the GH organization, then even with the initial errors (due to unauthenticated requests), the Webhook is properly added if the proper credential is specified when adding the new item.

          Giovanni Tirloni added a comment - - edited I can confirm that once user is made owner of the GH organization, then even with the initial errors (due to unauthenticated requests), the Webhook is properly added if the proper credential is specified when adding the new item.

            kohsuke Kohsuke Kawaguchi
            karlmdavis karlmdavis
            Votes:
            2 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated:
              Resolved: