Я использую Jenkins 1.424.6, так как это единственная версия, которую я могу использовать в Ubunutu 12.04 без компиляции из исходного кода; Я знаю, что это старая версия.
У меня есть задание, пытающееся построить, когда есть коммиты в тестовой ветке проекта GIT, однако они терпят неудачу с этим выводом:
Started by remote host 127.0.0.1
Fetching changes from the remote Git repository
Fetching upstream changes from git@repo:project.git
Checking out Revision 745755b40716cc220f9635db7b555af65dd283b2 (origin/test)
FATAL: hudson.tasks.Mailer$UserProperty.hasExplicitlyConfiguredAddress()Z
java.lang.NoSuchMethodError:
hudson.tasks.Mailer$UserProperty.hasExplicitlyConfiguredAddress()Z
at hudson.plugins.git.GitChangeSet.hasMail(GitChangeSet.java:300)
at hudson.plugins.git.GitChangeSet.findOrCreateUser(GitChangeSet.java:284)
at hudson.plugins.git.GitChangeSet.getAuthor(GitChangeSet.java:339)
at hudson.model.AbstractBuild.getCulprits(AbstractBuild.java:311)
at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:624)
at hudson.model.Run.run(Run.java:1400)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:175)
Некоторые шаги отладки, которые я пробовал:
- Уведомления по электронной почте настроены, и адрес электронной почты действителен.
- В глобальной конфигурации настроен SMTP и работает тестовая электронная почта.
- В плагине Git для user.email задан действительный адрес электронной почты.
- Пользователь, аутентифицируемый в хуке, имеет действующий адрес электронной почты.
- Я явно установил плагин Mailer, версия 1.6 (хотя я не уверен, зачем это могло понадобиться)
Если я соберу вручную, сборка завершится ошибкой, но на адрес уведомления будет отправлено электронное письмо, в котором говорится, что все возвращается в нормальное русло:
Started by user myuser
Fetching changes from the remote Git repository
Fetching upstream changes from git@reop:project.git
Checking out Revision 745755b40716cc220f9635db7b555af65dd283b2 (origin/test)
Sending e-mails to: [email protected]
FATAL: hudson.tasks.Mailer$UserProperty.hasExplicitlyConfiguredAddress()Z
java.lang.NoSuchMethodError: hudson.tasks.Mailer$UserProperty.hasExplicitlyConfiguredAddress()Z
at hudson.plugins.git.GitChangeSet.hasMail(GitChangeSet.java:300)
at hudson.plugins.git.GitChangeSet.findOrCreateUser(GitChangeSet.java:284)
at hudson.plugins.git.GitChangeSet.getAuthor(GitChangeSet.java:339)
at hudson.model.AbstractBuild.getCulprits(AbstractBuild.java:311)
at hudson.model.AbstractBuild.getCulprits(AbstractBuild.java:307)
at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:624)
at hudson.model.Run.run(Run.java:1400)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:175)
Последующие сборки теперь будут работать, но я не получаю электронное письмо (хотя это может быть связано с отсутствием изменений?):
Started by user myuser
Fetching changes from the remote Git repository
Fetching upstream changes from git@repo:project.git
Checking out Revision 745755b40716cc220f9635db7b555af65dd283b2 (origin/test)
Finished: SUCCESS
Следующий фактический коммит, запускающий работу, конечно, мы получаем ту же ошибку, что и первая.
Что тут происходит? Я пропустил параметр конфигурации?
Редактировать: интересно, это как-то связано с тем, что пользователь инициирует перехватчик фиксации? Я аутентифицирую пользователя, передавая https://user:[email protected]/job_url
в качестве ловушки. Это аутентификация (это было не раньше, чем я добавил это, поскольку анонимный пользователь имеет нулевые привилегии), но я все еще получаю некоторые ошибки:
2013/12/16 22:54:49 [error] 18890#0: *576 readv() failed (104: Connection reset by
peer) while reading upstream, client: IP_ADDRESS, server: myserver.com,
request: "GET /job/job_name/ HTTP/1.1", upstream:
"http://127.0.0.1:8088/job/job_name/", host: "myserver.com"
Как ни странно, электронные письма без изменений конфигурации теперь отправляются, но они ломаются сразу после отправки электронной почты, поэтому сборка по-прежнему помечается как неудачная.
Started by remote host 127.0.0.1
Fetching changes from the remote Git repository
Fetching upstream changes from git@repo:project.git
Checking out Revision 3d93bdb4225635eb45526ca831781df2ed25a22b (origin/test)
Sending e-mails to: [email protected]
FATAL: hudson.tasks.Mailer$UserProperty.hasExplicitlyConfiguredAddress()Z
java.lang.NoSuchMethodError: hudson.tasks.Mailer$UserProperty.hasExplicitlyConfiguredAddress()Z
at hudson.plugins.git.GitChangeSet.hasMail(GitChangeSet.java:300)
at hudson.plugins.git.GitChangeSet.findOrCreateUser(GitChangeSet.java:284)
at hudson.plugins.git.GitChangeSet.getAuthor(GitChangeSet.java:339)
at hudson.model.AbstractBuild.getCulprits(AbstractBuild.java:311)
at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:624)
at hudson.model.Run.run(Run.java:1400)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:175)