Hello.

I was able to solve problem.

It seems, *the rule* from documentation "The ansible.module_utils namespace 
is not a plain Python package: it is constructed dynamically for each task 
invocation, by extracting imports and resolving those matching the 
namespace against a search path 
<https://docs.ansible.com/ansible/latest/dev_guide/overview_architecture.html#ansible-search-path>
 derived 
from the active configuration. "* is not working for action plugins.*

It will be very useful, if information about this point was in ansible 
documentation too.

Regards,
Modest Sokolov


четверг, 6 июня 2019 г., 21:18:31 UTC+3 пользователь Modest Sokolov написал:
>
> Hello,
> I develop the modules for comware5.
>
> They run, when are in ansible standard directoriу, for my installation it 
> is 
> /usr/local/Cellar/ansible/2.8.0/libexec/lib/python3.7/site-packages/ansible/
>
> I've tried to move them in other directories - in ~/.ansible
>
> at running time of ansible-playbook now I've got error:
>
>   File "/usr/local/Cellar/ansible/2.8.0/libexec/lib/python3.7/imp.py", 
> line 171, in load_source
>     module = _load(spec)
>   File "<frozen importlib._bootstrap>", line 696, in _load
>   File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
>   File "<frozen importlib._bootstrap_external>", line 728, in exec_module
>   File "<frozen importlib._bootstrap>", line 219, in 
> _call_with_frames_removed
>   File "/Users/modest/.ansible/plugins/action/comware5_config.py", line 
> 18, in <module>
>     from ansible.module_utils.network.comware5.comware5 import 
> comware5_provider_spec
> *ModuleNotFoundError: No module named 
> 'ansible.module_utils.network.comware5'*
>
>
> In ansible module I've got the string:
>
> from ansible.module_utils.network.comware5.comware5 import 
> comware5_provider_spec
>
>
> The ansible.conf file is empty.
>
> bob@Mac:~/.ansible$ ansible-config dump| grep MODULE_UTILS_PATH
> DEFAULT_MODULE_UTILS_PATH(default) = 
> ['/Users/bob/.ansible/plugins/module_utils', 
> '/usr/share/ansible/plugins/module_utils']
>
> bob@Mac:~/.ansible$ uname -a                  
> Darwin Mac.local 18.6.0 Darwin Kernel Version 18.6.0: Thu Apr 25 23:16:27 
> PDT 2019; root:xnu-4903.261.4~2/RELEASE_X86_64 x86_64
>
>
> bob@Mac:~/.ansible$ tree                                                  
>   
> .
> ├── cp
> ├── modules
> │   └── network
> │       └── comware5
> │           ├── __init__.py
> │           ├── comware5_command.py
> │           └── comware5_config.py
> ├── pc
> ├── *plugins*
> │   ├── action
> │   │   ├── comware5.py
> │   │   ├── comware5_config.py
> │   │   └── comware5_template.py
> │   ├── cliconf
> │   │   └── comware5.py
> │   ├── doc_fragments
> │   │   └── comware5.py
> │   ├── *module_utils*
> │   │   ├── __init__.py
> │   │   ├── comware5.py
> │   │   └── network
> │   │       ├── __init__.py
> │   │       └── *comware5*
> │   │           ├── __init__.py
> │   │           └── comware5.py
> │   ├── netconf
> │   │   └── comware5.py
> │   └── terminal
> │       └── comware5.py
> └── tmp
>
> 15 directories, 15 files
> bob@Mac:~/.ansible$                                                        
>   
>
> Could you please give me advice, why ansible can not import module from 
> DEFAULT_MODULE_UTILS_PATH?
> Where can be my mistake?
>
> Regards,
> Modest
>

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to ansible-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-devel/e96ccd8b-dbaf-4917-ae69-38efcc889329%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to