Spec-Zone.ru › Ansible 2.7

terraform – Управляет развертыванием Terraform (и планами)

Новое в версии 2.5.

  • Описание
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Статус

Описание

  • Обеспечивает поддержку развертывания ресурсов с помощью Terraform и извлечения информации о ресурсах обратно в Ansible.

Требования

Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.

  • terraform

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
backend_config
-
добавлено в 2.7
Группа пар ключ-значение для передачи на этапе инициализации параметру -backend-config.
binary_path
-
Путь к двоичному файлу terraform, относительный к 'service_path', если не указан абсолютный путь.
force_init
boolean
    Варианты:
  • нет ←
  • да
Для избежания дублирования инфраструктуры, если файл состояния не найден, это заставит выполнить `terraform init`. Как правило, это следует отключать, если вы не планируете развертывать полностью новую инфраструктуру Terraform.
lock
-
Включить блокировку файла состояния, если используется служба, которая поддерживает блокировки (например, S3+DynamoDB) для хранения файла состояния.
lock_timeout
-
Время удержания блокировки файла состояния, если используется служба, которая поддерживает блокировки (например, S3+DynamoDB).
plan_file
-
Путь к существующему файлу плана Terraform для применения. Если этот параметр не указан, Ansible создаст новый план TF и выполнит его. Обратите внимание, что этот параметр обязателен, если у 'state' есть значение 'planned'.
project_path
- / обязательно
Путь к корневой директории Terraform с файлами vars.tf/main.tf и т.д., которые нужно использовать.
purge_workspace
boolean
добавлено в 2.7
    Варианты:
  • нет ←
  • да
Работает только со state = absent
Если true, рабочее пространство будет удалено после действия "terraform destroy".
Рабочее пространство 'default' не будет удалено.
state
-
    Варианты:
  • planned
  • present ←
  • absent
Цель состояния заданного этапа/проекта
state_file
-
Путь к существующему файлу состояния Terraform для использования при построении плана. Если этот параметр не указан, будет использован стандартный `terraform.tfstate`.
Этот параметр игнорируется, если задан параметр `plan`.
targets
-
Список конкретных ресурсов, которые необходимо нацелить в этом плане/приложении. Выбранные здесь ресурсы также автоматически включат все зависимости.
variables
-
Группа пар ключ-значение для переопределения переменных шаблона или тех, которые указаны в файлах переменных.
variables_file
-
Путь к файлу переменных для Terraform, чтобы заполнить конфигурации TF.
workspace
-
добавлено в 2.7
Значение по умолчанию:
"default"
Рабочее пространство terraform для работы.

Примечания

Примечание

  • Для простого выполнения terraform plan, используйте режим проверки.

Примеры

# Basic deploy of a service
- terraform:
    project_path: '{{ project_dir }}'
    state: present

# Define the backend configuration at init
- terraform:
    project_path: 'project/'
    state: "{{ state }}"
    force_init: true
    backend_config:
      region: "eu-west-1"
      bucket: "some-bucket"
      key: "random.tfstate"

Возвращаемые значения

Общие возвращаемые значения документированы здесь, следующие поля уникальны для данного модуля:

Ключ Возвращаемое значение Описание
command
строка
всегда
Полная команда `terraform`, созданная этим модулем, в случае необходимости повторного выполнения команды вне модуля или отладки проблемы.

Пример:
terraform apply ...
outputs
сложное
при успехе
Словарь всех выходных данных TF по их назначенному имени. Используйте `.outputs.MyOutputName.value` для доступа к значению.

Пример:
{"bukkit_arn": {"sensitive": false, "type": "string", "value": "arn:aws:s3:::tf-test-bukkit"}
sensitive
boolean
всегда
Указано ли Terraform, что это значение является конфиденциальным

type
строка
всегда
Тип значения (строка, целое число и т.д.)

value
-
всегда
Значение выходных данных, интерполированное Terraform

stdout
строка
всегда
Полный вывод команды `terraform`, в случае необходимости отображения или проверки журнала событий.



Статус

  • Этот модуль не гарантирует обратную совместимость интерфейса. [превью]
  • Этот модуль поддерживается сообществом Ansible. [community]

Авторы

  • Ryan Scott Brown @ryansb

Подсказка

Если вы обнаружите какие-либо проблемы в данной документации, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.7/modules/terraform_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API