Перейти к основному содержанию

Ansible — couldn't resolve module/action 'community.general.ini_file'

Ansible

При попытке задеплоить приложение получаю ошибку:

ERROR! couldn't resolve module/action 'community.general.ini_file'. This often indicates a misspelling, missing collection, or incorrect module path.

The error appears to be in '/bla-bla-bla/deploy.yml': line 14, column 3, but may
be elsewhere in the file depending on the exact syntax problem.

The offending line appears to be:

    - name: Configure systemd>=235 (exclude kernel messages)
      ^ here

ansible

Ошибочка на самом деле немного глубже, а именно в строке:

- name: Configure systemd>=235 (exclude kernel messages)
  when: systemd_version | int >= 235
  community.general.ini_file:

Ну нет у ансибла модуля community.general.ini_file. Смотрим версию Ansible:

ansible --version
ansible 2.9.20

Я использую WSL 2 подсистему Windows для Linux, у меня в качестве вертуальной машины Ubuntu 20. И там максимальная системная версия Ansible 2.9.20. И даже модуль стоит community.general, но в нём нет ini_file.

https://docs.ansible.com/ansible/latest/collections/community/general/ini_file_module.html

ansible

Данный модуль является частью коллекции community.general версии 8.3.0.

https://galaxy.ansible.com/ui/repo/published/community/general/

ansible

Коллекция community.general 8.3.0 имеет требования: Requires Ansible >=2.13.0. Получается, мне нужен более свежий Ansible.

И коллеги мне подсказывают:

А и не надо системный ансибл пользовать!

И решение:

apt install python3-pip python3-venv
python3 -m venv .venv
source .venv/bin/activate
pip install ansible

ansible

ansible --version
ansible 2.13.13

ansible

Вот теперь нормальная версия.

И, на всякий случай:

ansible-galaxy collection install community.general

Теги

 

Похожие материалы

Kubernetes: Up & Running (3-е издание)

Brendan Burns, Joe Beda, Kelsey Hightower, Lachlan Evenson
Kubernetes радикально меняет способ создания и развертывания приложений в облаке. С момента своего появления в 2014 году Kubernetes стал одним из крупнейших и самых популярных проектов с открытым исходным кодом в мире. Обновлённое издание этой книги показывает разработчикам, как Kubernetes и контейнерные технологии помогают достичь новых уровней скорости, гибкости, надёжности и эффективности.

Теги

Эффективность DevOps. Создание рабочей культуры DevOps в нужном масштабе

Jennifer Davis и Ryn Daniels
DevOps позволяет организациям быстрее и надежнее предоставлять программное обеспечение. Но чтобы достичь желаемых результатов, важно понимать, что для внедрения эффективной практики DevOps недостаточно просто освоить новые методики и технологии.

Теги