Ошибка добавления нового модуля в существующий плагин ansible - PullRequest
0 голосов
/ 08 июля 2020

Приветствие,

Я сейчас работаю над созданием нового модуля внутри Ansible Crypto plugin. Возникла ситуация, когда редактирование существующего модуля не является вариантом, и мне нужно будет добавить новый модуль для выполнения некоторых криптографических функций через серверные API.

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

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

Сведения о среде -

Host: Ubuntu 18.04
Python3 version: 3.6.9
Ansible: latest devel branch

Этапы создания среды разработки

git clone https://github.com/ansible/ansible.git
cd ~/ansible
. venv/bin/activate
source hacking/env-setup

Детали криптографического модуля

mkdir -p ~/dev/ansible/collections/ansible_collections/community
cd ~/dev/ansible/collections/ansible_collections/community
git clone https://github.com/ansible-collections/community.crypto.git 

export COLLECTIONS_PATHS=~/dev/ansible/collections/
export ANSIBLE_COLLECTIONS_PATHS=~/dev/ansible/collections/
export ANSIBLE_COLLECTIONS_PATH=~/dev/ansible/collections/

Я создал свой модуль с именем my_module.py внутри modules / в каталоге community / crypto / plugins path.

Теперь, когда я пытаюсь использовать новый модуль в качестве роли в моем playbook, я получаю сообщение об ошибке, что my_module не найден . Ниже приведен пример сценария и ошибка.

Использование:

---

- hosts: localhost
  roles:
    - common

И мои задачи main.yml выглядят так, как показано ниже

- name: Some crypto stuff here
  my_module:
  <clipped>

Ошибка: ОШИБКА! не удалось разрешить модуль / действие my_module. Это часто указывает на орфографическую ошибку, отсутствие коллекции или неправильный путь к модулю.

PS: Я также попытался создать новое пространство имен и вытащить туда все, что связано с криптовалютным модулем, с моим собственным файлом. но то же самое, он не может определить, где может быть модуль.

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

AJ

...