Автоматизация сборки

редактировать

Автоматизация сборки - это процесс автоматизации создания сборки программного обеспечения и связанных процессов, включая: компиляцию компьютер исходный код в двоичный код, упаковка двоичный код и выполнение автоматических тестов.

Содержание

  • 1 Обзор
  • 2 Утилиты автоматизации сборки
  • 3 Серверы автоматизации сборки
  • 4 Автоматизация распределенной сборки
  • 5 Связь с непрерывной доставкой и непрерывной интеграцией
  • 6 Adv antages
  • 7 См. также
  • 8 Ссылки

Обзор

Исторически автоматизация сборки осуществлялась с помощью make-файлов. Сегодня существует две основные категории инструментов:

Утилита автоматизации сборки
Сюда входят такие утилиты, как Make, Rake, CMake, MSBuild, Ant, Maven или Gradle (Java) и т. Д. Их основная цель - генерировать артефакты сборки посредством таких действий, как компиляция и компоновка исходного кода.
Серверы автоматизации сборки
Это общие веб-инструменты, которые запускают утилиты автоматизации сборки по расписанию или по запуску; сервер непрерывной интеграции - это тип сервера автоматизации сборки.

В зависимости от уровня автоматизации возможна следующая классификация:

Список программного обеспечения для каждого из них можно найти в списке программного обеспечения для автоматизации сборки.

Утилиты автоматизации сборки

Утилиты автоматизации сборки позволяют автоматизировать простые, повторяемые задачи. При использовании инструмента он рассчитает, как достичь цели, выполняя задачи в правильном, определенном порядке и выполняя каждую задачу. Инструменты сборки различаются двумя способами: ориентированными на задачи и ориентированными на продукт. Инструменты, ориентированные на задачи, описывают зависимость сетей с точки зрения конкретной поставленной задачи, а инструменты, ориентированные на продукт, описывают вещи с точки зрения продуктов, которые они создают.

Серверы автоматизации сборки

Хотя серверы сборки существовали задолго до серверов непрерывной интеграции, они обычно являются синонимами серверов непрерывной интеграции, однако сервер сборки также может быть включен в инструмент ARA или ALM инструмент.

Типы серверов

  • Автоматизация по запросу, например, пользователь, запускающий скрипт в командной строке
  • Автоматизация по расписанию, например, непрерывная интеграция сервер, на котором выполняется ночная сборка
  • Запускаемая автоматизация, например сервер непрерывной интеграции, запускающий сборку при каждой фиксации в системе управления версиями.

Автоматизация распределенной сборки

Автоматизация достигается за счет использования фермы компиляции либо для распределенной компиляции, либо для выполнения шага утилиты. Процесс распределенной сборки должен иметь машинный интеллект, чтобы понимать зависимости исходного кода для выполнения распределенной сборки.

Связь с непрерывной доставкой и непрерывной интеграцией

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

Преимущества

Преимущества автоматизации сборки перед проектами разработки программного обеспечения включают

  • необходимое предварительное условие для непрерывной интеграции и непрерывного тестирования
  • Повышение качества продукции
  • Ускорение компиляции и обработки компоновки
  • Устранение избыточных задач
  • Минимизация «плохих сборок»
  • Устранение зависимости от ключевого персонала
  • Иметь историю сборок и выпусков для исследования проблем
  • Экономьте время и деньги - по причинам, перечисленным выше.

См. также

Ссылки

Последняя правка сделана 2021-05-13 04:30:25
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте