Uncategorized

Релиз Terraform 1.0 добавляет гарантии стабильности и улучшенный опыт обновления

HashiCorp объявила о выпуске версии 1.0 Terraform. Этот выпуск обеспечивает улучшенные возможности обновления и значительные улучшения перекрестной совместимости.

Как отмечает HashiCorp, в версии 1.0 нет существенных изменений по сравнению с предыдущей версией 0.15.5. Вместо этого основное внимание в этом выпуске уделяется стабильности и достижению четырех ключевых требований, установленных HashiCorp при переходе на 1.0. Эти требования заключаются в том, что проект широко развертывается, основные варианты использования понятны и поддерживаются, существует четко определенный пользовательский интерфейс и стабильная архитектура продукта.

Частью этой стабильности является улучшенный опыт обновления. Начиная с Terraform 0.15 и продолжая до 1.x, теперь возможно обновление без влияния на рабочие процессы или необходимость обновления инструментов. Период обслуживания всех выпусков 1.x составит не менее 18 месяцев. Это обязательство распространяется на HashiCorp, занимающуюся исследованием ошибок и выпуском функций для каждого выпуска 1.x за этот период. Исправления ошибок могут появиться в следующем выпуске 1.x по сравнению с выпуском патча для 1.0.x.

В этом выпуске появилась перекрестная совместимость между версиями 0.14.x, 0.15.x и 1.0.x. Сюда входит резервное копирование совместимости источника данных удаленного состояния до версий 0.12.30, 0.13.6, 0.14.0. Эта совместимость была добавлена ​​в версии 0.15 Terraform. С этим изменением эти версии смогут получать доступ к источникам данных удаленного состояния в версиях до 1.0.x.

Эта совместимость должна включать ряд вариантов поведения, включая подмножество языковых функций Terraform, подмножество команд рабочего процесса CLI, протоколы связи между Terraform Core и поставщиками Terraform, а также протоколы проводов для установки поставщиков. Например, в языке Terraform resource а также data блоки сохранят свою текущую функциональность. Это включает их вложенные типы lifecycle, connection, provision, а также provider.

В предыдущем выпуске 0.15 был добавлен ряд новых функций, таких как расширение функции чувствительности к значениям, выпущенной в версии 0.14, для включения атрибутов поставщика. Новый sensitive а также nonsensitive функции, которые можно использовать для дальнейшего редактирования чувствительных значений в выходных данных плана. Например, это можно использовать для редактирования атрибутов в плане:

resource "example_resource" "my_resource" {
   password = sensitive(data.resource.name.id)
   ...
}

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

В выпуске 0.15 также улучшено ведение журнала. Разработчики провайдеров, использующие SDK v.2.4 и выше, могут направлять сообщения на определенные уровни журналов. Terraform CLI и уровни ведения журнала провайдера можно контролировать с помощью TF_LOG_CORE=level а также TF_LOG_PROVIDER=level соответственно.

Более подробную информацию о версии 1.0 можно найти в документации или в журнале изменений. Terraform. Terraform 1.0 можно загрузить с сайта HashiCorp.

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button