Я установил github webhook, а также установил журналы для плагина github в jenkins. Похоже, что Дженкинс получает правильную полезную нагрузку на веб-перехватчике. Однако в журнале написано, что github webhook рассматривал возможность совать мою работу, а затем после этого пропускается, потому что не нашел подходящего репозитория.
Я использую jenkins 2.1 и недавно перешел на 2.5
Received POST for https://github.com/<org_name>/<repo_name>
May 20, 2016 3:17:49 PM FINE org.jenkinsci.plugins.github.webhook.subscriber.DefaultPushGHEventSubscriber$1 run
Considering to poke echo_pipeline
May 20, 2016 3:17:49 PM FINE org.jenkinsci.plugins.github.webhook.subscriber.DefaultPushGHEventSubscriber$1 run
Skipped echo_pipeline because it doesn't have a matching repository.
Я добавил этот репозиторий в конфигурацию задания для конвейера, и я также клонирую этот репозиторий в конвейере. Где еще мне нужно настроить репозиторий, чтобы веб-перехватчик это учел и не пропускал
Я знаю, что это старая ветка, но для тех, кто попадает сюда:
1) Ваше задание должно быть выполнено хотя бы один раз вручную, прежде чем ловушка заработает.
2) Репозиторий, отправленный на Jenkins, URL-адрес проекта GitHub в конфигурации проекта и репо (а) в вашем конвейере Job должны быть выровнены.
3) Вам понадобится регистратор журналов в Jenkins, чтобы увидеть, что отправляет GitHub: https://support.cloudbees.com/hc/en-us/articles/204880580-How-do-I-create-a-logger-in-Jenkins-for-troubleshooting-and-diagnostic-information-
Я покопался в коде Дженкинса (https://github.com/jenkinsci/github-plugin/blob/master/src/main/java/org/jenkinsci/plugins/github/webhook/subscriber/DefaultPushGHEventSubscriber.java#L88-L107), чтобы выяснить, что не соответствует. Вы можете увидеть, что он ожидает в конвейере, перейдя в консоль сценария экземпляра Jenkins (/ script) и выполнив это:
import com.cloudbees.jenkins.GitHubRepositoryNameContributor;
for (Item job : Jenkins.getInstance().getAllItems(Item.class)) {
print(GitHubRepositoryNameContributor.parseAssociatedNames(job))
}
Это будет проходить через все ваши задания и выводить значения для репозиториев, по которым он проверяет.