diff --git a/src/main/java/org/jenkinsci/plugins/github/webhook/subscriber/DefaultPushGHEventSubscriber.java b/src/main/java/org/jenkinsci/plugins/github/webhook/subscriber/DefaultPushGHEventSubscriber.java index 7568af0e9..95180fddb 100644 --- a/src/main/java/org/jenkinsci/plugins/github/webhook/subscriber/DefaultPushGHEventSubscriber.java +++ b/src/main/java/org/jenkinsci/plugins/github/webhook/subscriber/DefaultPushGHEventSubscriber.java @@ -73,25 +73,10 @@ protected void onEvent(final GHSubscriberEvent event) { LOGGER.warn("Received malformed PushEvent: " + event.getPayload(), e); return; } - URL repoUrl = push.getRepository().getUrl(); + URL htmlUrl = push.getRepository().getHtmlUrl(); final String pusherName = push.getPusher().getName(); - LOGGER.info("Received PushEvent for {} from {}", repoUrl, event.getOrigin()); - GitHubRepositoryName fromEventRepository = GitHubRepositoryName.create(repoUrl.toExternalForm()); - - if (fromEventRepository == null) { - // On push event on github.com url === html_url - // this is not consistent with the API docs and with hosted repositories - // see https://goo.gl/c1qmY7 - // let's retry with 'html_url' - URL htmlUrl = push.getRepository().getHtmlUrl(); - fromEventRepository = GitHubRepositoryName.create(htmlUrl.toExternalForm()); - if (fromEventRepository != null) { - LOGGER.debug("PushEvent handling: 'html_url' field " - + "has been used to retrieve project information (instead of default 'url' field)"); - } - } - - final GitHubRepositoryName changedRepository = fromEventRepository; + LOGGER.info("Received PushEvent for {} from {}", htmlUrl, event.getOrigin()); + final GitHubRepositoryName changedRepository = GitHubRepositoryName.create(htmlUrl.toExternalForm()); if (changedRepository != null) { // run in high privilege to see all the projects anonymous users don't see. @@ -128,7 +113,7 @@ public void run() { } } else { - LOGGER.warn("Malformed repo url {}", repoUrl); + LOGGER.warn("Malformed repo html url {}", htmlUrl); } } } diff --git a/src/test/resources/com/cloudbees/jenkins/GitHubWebHookFullTest/payloads/push.json b/src/test/resources/com/cloudbees/jenkins/GitHubWebHookFullTest/payloads/push.json index 0d006823d..203839f23 100644 --- a/src/test/resources/com/cloudbees/jenkins/GitHubWebHookFullTest/payloads/push.json +++ b/src/test/resources/com/cloudbees/jenkins/GitHubWebHookFullTest/payloads/push.json @@ -65,7 +65,7 @@ "html_url": "https://github.com/lanwen/test", "description": "Personal blog", "fork": false, - "url": "https://github.com/lanwen/test", + "url": "https://api.github.com/lanwen/test", "forks_url": "https://api.github.com/repos/lanwen/test/forks", "keys_url": "https://api.github.com/repos/lanwen/test/keys{/key_id}", "collaborators_url": "https://api.github.com/repos/lanwen/test/collaborators{/collaborator}",