Команда: providers mirror
Команда tofu providers mirror загружает провайдеры, необходимые для текущей конфигурации, и копирует их в каталог в локальной файловой системе.
При обычном использовании tofu init автоматически загружает необходимые провайдеры из реестров провайдеров при инициализации текущего рабочего каталога. Иногда OpenTofu запускается в среде, где это невозможно, например в изолированной сети без доступа к реестру OpenTofu. В этом случае явная настройка метода установки позволяет настроить OpenTofu так, чтобы при запуске в определённой системе он обращался только к локальному каталогу файловой системы, в котором вы создали локальное зеркало необходимых плагинов, и не обращался к вышестоящему реестру.
Команда tofu providers mirror может автоматически заполнить каталог, который будет использоваться в конфигурации установки провайдеров как локальное зеркало файловой системы.
Использование
Использование: tofu providers mirror [options] <target-dir>
Необходимо указать один целевой каталог. OpenTofu создаст в нём структуру путей, ожидаемую для зеркал плагинов провайдеров на основе файловой системы, и заполнит её файлами .zip, содержащими сами плагины.
Использование переменных в источниках модулей требует присваивания значений переменным корневого модуля при запуске tofu providers mirror.
Эта команда принимает следующие общие параметры:
-
-var 'NAME=VALUE'— задаёт значение одной входной переменной, объявленной в корневом модуле конфигурации. Используйте этот параметр несколько раз, чтобы задать несколько переменных. Подробнее см. в разделе Входные переменные в командной строке. -
-var-file=FILENAME— задаёт значения для произвольного количества входных переменных, объявленных в корневом модуле конфигурации, используя определения из файла «tfvars». Используйте этот параметр несколько раз, чтобы включить значения из нескольких файлов.
Помимо параметров -var и -var-file существуют и другие способы задать значения входных переменных корневого модуля. Подробнее см. в разделе Присваивание значений переменным корневого модуля.
OpenTofu также создаст различные индексные файлы .json с подходящими ответами для реализации протокола сетевого зеркала, если вы загрузите полученный каталог на хост статического веб-сайта. OpenTofu игнорирует эти индексные файлы при использовании каталога в качестве зеркала файловой системы, поскольку в этом случае источником достоверных данных являются сами записи каталога.
Эта команда поддерживает следующие дополнительные параметры:
-
-platform=OS_ARCH— выберите целевую платформу, для которой нужно создать зеркало. По умолчанию OpenTofu получает пакеты плагинов, подходящие для платформы, на которой выполняется эта команда. Используйте этот параметр несколько раз, чтобы включить пакеты для нескольких целевых систем.Названия целевых платформ состоят из операционной системы и архитектуры процессора. Например,
linux_amd64выбирает операционную систему Linux, работающую на процессоре AMD64 или x86_64.
Чтобы обновить существующее зеркало и добавить в него новые пакеты, можно снова запустить tofu providers mirror. Например, чтобы добавить пакеты для новой целевой платформы, повторно запустите команду с нужным новым параметром -platform=.... Команда добавит пакеты для новой платформы, не удаляя ранее загруженные пакеты, и объединит полученный набор пакетов, обновив индексные файлы JSON.
Copyright (c) The OpenTofu Authors
Copyright (c) 2014 HashiCorp, Inc.
Mozilla Public License, version 2.0
https://opentofu.org/docs/v1.10/cli/commands/providers/mirror/