Существуют ли какие-либо CI-системы для Delphi, такие как Hudson для Java? Есть ли у Хадсона какие-либо интегралы в Delphi?
Система непрерывной интеграции для Delphi
Ответ 1
Мы используем Hudson:), который отлично работает с Delphi.
Здесь представлена полная настройка для одного из моих проектов:
<?xml version='1.0' encoding='UTF-8'?>
<project>
<actions/>
<description></description>
<keepDependencies>false</keepDependencies>
<properties/>
<scm class="hudson.scm.CVSSCM">
<cvsroot>:sspi:cvsonly:[email protected]:/baz</cvsroot>
<module>SIP</module>
<canUseUpdate>false</canUseUpdate>
<flatten>true</flatten>
<isTag>false</isTag>
<excludedRegions></excludedRegions>
</scm>
<canRoam>true</canRoam>
<disabled>false</disabled>
<triggers class="vector"/>
<builders>
<hudson.tasks.BatchFile>
<command>"C:\Program Files\Nant\bin\nant" -buildfile:etc\sip.build build-d7 test</command>
</hudson.tasks.BatchFile>
</builders>
<publishers>
<hudson.tasks.BuildTrigger>
<childProjects>quux, foozle, wibble</childProjects>
<threshold>
<name>SUCCESS</name>
<ordinal>0</ordinal>
<color>BLUE</color>
</threshold>
</hudson.tasks.BuildTrigger>
</publishers>
<buildWrappers/>
</project>
sip.build Delphi-7 target создает тестовый набор проектов (DUnit TextTestRunner), и поэтому результат задания - это просто счет ошибок/ошибок при помощи:
var
R: TTestResult;
begin
R := TextTestRunner.RunRegisteredTests;
ExitCode := R.ErrorCount + R.FailureCount;
end;
Ответ 2
Ответ 3
Мы используем CruiseControl.NET, который отлично работает с Delphi.
Ответ 4
Кажется, что сам Embarcadero использует Хадсона. См. Комментарий от Ника Ходжеса, менеджера по развитию в Embarcadero. http://blogs.embarcadero.com/nickhodges/2010/03/10/39369#comment-29952
Ответ 5
Hudson отлично, он также доступен как Настройка MSI. Пользователи старых версий Delphi (pre MSBuild) могут создавать сценарии сборки с популярными средами Apache Ant и NAnt build script. Разумеется, возможна также простая сборка командной строки (пакетная script).
Один из основных моментов этого инсталлятор заключается в том, что он поставляется с JRE, быть полностью автономным. Это потому что пользователи Windows обычно не работают знать, что делать с файлом *.war, и они вообще не любят ходить в командной строки и запуска Java команды вручную.
Таким образом, легко попробовать, не пройдя слишком много инсталляторов и командной строки.
И после установки обязательно посетите страницу подключения в приложении администрирования, есть много расширений, которые также полезны для разработчиков Delphi. Обзор плагина находится в режиме онлайн здесь.
Инструменты Hudson для Delphi: есть также Инструмент покрытия кода для Delphi с поддержкой Hudson здесь.
TeamCity - еще одна очень приятная система CI. Это коммерческий продукт, но он предлагает бесплатную лицензию для 20 пользователей и 20 конфигураций сборки для 3 агентов сборки.
Bamboo - это система CI для любого языка. Он доступен от Atlassian. Его цена начинается с 10 долларов США - это включает в себя все функции и неограниченные пользователи, но ограничено 10 планами, выполняется сборка только на том сервере, на котором она установлена. Он может использовать экземпляры Amazon Elastic Compute Cloud в качестве удаленных агентов.
Автоматическая сборка Studio от SmartBear. С помощью Automated Build Studio Server он представил CI некоторое время до FinalBuilder.
Ответ 6
Добавьте наш Parabuild в список инструментов для проверки - он создает практически что-либо, который может быть создан из командной строки, включая Delphi, и обеспечивает интеграцию с Perforce и другими системами управления версиями, такими как Git и Bazaar.
Ответ 7
Hudson прост в использовании, с некоторыми помощниками на базе Интернета, поскольку проекты Delphi построены с помощью MSBuild.
Если вам нужна дополнительная настройка и интеграция сторонних инструментов (например, интегрируйте инструменты показателей), то CruiseControl.NET - идеальное решение.
Посмотрите на мою страницу панели инструментов CC.NET для DelphiCodeToDoc (и вы также можете посмотреть в файл конфигурации). Я делаю checkout + компиляцию версии gui и командной строки и unit test + unit test выполнение и отправку отчетов + ftp upload.
Ответ 8
Просто, чтобы бросить мою поддержку CruiseControl.NET, поскольку Delphi 2007 и выше основаны на MSBuild, тогда не должно быть никаких проблем с сборками через CC.NET. Для DUNit есть патч, так что он выводит результаты в файл XML, а затем его можно интегрировать в диаграммы результатов построения.
Ответ 9
errrm, можете ли вы определить, что вы действительно ищете?
Вы используете фразу continuous integration
, но вы просто имеете в виду continuous build
, чтобы убедиться, что она компилируется и нравится, или вы действительно имеете в виду continuous integration
в том смысле, что вы также запускаете регрессионные тесты?
Я был бы любопытным, как вы это делаете (Auto-it?).
Не то, чтобы это было очень важно, потому что замечательный Hudson (который явно не только для java) имеет множество плагинов, но также позволит вам выполнить пакет DOS script - любой script, который вы заботиться о том, чтобы писать, строить, тестировать, сообщать результаты и т.д.
Ответ 10
Другой вариант (хотя и не бесплатный, $10 для ограниченного числа пользователей) Atlassian Bamboo. И JetBrains TeamCity - это еще один бесплатный (с ограниченным числом пользователей). Я пробовал оба с Delphi 2009/2010, и они работают неплохо. Оба разрешили интеграцию с Perforce среди других SCM.
Ответ 11
Мы используем систему Jenkins CI с инструментом Owly CI в качестве системы сборки и обработчика зависимостей.
Взгляните на это tutorial
Первоначальная установка занимает менее 5 минут