Дженкинс CI (Хадсон) - как интерактивно получать доступ к рабочим местам? - PullRequest
3 голосов
/ 15 апреля 2011

Хя,

Я пытаюсь правильно настроить проект в Jenkins.

Я хочу использовать распараллеливание заданий для использования другой машины для вычисления некоторых вычислений.

Мой сценарий состоит из трех частей: A - один сценарий с параметром.Этот параметр большой файл.Скрипт подсчитает, сколько маленьких заданий по вычислениям мне нужно запустить.Б - переменное число маленьких и параллельных заданий.Это те же самые задания, которые я запускаю на разных маленьких файлах.C - последнее задание, которое должно ждать завершения всех небольших заданий (часть 2).

Проблема в том, что я хочу отслеживать прогресс.

Моя идея состояла в том, чтобы использовать плагин объединениядля третьей части.Но у меня есть некоторые проблемы, чтобы запустить переменное количество заданий в нисходящем направлении для части 2 .... (так что я могу контролировать их с помощью плагина для нисходящего потока для конвейера)

есть ли у вас какие-либо идеи, как я мог это сделать?

для запуска переменного числа одной и той же работы во второй части, я думал о вызове jenkins api в моем сценарии A. Есть ли способ уведомить родительский проект, когда вы вызываете api, чтобы в родительскомВы увидите все рабочие места вниз по течению, вызываемые через API?

1 Ответ

1 голос
/ 15 апреля 2011

Я извиняюсь, что это не прямой ответ на ваш вопрос, но я не уверен, что Дженкинс хорошо настроен для управления переменным распределением заданий, которые вы описываете.Однако есть и другие инструменты, которые могут быть полезны.

  • Я использовал параллельный как для выполнения простых пакетных операций, так и для автоматизации операций анализа множества файлов на нескольких машинах.
  • В этом вопросе ServerFault содержится множество ссылок на инструменты *1009* о том, как распределить одну и ту же команду на несколько компьютеров.

Я вижу, как будет выглядеть Дженкинсполезно, если для каждого из заданий в B требуются стандартные этапы проверки, сборки, архивирования.Но если задания в B более независимы, я бы использовал более простой инструмент.Используя инструмент, подобный параллельному, все ваши шаги станут одним заданием, которое можно отслеживать через консольный вывод параллельного интерфейса.

...