Кто-нибудь успешно использовал Hudson (или другую подобную систему сборки) с Perl?
-
20-09-2019 - |
Вопрос
Кто-нибудь успешно использовал Hudson (или другую подобную систему сборки) с Perl?
Решение
Для сценариев сборки, отличных от Java, я обычно использую собственный шаблон сценария сборки Hudson.То есть я могу указать скрипт оболочки в Хадсоне.Отсюда я могу запускать такие инструменты GNU, как make, configure, и обычно встраиваю некоторые эхо в сценарий или перенаправляю некоторые выходные данные в пользовательский файл, который затем упаковываю в специальную папку и отмечаю как артефакт сборки.
Например, я мог бы,
cd src
perl Makefile.PL > ${WORKSPACE}/logs/makefile.log
make > ${WORKSPACE}/logs/make.log
для начинающих.
Тогда я мог бы обернуть журналы/** артефактами сборки.
Другие советы
Я интегрировал Perl в несколько систем сборки, но не в Hudson.Почему вы хотите использовать Hudson?Возможно, есть другой ответ на вашу проблему.
- Вы находитесь в магазине Java, где для всего остального используется Hudson?
- Есть ли в Hudson какая-то функция, которая вам действительно нужна?
- Вы по какой-то причине избегаете других систем сборки?
Используя Hudson и Java в течение года или около того, а также Hudson и Perl в течение нескольких месяцев, я предпочитаю первый вариант и хочу, чтобы последний вел себя так же, как первый.
Hudson ориентирован на Java и лучше всего работает с Maven и Junit.Однако он поддерживает сценарии оболочки, поэтому вы можете легко выполнять обычные perl Makefile.PL && make && make test
.
Однако вы можете получить гораздо более хорошие результаты, если воспользуетесь одним из (новых) средств форматирования результатов тестов Perl:
perl Makefile.PL
make setup
prove --timer --recurse -m --harness=TAP::Harness::JUnit t/
Использование
TAP::Harness::JUnitинтегрирует результаты тестов Perl в Hudson, позволяя Hudson строить графики и составлять отчеты, как если бы вы выполняли проект Java.
Вы можете легко окружить prove
строка с вызовами для запуска/остановки тестового сервера Apache — см. CPAN для теста Apache.
Да, кто-то добился успеха с другой похожей системой сборки.