четверг, 7 ноября 2013 г.

Что такое Continuous Integration?


  • Continuous Integration (CI) - это процесс постоянного запуска билда вашего приложения после каждого сохранения исходного кода в репозитории, с последующим запуском Unit тестов.
  • Continuous delivery - это когда добавляется деплоймент приложения на тестовое окружение с последующим запуском интеграционных и UI тестов.
  • Continuous deployment - ко всему предыдущему добавляем, создание при помощи скриптов, нового окружения. Что в конечном счете позволяет создать 1-click процесс для деплоймента приложения из кода на продакшен сервер.
Для выполнения деплоймента веб приложения на окружение нужно выполнить следующие шаги:
  1. Получить исходный код из репозитория.
  2. Выполнить билд приложения.
  3. Запустить все Unit тесты.
  4. Сформировать пакет, которые будет содержать готовое приложение.
  5. Подготовить существующее окружение (staging) или создать новое.
  6. Выполнить деплоймент пакета с приложением на окружение.
  7. Запустить интеграционные тесты.
  8. Запустить UI тесты.
Первые три шага легко реализуются любым популярным CI (TeanCity, Jenkins, Team Foundation Server и CruiseControl.NET).

Шаги 4-6 реализовать несколько сложнее, если мы говорим об .Net, то для их реализации можно использовать инструмент Octopus Deploy.

В следующих постах, я покажу как можно установить TeamCity и Octopus Deploy, а так же что нужно сделать для их настройке. В результате получим CI процесс от кода до протестированного приложение на Dev окружении.

Установка TeamCity
TeamCity настройка билд процесса для ASP.NET веб сайта
Установка Octopus Deploy
Интеграция Octopus Deploy и TeamCity

Комментариев нет:

Отправить комментарий