Как указать файл пароля хранилища для проверки молекулы?

При проведении испытаний с молекулой:

molecule tests

а некоторые файлы защищены с помощью ansible vault, необходимо указать --vault-password-file, чтобы предоставить пароль для расшифровки их содержимого.

Хотя это возможно сделать с помощью сходящихся

 molecule converge -- --vault-password-file ~/.vault.txt

это не с тестами молекулы

 $ molecule test -- --vault-password-file ~/.vault.txt
 Usage: molecule test [OPTIONS]
 Error: Got unexpected extra arguments (--vault-password-file ~/.vault.txt)

1 ответ

Решение

Используя переменную среды ANSIBLE_VAULT_PASSWORD_FILE следующим образом:

ANSIBLE_VAULT_PASSWORD_FILE=$HOME/.vault.txt molecule test

пропустит логику анализа аргументов молекулы и сообщит ansible, где находится пароль хранилища.

Вы можете передать файл с паролями в молекулярную систему через provisioner.config_options.defaults.vault_password_file в вашем файле Molle.yml следующим образом:

provisioner:
name: ansible
config_options:
  defaults:
    vault_password_file: "${MOLECULE_SCENARIO_DIRECTORY}/vault.pw"

где vault.pw это простой текстовый файл, содержащий только ваш пароль (убедитесь, что он хорошо защищен!)

Файл паролей хранилища - это параметр, который передается напрямую в Ansible и определяется здесь.

Другие вопросы по тегам