On Ubuntu Linux node
$ ansible --version
ansible [core 2.11.1]
config file = /home/jenkins/.ansible.cfg
configured module search path = [‘/home/jenkins/.ansible/plugins/modules’, ‘/usr/share/ansible/plugins/modules’]
ansible python module location = /home/jenkins/.local/lib/python3.8/site-packages/ansible
ansible collection location = /home/jenkins/.ansible/collections:/usr/share/ansible/collections
executable location = /home/jenkins/.local/bin/ansible
python version = 3.8.0 (default, Feb 25 2021, 22:10:10) [GCC 8.4.0]
jinja version = 2.10
libyaml = False
On my Macbook
$ ansible --version
ansible 2.10.8
config file = /Users/user/.ansible.cfg
configured module search path = [‘/Users/user/.ansible/plugins/modules’, ‘/usr/share/ansible/plugins/modules’]
ansible python module location = /usr/local/Cellar/ansible/3.3.0/libexec/lib/python3.9/site-packages/ansible
executable location = /usr/local/bin/ansible
python version = 3.9.4 (default, Apr 5 2021, 01:50:46) [Clang 12.0.0 (clang-1200.0.32.29)]
I have installed postgresql on BOTH ny Linux node and my Mac.
I’m testing this task, where I want to run the query on a Windows host.
- name: Run a query
postgresql_query:
login_host: “{{ ansible_hostname }}”
login_password: “{{ pg_db_password }}”
db: “pg_user”
query: “SELECT * from pg_user”
delegate_to: localhost
And I get the following when running the playbook either on my Macbook, or on a Linux node.
TASK [qa-db-backup : Run a query] ********************************************** fatal: [10.227.xx.xx → localhost]: FAILED! => {“changed”: false, “msg”: “Failed to import the required Python library (psycopg2) on linux-node-0’s Python /usr/local/bin/python. Please read the module documentation and install it in the appropriate location. If the required library is installed, but Ansible is using the wrong Python interpreter, please consult the documentation on ansible_python_interpreter”}
Any clues?
Thanks,
Chris