Команда: 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.11/cli/commands/providers/mirror/