Назад | Перейти на главную страницу

Ошибка при запуске ansible-роли, усиленной защитой от OpenStack

Анзибельная роль 'ansible-harving' из OpenStack выдает эту ошибку:

ОШИБКА! Ошибка при оценке переменной в пути импорта: {{stig_version}} stig / main.yml.

При использовании статического импорта убедитесь, что все переменные, используемые в их именах, определены в vars / vars_files или extra-vars, переданных из командной строки. Статический импорт не может использовать переменные из фактов или источников инвентаризации, таких как переменные группы или хоста.

Раньше это работало. Я не могу сказать, что сделал что-то, чтобы сломать роль. Я использую ansible 2.6.5 на Ubuntu 18.10 (клиент). Это последняя версия, проверенная сегодня в соответствии с инструкциями OpenStack на https://docs.openstack.org/ansible-haroding/latest/getting-started.html#installing-the-ansible-harpting-role Версия, которая у меня была раньше - которая работала в прошлом, также была сломана, показывая ту же ошибку.

Ошибка, похоже, относится к ansible 2.6.5. Этого не происходит в ansible 2.8.2.

Ошибка, похоже, связана с доступной переменной {{ stig_version }} недоступен для файла https://github.com/openstack/ansible-harden/blame/979805c9043793ab644dddd02091d4dce5ab267c/tasks/main.yml#L55

Переменная устанавливается в ansible-hardening/defaults/main.yml, но согласно сообщению об ошибке этот путь не включается при запуске модуля import_tasks. Данные об авторстве показывают, что модуль include_tasks был намеренно заменен на import_tasks.

Я тестировал переключение на include_tasks в tasks / main.yml, и это исправляет ошибку.

Быстрое исправление, ничего не меняя в роли ansible-hardening код, установить stig_version в vars: раздел вашей пьесы:

vars:
  stig_version: rhel7

Хотя мне удалось исправить ошибку и двигаться дальше, я до сих пор не понимаю, почему она перестала работать менее двух месяцев назад.

Я публикую это здесь на случай, если это поможет другим людям, поскольку в репозитории GitHub не активирована вкладка «Проблемы» - я не смог найти ни одного места, связанного с проектом, где можно было бы отправить сообщение.