Один из принципов DevOps, сформулированных для того, чтобы предложить простую и в то же время полную структур описания этого сложного явления, звучит так: «Всё должно храниться в системе контроля версий». Обсуждая его на соответствующем курсе, мы говорим про необходимость «беспрецедентного уровня контроля за всеми составляющими работающей системы».
Расширение этой идеи можно увидеть в недавней статье «Эпоха сбоев в цепочках поставок программного обеспечения» «The Age of Software Supply Chain Disruption», опубликованной недавно на сайте DevOps.com. Автор использует понятие цепочка поставки программного обеспечения (ПО) (software supply chain) по аналогии с привычными цепочками поставки (supply chain) [например, товаров].
Это становится особенно важным с учётом того, что (согласно отчёту RedHat от 2022 года более 90% компаний используют ПО с открытым кодом, и 80% ИТ-руководителей ожидают роста использования в их компаниях в следующем году. Т.е. всё больше организаций взаимодействуют с экосистемой ПО с открытым кодом (open source software, OSS). Цепочки зависимостей становятся всё длиннее и сложнее. И сбой в одном звене (например, обнаружение уязвимости в библиотеке, которая используется в ПО, которое мы используем при разработке своих систем) можем повлиять на большое количество участников. Причём не из-за собственных ошибки непосредственно в разработке.
Для повышения устойчивости и безопасности необходим контроль не только той части ИТ-экосистемы, которая находится в нашем управлении, но всех цепочек, от которых мы зависим. А следовательно, помимо всего прочего, необходимо встраивать соответствующие механизмы в практики управления поставщиками.
Так что, да, беспрецедентный уровень контроля…