Готовый перевод DZone RefCard #145 Continuous Delivery / DZone RefCard #145 Постоянная Доставка: Стр 1 - 2
DZone RefCardz #145 Непрерывная Поставка
Шаблоны и антишаблоны Непрерывной Поставки в жизенном цикле программного обеспечения
СОДЕРЖАНИЕ:
* Последовательность развертывания
* Преимущества
* Управление конфигурациями
* Непрерывная интеграция
* Тестирование
* Советы и прочее ...
Поль М. Дюваль
С методикой Непрерывной Поставки (далее НП) команды непрерывно поставляют новые версии программного обеспечения в работу, уменьшая время цикла между идеей и пригодным к употреблению программным обеспечением, посредством автоматизации всей системы доставки: сборки, развертыванию, тестированию, и выпуска релиза. НП позволяет пройти через "Последовательность Развертывания", которая охватывает коллекцию шаблонов, описанных в этом Refcard.
НП определяет “ …, как совмещаются все движущиеся части цикла жизни: управление конфигурацией, автоматическое тестирование, непрерывная интеграция и развертывание, управление данными, управление окружающей средой, и управление выпуском релизов.” (1)
ПОСЛЕДОВАТЕЛЬНОСТЬ РАЗВЕРТЫВАНИЯ
Цель последовательности развертывания является тройной:
• Видимость: Все аспекты системы доставки - сборка, развертывание, тестирование, и выпуск релиза - видны всем членам команды,что способствует сотрудничеству.
• Обратная связь: Члены команды приступают к изучению затруднений сразу, как только они появляются, таким образом проблемы решаются как можно скорее.
• Непрерывное Развертывание: Посредством полностью автоматизированного процесса Вы можете развернуть и выпустить любую версию программного обеспечения для любой окружающей среды. (1)
На диаграмме Последовательности Развертывания, представленной выше, показаны паттерны во взаимосвязи друг с другом. Для многократно используемых, в последовательности, паттернов я выбрал преимущественный вариант использования.
ПРЕИМУЩЕСТВА
• Расширенные возможности команды: Последовательность развертывания может сама активизировать системы, тестировщиков, разработчиков, операции и другие элементы, которые могут быть само-обслуживаемыми версиями приложений, работающими в среде по собственному выбору.
• Сокращение ошибок: Гарантия корректности версии, конфигурации, схемы базы данных, и т.д. подтверждает, что каждый раз используется один и тот же автоматизированный сценарий работы.
• Снижение стресса: Посредством релизов подготовленных нажатием одной кнопки и репетиции развертывания, релиз становится готовым к производству без типичного стресса.
• Гибкость развертывания: Инициация новой среды или конфигурирование производится путем нескольких изменений в системе автоматической доставки.
• Практика ведет к совершенству: Посредством сценария развертывания, финальное развертывание на производственный сервер репетируется каждый раз при установка программного обеспечения в любой целевой среде.
УПРАВЛЕНИЕ КОНФИГУРАЦИЯМИ
Управление конфигурациями это "процесс, в котором все артифакты, имеющие отношение к вашему проекту, и их взаимосвязи определены, сохранены, идентифицирована их уникальность и модифицируемость.
Примечание. Каждый шаблон цитируется номером в скобках в соответствии с источником в разделе ссылок.
Конфигурируемое программное обеспечение третьих фирм
Шаблон
Оценивайте и используйте то программное обеспечение третьих фирм, которое легко может сконфигурировано, развернуто и автоматизировано.
Антишаблоны
Закупается программное обеспечение не имеющие возможности внешней настройки. Программное обеспечение не имеет API или интерфейса командной строки, что принуждает команду к использованию только GUI интерфейса.
Каталог конфигураций
Шаблон
Имеется каталог всех опций для каждого приложения, известен способ изменения этих опций и места их хранения для каждого приложения. Такой каталог автоматически создается как части системы сборки.
Антишаблоны
Опции конфигурации не документированы. Каталог приложений и другие факты это "тайна племени".
Главная ветвь
Шаблон
Минимизация слияний и сохранение числа активных правок кода управляемыми благодаря разработке на главной ветви.
Антишаблоны
Многократное ветвление на всем протяжении проекта.
Ежедневное слияние
Шаблон
Закоммиченные, в главной ветви, изменения применяются в во всех прочих ветвях как минимум ежедневно.
Антишаблоны
Выполнять слияние каждой итерации раз в неделю или как минимум реже чем раз в день.
Защищенная конфигурация
Шаблон
Хранилище конфигурационной информации в находится безопасных, доступно удаленных местах, таких как база данных, директория или реестр.
Антишаблоны
Открытые текстовые пароли находят на отдельном компьютере или с в разделяемом доступе
Репозиторий
Шаблон
Все исходные файлы - исполняемый код, конфигурационные файлы, оборудование хоста и данные сохраняются в репозитории контроля версий.
Антишаблоны
Некоторые файлы заливаются, другие, как например конфигурация и данные изменения нет. Бинарные файлы, которые могут быть получены сборкой и процессом развертывания, также заливаются в репозиторий.
Коротко живущие ветвление
Шаблон
Внимание! Этот перевод, возможно, ещё не готов.
Его статус: идёт перевод
Переведено на Нотабеноиде
http://notabenoid.org/book/19558/63774
Переводчики: iSergius
Настройки
Готово:
