The error message:
ERROR! Unexpected Exception, this is probably a bug: cannot pickle ‘module’ object
I was accessing a new collection, icinga.icinga, and it complained so I decided to update… huge mistake. Now I can’t keep track of what I have and why this error is happening. I’m guessing I need to route out the 2.9 version but wanted some advice before i go… into the valley below.
Thanks for any tips…
Chris.
The current state of things:
ansible --version
ansible 2.9.0
config file = /Users/user/Documents/code/gitlab/devops/ansible/base/ansible.cfg
configured module search path = [‘/Users/user/.ansible/plugins/modules’, ‘/usr/share/ansible/plugins/modules’]
ansible python module location = /usr/local/lib/python3.9/site-packages/ansible
executable location = /usr/local/bin/ansible
python version = 3.9.13 (main, Aug 7 2022, 01:33:23) [Clang 13.1.6 (clang-1316.0.21.2.5)]
python3 -m pip show ansible
Name: ansible
Version: 6.2.0
Summary: Radically simple IT automation
Home-page: https://ansible.com/
Author: Ansible, Inc.
Author-email: info@ansible.com
License: GPLv3+
Location: /Users/user/Library/Python/3.9/lib/python/site-packages
Requires: ansible-core
Required-by:
~/Documents/code/gitlab/devops/ansible/base | python3 -m pip show ansible-core
Name: ansible-core
Version: 2.13.2
Summary: Radically simple IT automation
Home-page: https://ansible.com/
Author: Ansible, Inc.
Author-email: info@ansible.com
License: GPLv3+
Location: /Users/user/Library/Python/3.9/lib/python/site-packages
Requires: cryptography, jinja2, packaging, PyYAML, resolvelib
Required-by: ansible
The Details:
I was running a simple ping just to test the accessibility of the hosts in my hosts file. The same happens on any hosts file…
ansible -vvv all -m ping -i hosts/myhosts.yml
ansible 2.9.0
config file = /Users/user/Documents/code/gitlab/devops/ansible/base/ansible.cfg
configured module search path = [‘/Users/user/.ansible/plugins/modules’, ‘/usr/share/ansible/plugins/modules’]
ansible python module location = /usr/local/lib/python3.9/site-packages/ansible
executable location = /usr/local/bin/ansible
python version = 3.9.13 (main, Aug 7 2022, 01:33:23) [Clang 13.1.6 (clang-1316.0.21.2.5)]
Using /Users/user/Documents/code/gitlab/devops/ansible/base/ansible.cfg as config file
host_list declined parsing /Users/user/Documents/code/gitlab/devops/ansible/base/hosts/hosts_deva.yml as it did not pass its verify_file() method
script declined parsing /Users/user/Documents/code/gitlab/devops/ansible/base/hosts/hosts_deva.yml as it did not pass its verify_file() method
Parsed /Users/user/Documents/code/gitlab/devops/ansible/base/hosts/hosts_deva.yml inventory source with yaml plugin
META: ran handlers
ERROR! Unexpected Exception, this is probably a bug: cannot pickle ‘module’ object
the full traceback was:
Traceback (most recent call last):
File “/usr/local/bin/ansible”, line 123, in
exit_code = cli.run()
File “/usr/local/lib/python3.9/site-packages/ansible/cli/adhoc.py”, line 165, in run
result = self._tqm.run(play)
File “/usr/local/lib/python3.9/site-packages/ansible/executor/task_queue_manager.py”, line 240, in run
play_return = strategy.run(iterator, play_context)
File “/usr/local/lib/python3.9/site-packages/ansible/plugins/strategy/linear.py”, line 310, in run
self._queue_task(host, task, task_vars, play_context)
File “/usr/local/lib/python3.9/site-packages/ansible/plugins/strategy/init.py”, line 343, in _queue_task
worker_prc.start()
File “/usr/local/lib/python3.9/site-packages/ansible/executor/process/worker.py”, line 96, in start
return super(WorkerProcess, self).start()
File “/usr/local/Cellar/python@3.9/3.9.13_2/Frameworks/Python.framework/Versions/3.9/lib/python3.9/multiprocessing/process.py”, line 121, in start
self._popen = self._Popen(self)
File “/usr/local/Cellar/python@3.9/3.9.13_2/Frameworks/Python.framework/Versions/3.9/lib/python3.9/multiprocessing/context.py”, line 224, in _Popen
return _default_context.get_context().Process._Popen(process_obj)
File “/usr/local/Cellar/python@3.9/3.9.13_2/Frameworks/Python.framework/Versions/3.9/lib/python3.9/multiprocessing/context.py”, line 284, in _Popen
return Popen(process_obj)
File “/usr/local/Cellar/python@3.9/3.9.13_2/Frameworks/Python.framework/Versions/3.9/lib/python3.9/multiprocessing/popen_spawn_posix.py”, line 32, in init
super().init(process_obj)
File “/usr/local/Cellar/python@3.9/3.9.13_2/Frameworks/Python.framework/Versions/3.9/lib/python3.9/multiprocessing/popen_fork.py”, line 19, in init
self._launch(process_obj)
File “/usr/local/Cellar/python@3.9/3.9.13_2/Frameworks/Python.framework/Versions/3.9/lib/python3.9/multiprocessing/popen_spawn_posix.py”, line 47, in _launch
reduction.dump(process_obj, fp)
File “/usr/local/Cellar/python@3.9/3.9.13_2/Frameworks/Python.framework/Versions/3.9/lib/python3.9/multiprocessing/reduction.py”, line 60, in dump
ForkingPickler(file, protocol).dump(obj)
TypeError: cannot pickle ‘module’ object