Build automation in Windows: Краткий обзор софта

    Хотелось бы рассказать об инструментах автоматизации сборки под Windows.
    Это не коим образом не реклама, а только обзор средств.
    Буду рад за ссылки на другие продукты и отзовы об их использовании.

    NAnt


    • Сайт продукта: http://nant.sourceforge.net/
    • Стоимость: бесплатен (включая исходники)
    • Интерфейс: коммандная строка
    • Язык интефейса: —
    • Поддержка сборки по расписанию: встроенной нет — используйте at и т.п. утилиты

    Собственно классика сборочного процесса — портированный Ant. Никакого интефейса для редактирования не имеет, что, лично меня довольно сильно удручает. В целом умеет почти все что надо, а чего нет при желании легко прикручивается. Формат проектов — xml. Стабилен и проверен временем. Требует .NET для своей работы.
    Он легко прикручивается к CI серверу CruiseControl.NET (СС.NET).

    FinalBuilder


    • Сайт продукта: http://www.finalbuilder.com/
    • Стоимость: от 300 до 4200$
    • Интерфейс GUI и\или командная строка
    • Скриншеты: на сайте есть галерея
    • Язык интефейса: EN
    • Поддержка сборки по расписанию: есть встроенная или at и т.п.


    Я активно им пользуюсь уже около года совместно с Automated Build Studio, меня он устраивает.

    Имеет неплохое API для написания расширений: поддерживает языки JScript, VBScript, Python, PowerShell, также имеет поддержку .NET модулей. Для скриптовых языков имеет редактор расширений (подстветка синтаксиса, редактрование propery окон):

    Интерфейс прост и понятен. Проекты сохраняет в формат XML или ZIP (внутри которого тот же xml).
    Умеет хранить логи и выводить статистику сборок в виде графика (успех\ошибка).

    В комплекте идут расширения для работы почти со всеми инструментами, как-то: subversion, cvs, clearcase, perforce, tfs, всевозможными операциями с файлами, поддержка операций с IIS6\7, ну, и конечно, собственно сборочные утилиты вроде msbuild и компиляторов. Также умеет из коробки общаться с большинством компиляторов сетапов.

    Также к нему можно взять у той же компании CI сервер. У меня этот CI сервер падал при попытке сборки кривого проекта — так что я бы его не рекомендовал. С другой стороны — это решение из коробки для полной автоматизации и настройки CI сервера.

    К серверу CC.NET прикручивается довольно убого — парсинга логов (а они, к слову, могут быть сохранены в форматах xml, txt, xhtml) пока нет (и неизвестно предвидится ли).

    Visual Build Professional



    Довольно стабильный билдер проектов. Поддерживает языки скриптования: VBScript, JScript, PerlScript, Python, RubyScript.Все они с подстветкой синтаксиса. По количеству фич примерно соотвествует FinalBuilder-у. В отличие от FinalBuilder-а имеет возможность создания глобальных для всех проектов процедур. Запускается на порядок быстрее FinalBuilder, хотя быть может не так «гламурен» (а оно вам надо?). Проекты хранит в XML.
    Логи экспортируются только в текстовые файлы, что очень затруднит вам интеграцию с CC.NET и другими CI серверами.

    Automated Build Studio



    Довольно сложный в сравнении с ранее рассмотреными визуальными редакторами, однако имеет ряд преимуществ. Например — встроенный веб сервер и интеграцию в VisualStudio. Фактически не требуется CI сервер, т.е. этот продукт самодостаточен.
    Также стоит отметить что поддерживает он значительно больше средств, нежели другие визуальные редакторы.
    Поддерживает языки скриптования: VBScript, JScript, DelphiScript.
    Умеет распараллеливать сборку между компьютерами и поддерживает зависимости при сборке задач.
    Экспорт логов в xml и другие форматы. Одним словом один из самый мощьных и сложных инструментов.



    А что используете ВЫ ?
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама

    Комментарии 4

      0
      Msbuild-то вы и забыли (ссылку не даю) ;)

      Еще можно добавить (из более-менее известных):
      — Apache Maven (Тынц)
      — Boost Jam Tool (Тынц)

      Из «диковинок»:
      — Bake (Make для Boo) (Ты-тынц)

      Это далеко не полный список
        0
        про msbuild — его научить чему-то довольно проблемное занятие имхо — этак проще bat\cmd\ps скрипты использовать…

        я описывал в основном «комбайны» все же, хотя тут грань неочевидна и сложна к восприятию.
        0
        При должном опыте — не сложнее, чем NAnt; конфиги и принцип в чем-то совпадают.
        Кроме того, он используется как «режущая поверхность» у «комбайна» под названием Team Build из MS Team Foundation System.

        В качестве домашнего средства я остановился на NАnt + CC.NET.
          0
          >А что используете ВЫ?
          make :-)
          Что самое интересное (раз уж здесь обзор средств под Windows) — для сборок самих дистрибутивов Windows (как и, скорее всего, других продуктов) используется немного модифицированная разработчиками Microsoft версия make — nmake.
          Так что, как ни крути, имхо, make — «наше всё».

          Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

          Самое читаемое