Рубрики
Uncategorized

Принцип потока

Это транскрипт эпизода подкаста. Посетите веб -сайт подкаста, чтобы получить эпизод, показать примечания и другие … Tagged с DevOps, непрерывной передачей, Leanit.

Маленькие партии (серия 10 деталей)

Это транскрипт эпизода подкаста. Посетить Сайт подкаста Для эпизода, выставки заметок и других бесплатных.

Процесс, используемый для написания кода и развертывания ИТ -производства, является самым большим участником скорости вашей команды. Вы, вероятно, были в ситуации, когда что -то серьезно сломано в производстве, и вам нужно развернуть исправление прямо сейчас. Возможно, вы даже попытались обойти существующий процесс, чтобы развернуть его быстрее. Проще говоря, чем быстрее ваша команда может писать и развернуть код для производства, тем лучше. Это принципал потока или «первого пути» DevOps.

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

  • Шаг 1: Используйте разработку на основе багажника и непрерывную интеграцию
  • Шаг 2: Используйте непрерывную доставку

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

Целью в конце каждого цикла разработки является создание готовых к производству сборки от Мастера, которые были проверены в производственной среде и подтверждены автоматическими тестами. Это непрерывная доставка в двух словах. Непрерывное развертывание делает еще один шаг, автоматически подталкивая код к производству, но это тема для другого эпизода. На данный момент давайте начнем с разработки на основе багажника.

Бьюсь об заклад, простое упоминание о «багажнике» заставляет некоторых из вас вздрогнуть. Некоторые из вас могут даже подумать: «Танч, о чем Безумьер говорит о SVN? Мы используем git, так какой смысл? » Что ж, дело заключается в сокращении времени цикла от разработки до производства. Разработка на основе багажника оптимизирует для производительности команды вместо индивидуальной производительности.

Развитие на основе багажника сводится к тому, чтобы сохранить ветви небольшими и поддерживать постепенную прямую линию развития. Ветви должны быть объединены с туловищем (или мастером) в конце дня. Они должны быть покрыты автоматическими тестами, поэтому ясно, какие коммиты сломаны. Это происхождение непрерывной интеграции (и они много «непрерывных» вещей в DevOps). Эта практика гарантирует, что коммиты меньше, поэтому его легче писать, тестировать и развернуть до производства, следовательно, улучшение времени от разработки до производства.

Я слышу, как некоторые из вас говорят: «Адам-жест, о чем ты, черт возьми, говоришь? Как это имеет смысл? Что я должен делать с моими филиалами? Как насчет наших эпических ветвей, которые открыты в течение нескольких недель? » Ответы на этот вопрос заключаются в перспективном сдвиге относительно отдельных ролей и того, что команда ценит, но я хочу поставить эти вопросы по -другому.

Вы бы предпочли работать в вашей теме как можно дольше или предпочли бы вывести свой код за дверь и в производство? Я выбираю производство, и вы тоже должны. В любом случае, я не хочу входить в сорняки по этой теме, потому что это несколько противоречиво, поэтому проверьте примечания для шоу, чтобы узнать больше ссылок на эту тему. Давайте перейдем к непрерывной доставке.

Идея здесь заключается в подключении Commits от Trunk/Master к автоматическому трубопроводу развертывания, который проверяет сборки, подходят для производства. Естественно, это требует различных уровней тестов и автоматизации. Теперь не теряйтесь в заявлениях из блогосферы, что вам нужен Docker или Microservices, чтобы сделать это. Эти прокламации упускают тот факт, что технические методы, такие как инфраструктура в качестве кода и автоматическое тестирование, важнее, чем конкретные технологии. Нет предписывающего решения Но я предоставлю вам план:

  1. Развернуть код в стационарную среду
  2. Провести тест на дым против постановки
  3. Развернуть код для производства, в идеале с использованием синего/зеленого или канарейки развертывать
  4. Провести тесты на дым против производства
  5. Все хорошо? Ты закончил. Если нет, отказ.

По мере необходимости развернуть в более предварительных условиях. У вас могут быть выделенные среды тестирования производительности, ручная среда QA или что -то еще. Честно говоря, не имеет значения, сколько среды у вас есть как долго, пока продвижение и проверка автоматизирована как можно больше. Тем не менее, ваше количество среде со временем будет расти, поскольку ваш трубопровод развертывания становится более строгим.

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

Книга Accelerate предоставляет два показателя для измерения потока: время заказа и частоту развертывания. Время заказа — это то, сколько времени требуется от совершения до производства. Частота развертывания — это просто то, как часто происходит развертывание. Ускорение также разбивает эти показатели на уровни.

Время выполнения первого уровня составляет менее часа. Это означает, что разработчик может начать работать и доставить завершенный код для производства менее чем за час. Середина их сроки в течение всего недели до месяца. Как складывается ваша команда?

В любом случае, это обертка в эпизоде. Перейдите на веб -сайт подкастов Smallbatches.dev для стенограммы, показать примечания и ссылки на мой обзор и дальнейший анализ как в справочнике DevOps, так и в ускоренном положении.

До следующего, удачи и счастливая доставка.

Маленькие партии (серия 10 деталей)

Оригинал: «https://dev.to/ahawkins/the-principle-of-flow-219h»