Nano Hash - криптовалюты, майнинг, программирование

Проблема с удаленной сборкой Jenkins - связана с электронной почтой

Я использую 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)
16.12.2013

  • Я с той же проблемой. Глядя на это, кажется, что это конфликт версий jenkins с плагином git. Плагин git пытается получить доступ к методу, который был удален из jenkins. Я все еще ищу простое решение для этого. 07.01.2014

Ответы:


1

Я «исправил» это, удалив Jenkins:

apt-get --purge remove jenkins

Затем я добавил текущий двоичный файл jenkins в /etc/apt/sources.list

deb http://pkg.jenkins-ci.org/debian binary/

После обычного apt-get update я сделал apt-get install jenkins и получил 1,5 что-то или другое, очистка не удалила домашний каталог jenkins, поэтому мои задания все еще были там, хотя через пользовательский интерфейс Jenkin мне пришлось обновить некоторые плагины.

Теперь я могу использовать плагин gitlab, так как у меня гораздо более новая версия Jenkins, и проблемы с электронной почтой исчезли.

07.01.2014
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..