Failed to import the required Python library (psycopg2)

5,078 views
Skip to first unread message

zil...@gmail.com

unread,
Jun 15, 2021, 11:27:53 AM6/15/21
to Ansible Project
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

Wei-Yen Tan

unread,
Jun 15, 2021, 11:30:30 AM6/15/21
to ansible...@googlegroups.com
Install that python module psycopg2 on the local machine. You haven’t got the dependency installed


From: ansible...@googlegroups.com <ansible...@googlegroups.com> on behalf of zil...@gmail.com <zil...@gmail.com>
Sent: Wednesday, June 16, 2021 3:27:53 AM
To: Ansible Project <ansible...@googlegroups.com>
Subject: [ansible-project] Failed to import the required Python library (psycopg2)
 
--
You received this message because you are subscribed to the Google Groups "Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ansible-proje...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/49f98c01-1655-45e2-92d3-93a1047fbac5n%40googlegroups.com.
Message has been deleted

Wei-Yen Tan

unread,
Jun 15, 2021, 4:42:26 PM6/15/21
to ansible...@googlegroups.com
Pip install pyscopg2 --user. I think 


Sent: Wednesday, June 16, 2021 8:40:37 AM
To: Ansible Project <ansible...@googlegroups.com>
Subject: Re: [ansible-project] Failed to import the required Python library (psycopg2)
 
I was reading that installing Postgres (why I mentioned I installed in both my Mac and Linux node) would've installed the module, but apparently not.

Chris

zil...@gmail.com

unread,
Jun 15, 2021, 4:43:19 PM6/15/21
to Ansible Project
Per https://stackoverflow.com/questions/33866695/error-installing-psycopg2-on-macos-10-9-5, installing Postgres should've installed it? That's why I mentioned that I did install it.

Chris

Felix Fontein

unread,
Jun 15, 2021, 5:06:28 PM6/15/21
to ansible...@googlegroups.com
Hi,

> Per
> https://stackoverflow.com/questions/33866695/error-installing-psycopg2-on-macos-10-9-5,
> installing Postgres should've installed it? That's why I mentioned
> that I did install it.

I cannot find that information on that link. If you are referencing the
first answer (https://stackoverflow.com/a/33866865), it says "pg_config
should come with postgres and psycopg2 is trying to find it." - that
does NOT say that psycopg2 comes with it, but that it needs pg_config,
which in turn comes with postgres.

Cheers,
Felix


zil...@gmail.com

unread,
Jun 15, 2021, 5:11:30 PM6/15/21
to Ansible Project
Hmmm, I did tis on both Mac and Linux node. It helped on my Linux node but not on the Mac, that is, I don't the Failed to import the required Python library (psycopg2) on the Linux node, but I still get it on the Mac.

$ python3 -m pip install psycopg2-binary

Defaulting to user installation because normal site-packages is not writeable

Collecting psycopg2-binary

  Using cached psycopg2_binary-2.8.6-cp38-cp38-macosx_10_9_x86_64.macosx_10_9_intel.macosx_10_10_intel.macosx_10_10_x86_64.whl (1.5 MB)

Installing collected packages: psycopg2-binary

Successfully installed psycopg2-binary-2.8.6


zil...@gmail.com

unread,
Jun 15, 2021, 5:12:26 PM6/15/21
to Ansible Project
Ok my bad, I misead..
Reply all
Reply to author
Forward
0 new messages