Spec-Zone.ru › Ansible

Модуль community.sops.load_vars – Загрузка переменных с шифрованием SOPS из файлов динамически в рамках задачи

Примечание

Этот модуль является частью коллекции community.sops (версия 1.9.1).

Эта коллекция может быть уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install community.sops. Для использования этого модуля необходимы дополнительные требования, подробности см. в разделе Требования.

Для использования в playbook, укажите: community.sops.load_vars.

Новое в community.sops 0.1.0

  • Краткое описание
  • Требования
  • Параметры
  • Атрибуты
  • См. также
  • Примеры
  • Возвращаемые значения

Краткое описание

  • Динамически загружает переменные YAML/JSON с шифрованием SOPS из файла во время выполнения задачи.
  • Чтобы назначить включенные переменные другому хосту, чем inventory_hostname, используйте delegate_to и установите delegate_facts=true.

Примечание

Этот модуль имеет соответствующий плагин действия.

Требования

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

  • Бинарный исполняемый файл sops (https://github.com/getsops/sops) должен существовать либо в PATH, либо быть настроен как sops_binary.

Параметры

Параметр

Комментарии

age_key

string

added in community.sops 1.4.0

Один или несколько закрытых ключей age, которые могут быть использованы для расшифровки зашифрованных файлов.

Будет установлен как переменная среды SOPS_AGE_KEY при вызове SOPS.

Требуется SOPS 3.7.1+.

age_keyfile

path

added in community.sops 1.4.0

Файл, содержащий закрытые ключи age, которые SOPS может использовать для расшифровки зашифрованных файлов.

Будет установлен как переменная среды SOPS_AGE_KEY_FILE при вызове SOPS.

По умолчанию SOPS ищет sops/age/keys.txt в вашем каталоге конфигурации пользователя.

Требуется SOPS 3.7.0+.

aws_access_key_id

string

added in community.sops 1.0.0

Идентификатор ключа доступа AWS, который нужно использовать для запросов к AWS.

Устанавливает переменную среды AWS_ACCESS_KEY_ID для вызова SOPS.

aws_profile

string

added in community.sops 1.0.0

Профиль AWS, который нужно использовать для запросов к AWS.

Это соответствует опции SOPS --aws-profile.

aws_secret_access_key

string

added in community.sops 1.0.0

Секретный ключ доступа AWS, который нужно использовать для запросов к AWS.

Устанавливает переменную среды AWS_SECRET_ACCESS_KEY для вызова SOPS.

aws_session_token

string

added in community.sops 1.0.0

Токен сессии AWS, который нужно использовать для запросов к AWS.

Устанавливает переменную среды AWS_SESSION_TOKEN для вызова SOPS.

config_path

path

added in community.sops 1.0.0

Путь к конфигурационному файлу SOPS.

Если не задан, SOPS будет рекурсивно искать конфигурационный файл, начиная с файла, который зашифрован или расшифрован.

Это соответствует опции SOPS --config.

enable_local_keyservice

boolean

added in community.sops 1.0.0

Указать SOPS использовать локальный сервис ключей.

Это соответствует опции SOPS --enable-local-keyservice.

Варианты:

  • false ← (default)
  • true

expressions

string

Этот параметр управляет тем, как обрабатываются выражения Jinja2 в значениях загружаемого файла.

Если установлен в ignore, выражения не будут вычисляться, а будут рассматриваться как обычные строки.

Если установлен в evaluate-on-load, выражения будут вычисляться при выполнении этого модуля, другими словами, при загрузке файла.

К сожалению, у нестандартных модулей нет возможности обрабатывать выражения «небезопасно», то есть вычислять их только при использовании. Этого можно достичь только с помощью ansible.builtin.include_vars, который, к сожалению, не может обрабатывать зашифрованные файлы SOPS.

Варианты:

  • "ignore" ← (default)
  • "evaluate-on-load"

file

path

Имя файла, из которого должны загружаться переменные.

Если путь является относительным, он будет искать файл в подкаталоге vars/ роли или относительно playbook.

keyservice

list / elements=string

added in community.sops 1.0.0

Укажите службы ключей для использования наряду с локальной.

Служба ключей должна быть указана в формате protocol://address, например tcp://myserver.com:5000.

Это соответствует опции SOPS --keyservice.

name

string

Имя переменной, в которую нужно назначить включенные переменные.

Если опущено (null) они станут переменными верхнего уровня.

sops_binary

path

added in community.sops 1.0.0

Путь к бинарному файлу SOPS.

По умолчанию используется sops.

Атрибуты

Атрибут

Поддержка

Описание

action

Поддержка: полная

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

async

Поддержка: отсутствует

Это действие выполняется полностью на контроллере.

Поддерживается использование с ключевым словом async.

check_mode

Поддержка: полная

Может работать в режиме check_mode и возвращать прогноз состояния "изменено" без изменения целевого объекта.

diff_mode

Поддержка: N/A

Это действие не изменяет состояние.

Возвращает подробную информацию о том, что изменилось (или, возможно, нуждается в изменении в check_mode), в режиме diff.

facts

Поддержка: полная

Действие возвращает словарь ansible_facts, который обновит существующие факты хоста.

См. также

См. также

ansible.builtin.set_fact

Установить переменную(ые) и факт(ы) хоста.

ansible.builtin.include_vars

Загрузить переменные из файлов динамически в рамках задачи.

Управление местом выполнения задач: делегирование и локальные действия

Дополнительная информация о делегировании задач.

community.sops.sops плагин поиска

Плагин поиска sops может использоваться для расшифровки файлов, зашифрованных с помощью SOPS.

community.sops.decrypt плагин фильтра

Фильтр decrypt можно использовать для расшифровки данных в памяти, зашифрованных с помощью SOPS.

community.sops.sops плагин переменных

Плагин sops vars можно использовать для загрузки зашифрованных переменных хоста или группы SOPS.

Примеры

- name: Include variables of stuff.sops.yaml into the 'stuff' variable
  community.sops.load_vars:
    file: stuff.sops.yaml
    name: stuff
    expressions: evaluate-on-load  # interpret Jinja2 expressions in stuf.sops.yaml on load-time!

- name: Conditionally decide to load in variables into 'plans' when x is 0, otherwise do not
  community.sops.load_vars:
    file: contingency_plan.sops.yaml
    name: plans
    expressions: ignore  # do not interpret possible Jinja2 expressions
  when: x == 0

- name: Load variables into the global namespace
  community.sops.load_vars:
    file: contingency_plan.sops.yaml

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

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

Ключ

Описание

ansible_included_var_files

список / элементы=строка

Список файлов, которые были успешно включены

Возвращается: успех

Пример: ["/path/to/file.sops.yaml"]

Авторы

  • Felix Fontein (@felixfontein)

Ссылки на коллекцию

  • Система отслеживания ошибок
  • Репозиторий (исходный код)
  • Запросить помощь (SOPS)
  • Сообщить об ошибке
  • Запросить функцию
  • Связь

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/sops/load_vars_module.html

Spec-Zone.ru

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