У кого-нибудь есть опыт работы с Hudson и Bamboo? Есть какие-нибудь мысли об относительных сильных и слабых сторонах этих продуктов?
Хорошо, поскольку люди продолжают упоминать другие продукты CI, я открою это позже. Вот моя общая проблема. Я хочу настроить систему CI для нового проекта. В этом проекте, скорее всего, будут компоненты Java (WAR и JAR), некоторые модули Python и, возможно, даже компонент .NET. Поэтому мне нужен CI-сервер, который может:
- Работа с несколькими языками,
- Разверните артефакты на серверах (т.е. разверните войну, если все модульные тесты пройдут успешно).
- Я также хотел бы что-то, что интегрировано с достойным инструментом покрытия кода.
- Красивые отчеты - это хорошо, но не обязательно.
- Множественные механизмы уведомления, когда что-то идет не так.
- Я не беспокоюсь о хостинге. Я либо запустил его на локальном сервере, либо на инстансе Amazon.
- Кроме того, это может быть пирог в небе, но есть ли что-то, что также может создавать приложения для iPhone?
java
continuous-integration
hudson
bamboo
Картик Рамачандран
источник
источник
Ответы:
Заявление об ограничении ответственности: я работаю над Bamboo и поэтому не собираюсь комментировать функции других продуктов CI, поскольку мой опыт работы с ними ограничен.
Чтобы ответить на ваши конкретные требования:
Bamboo имеет встроенную поддержку нескольких языков. Клиенты используют его с Java, .Net, PHP, JavaScript и т. Д. При этом большинство серверов сборки достаточно универсальны, чтобы по крайней мере выполнить сценарий, который может запустить процесс сборки.
Bamboo 2.7 поддерживает этапы сборки, которые позволяют разделить сборку на этап модульного тестирования и этап развертывания. Только если этап модульного тестирования завершится успешно, сборка перейдет к этапу развертывания. В Bamboo 3.0 мы будем поддерживать совместное использование артефактов между этапами, что позволит вам создать артефакт (например, вашу войну) на первом этапе и использовать этот артефакт на следующих этапах для тестирования и развертывания.
Bamboo поставляется с поддержкой Clover, а также имеет плагин для Cobertura .
У Bamboo есть куча хороших, но не важных отчетов :)
Bamboo может уведомить вас по электронной почте, через RSS, IM, через плагин IDE или через красивую настенную доску, которая видна всей команде.
По опыту, как правило, дешевле разместить собственный сервер CI. Но если вам нужно масштабировать, Bamboo упрощает распространение ваших сборок среди дополнительных локальных агентов или масштабирование до Amazon с помощью эластичных агентов.
Как и в ответе на ваш первый вопрос, большинство серверов CI смогут создавать приложения для iPhone некоторыми способами. Вполне возможно, что потребуется немного больше скриптов.
Цена: Bamboo не является бесплатным (кроме нашей бесплатной начальной лицензии ) / libre / open-source, но вы получите исходный код Bamboo, если приобретете коммерческую лицензию и полную поддержку. По сравнению со стоимостью вычислительной мощности и потенциального обслуживания, необходимого для CI-сервера, стоимость лицензии Bamboo довольно мала.
Надеюсь это поможет.
источник
Я не использовал Bamboo, но я использовал Hudson, Cruise и TFS, и из всех них Hudson был, несомненно, лучшим. Его до смешного легко настроить, и он имеет действительно хороший веб-интерфейс для настройки проекта. Что хорошо в Hudson, так это то, что он поддерживает практически любой язык и любую функцию, которую вы могли бы пожелать, если предположить, что кто-то написал для него плагин, который, вероятно, у них есть.
http://wiki.hudson-ci.org/display/HUDSON/Plugins
Мы использовали его для запуска сборок .NET, Java и C ++ с заданными интервалами времени, а также для проверки SVN с помощью автоматизированных средств тестирования, и это было здорово. В позапрошлом месте, где я работал, незадолго до того, как я уехал, началась разработка iPhone, и я считаю, что для этого тоже использовали Hudson.
Плюс это бесплатно!
источник
Бамбук против Хадсона, на очень поверхностном уровне, кажется, сводится к:
И у Bamboo, и у Jenkins есть множество ошибок (вы столкнетесь с проблемами), но, по крайней мере, с Jenkins у вас гораздо больше шансов найти обходной путь, пока он не будет исправлен. С Bamboo вы застряли в ожидании обновления.
источник
Отказ от ответственности: я работаю с Дженкинсом.
В нашей организации (довольно большой, более 100 разработчиков) мы нашли очень полезными эти две функции:
По поводу ваших вопросов:
источник
Что ж, я до сих пор не использовал Bamboo, но одно отличие состоит в том, что Hudson - это бесплатное / бесплатное программное обеспечение с открытым исходным кодом.
источник
Если вы готовы за это заплатить, Anthill сделает все, что вам нужно. Мы используем его в моей фирме для нашей веб-команды, и он довольно мощный.
Он автоматически автоматизирует ваши существующие сценарии и управляет создаваемыми ими артефактами, независимо от языка.
Развертывание может быть добавлено как шаг в процессе сборки. Я не уверен, что вы захотите выполнить развертывание непосредственно в производственной среде, но вы, безусловно, могли бы, если бы руководство потребовало этого.
Они интегрируются из коробки с Clover, Cobertura, Emma, Checkstyle, CodeSonar, Coverity, FindBugs, Fortify, Klocwork, PMD и Sonar.
Я не уверен, какие отчеты доступны, но есть вкладка отчетов (я туда не захожу :-))
Я знаю, что он может работать с электронной почтой (и, следовательно, с sms), интегрируется с несколькими службами обмена мгновенными сообщениями.
Я видел демонстрацию того, как они запускают облачный сеанс из образа, в комплекте с агентом для развертывания. Мы запускаем его на типичном Linux-сервере, но я знаю, что некоторые люди запускают его на сервере VMWare.
Это, наверное, подпадает под первую.
источник