Какие инструменты вы используете для автоматизированных сборок / автоматизированных развертываний?Почему?[закрыто]

StackOverflow https://stackoverflow.com/questions/99535

  •  01-07-2019
  •  | 
  •  

Вопрос

Какие инструменты вы используете для автоматизированных сборок / автоматизированных развертываний?Почему?

Какие инструменты вы рекомендуете?

Это было полезно?

Решение

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

Другие советы

NAnt для сборок (но MSBuild, Rake, почти все, что угодно, было бы прекрасно) и CruiseControl.NET для развертываний.В настоящее время я работаю с новым Cruise от ThoughtWorks studios, поскольку он предоставляет лучший способ создания различных конвейеров и позволяет мне развертывать любую версию, которую я хочу, в целевой среде.

Мы используем Командный город, от JetBrains.Они также создают Resharper И IntelliJ.

Мы используем его для создания наших приложений .Net, и его было довольно легко настроить, подключиться к TFS и запустить дополнительные инструменты.Он очень отшлифован и на самом деле чем-то напоминает мне этот сайт.Оказалось, что это намного приятнее, чем CruiseControl, и для нашей команды это бесплатно.Если вам нужно много разных сборок, больше сборок для каждого пользователя и так далее, то это стоит немного (но все же вполне разумно).

Как ни странно, я только что потратил две недели на капитальный ремонт (читай, на реализацию с нуля) нашего ежевечернего процесса сборки.Очень весело (нет, правда).Я поиграл с идеей установки Team Foundation Server, но мы используем Perforce для управления версиями, и я не подумал, что это того стоит.

Наш процесс теперь представляет собой набор сценариев Powershell, которые выполняются на выделенном сервере сборки / тестирования и выполняют следующее в запланированной задаче:

Уничтожьте все дерево исходных текстов (убедитесь, что вы ничего не проверяли в первую очередь!)

Удалите все дерево исходных текстов из Perforce (из последней помеченной сборки)

Создайте отчет об изменениях (путем синхронизации с HEAD и просмотра результатов).

Создайте приложение

Проиндексируйте PDB-файлы в исходники Perforce

Храните двоичные файлы и символы на выделенном сервере символов

Запускайте тестовые проекты

Создайте программу установки

Этикетка

Отправляйте электронные письма в группу с отчетами о состоянии дел по всему вышеперечисленному

Работает хорошо.

make и bash в linux

make и cmd в Windows

Мы используем комбинацию инструментов сборки и сервера непрерывной интеграции:

Инструменты для сборки:

  1. Мавен
  2. SBT
  3. Градация
  4. Грабли

Серверы непрерывной интеграции:

  1. Дженкинс
  2. Хадсон
  3. Трэвис КИ

Студия автоматизированной сборки.

Вместо того чтобы позволять вам работать со скриптами или XML-файлами, он поставляется с предопределенными графическими операциями макросов, что позволяет вам легко создавать задачи.

Для наших материалов, компилируемых под Windows, мы используем Завершающий конструктор.

Управление круизом для автоматизированных сборок.Отлично работает.

Для автоматизированных сборок, я думаю, лучший инструмент, работающий прямо сейчас, - это Team City от JetBrain .Бесплатная версия обладает всеми функциями, необходимыми для большинства команд из 5-10 человек.Настройка проста, настройка новых проектов безболезненна (относительно) и, самое главное, надежна.

Для автоматической миграции ничто не сравнится с PowerShell.

UppercuT использует NAnt для сборки, и это безумно простой в использовании фреймворк сборки.

Автоматизированные сборки так же просты, как (1) название решения, (2) путь управления версиями, (3) название компании для большинства проектов!

http://code.google.com/p/uppercut/

Вот несколько хороших объяснений: АпперкоТ

Дополнительная информация


UppercuT - это обычная автоматическая сборка, которая означает, что вы настраиваете конфигурационный файл, а затем получаете кучу функций бесплатно.Возможно, самой мощной функцией является возможность указывать параметры среды в ОДНОМ месте и применять их везде, включая документацию при сборке исходного кода.

Доступная документация: https://github.com/chucknorris/uppercut/wiki

Характеристики :

  • Простая настройка
  • Простые обновления
  • Пользовательские точки расширения (pre, post и replace) для каждого этапа процесса сборки http://uppercut.pbworks.com/CustomizeUsingExtensionPoints
  • Имеет документацию для интеграции с Team City, CruiseControl.NET и Jenkins (ранее Hudson) https://github.com/chucknorris/uppercut/tree/master/docs
  • Работает в Linux без Mono
  • Управление версиями библиотек DLL на основе номера сборки и ревизий системы управления версиями (SVN, TFS, Git, HG)
  • Действия по компиляции - F5 или Ctrl + Shift + B
  • Строгое присвоение имен стало таким же простым, как true / false
  • Тестирование и анализ кода
    • Тестирование
      • НАнит
      • MbUnit v2
      • Gallio
      • xUnit ( единица измерения )
    • НКовер
    • NDepend
    • Нитрик
    • Анализатор Мономиграции
  • Запутывание
  • Ильмерге
  • Создание шаблонов среды (ConfigBuilder, DocBuilder, SQLBuilder, DeploymentBuilder) https://github.com/chucknorris/uppercut/blob/master/docs/ConfigBuilder.doc?raw=true
  • Упаковка выходных данных для подготовки к развертыванию
  • Застегивает молнию на выходе

На работе мы используем старые добрые Муравей для создания наших Java-сервлетов.

Раньше мы использовали визуальную сборку из Kinook software, но недавно с нашим новым приложением мы перешли на MSBuild, поскольку у него была лучшая интеграция с TFS и возможность создавать пользовательские задачи.

Определенно, GNU Autotools.Тот Самый автоконфликт и автоматизировать являются стандартом де-факто для систем unix.

Я добился успеха, используя строительный бот, запускаемый скриптом после фиксации в репозитории subversion.Это использовалось как для автоматизированных сборок, так и для автоматизированного тестирования.

МУРАВЕЙ как для сборки, так и для развертывания / установки.

Отличный кроссплатформенный установщик.

Мы используем Сборки Hericus Zed И устранение ошибок для наших автоматизированных сборок.

У нас есть 4 ветви кода, каждая с java, c ++, C #, кроссплатформенными компиляторами и установщиками для 5 ОС.

Создавайте для сборок.Пакеты Debian для развертывания (поскольку он работает на наших производственных серверах).

Командный город запуск сценариев NAnt для сборки / упаковки и PowerShell для развертывания.

Я обнаружил, что использование NAnt, работающего на TeamCity, вместо встроенных TeamCity runners позволяет нам иметь гораздо более насыщенный процесс сборки (например.css-минимайзер и т.д.).Это также означает, что полный процесс сборки / упаковки может быть запущен на любом компьютере разработчика, а не только на серверах TeamCity, что значительно упрощает настройку и отладку проблем в процессе сборки.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top