Ansible-role-postgresql: Se requiere el módulo psycopg2 (módulo presente)

Creado en 27 jul. 2018  ·  6Comentarios  ·  Fuente: geerlingguy/ansible-role-postgresql

  1. la lista de pip muestra psycopg2 (2.7.5)
  2. yum muestra este paquete python-psycopg2-2.7.5-1.rhel7.x86_64 ya instalado y la última versión
    2a: python --versión: Python 2.7.5
  3. Ansible yml tiene esto:
  roles:
    - role: ansible-role-postgresql
      become: yes
      postgresql_enablerepo: "pgdg96"
      postgresql_restarted_state: "restarted"
      postgresql_python_library: python-psycopg2
      postgresql_bin_path: /usr/pgsql-9.6/bin
      postgresql_daemon: postgresql-9.6.service 
  1. El error arrojado es este:

TASK [ansible-role-postgresql : Ensure PostgreSQL databases are present.] **************************************************************************** failed: [clpaxd-iwh01.na.ad.rrd.com] (item={u'owner': u'manifold', u'login_user': u'manifold', u'name': u'manifoldcf', u'login_password': u'manifold'}) => {"changed": false, "item": {"login_password": "manifold", "login_user": "manifold", "name": "manifoldcf", "owner": "manifold"}, "msg": "the python psycopg2 module is required"}
Ambiente:

  1. Centos 7
  2. Python 2.7.5
  3. ansible 2.7.0.dev0 (estable-2.6 28d0a173db) última actualización 2018/06/25 12:12:39 (GMT -500)

¿Algúna idea de cómo arreglar esto?

stale

Comentario más útil

Ya tenía instalado python3-psycopg2 pero aún falló;
postgresql_python_library: python3-psycopg2

Así que agregué lo siguiente a mi libro de jugadas;
ansible_python_interpreter: / usr / bin / python3

Parece que por defecto solo usó / usr / bin / python

En debian 10;
/ usr / bin / python --version
Python 2.7.16

Todos 6 comentarios

prueba con pip install -U --no-cache-dir --force psycopg2

Es un poco molesto darse cuenta de este error, ya que no_log se está utilizando en los casos en los que aparece, por ejemplo, creando usuarios, ocultando el problema real.

Personalmente lo arreglé usando package para instalar python3-psycopg2 antes de que se importe el rol de Postgres.

Hilo antiguo (pero abierto) mismo problema aquí en Ubuntu. la eliminación de no_log me dio el mensaje de error del paquete faltante. Después de la instalación manual de psycopg2, la tarea para los usuarios está funcionando. Un paso adicional para instalar el paquete de Python requerido debería resolver el problema.

Ya tenía instalado python3-psycopg2 pero aún falló;
postgresql_python_library: python3-psycopg2

Así que agregué lo siguiente a mi libro de jugadas;
ansible_python_interpreter: / usr / bin / python3

Parece que por defecto solo usó / usr / bin / python

En debian 10;
/ usr / bin / python --version
Python 2.7.16

Este problema se ha marcado como "obsoleto" debido a la falta de actividad reciente. Si no hay más actividad, el problema se cerrará en otros 30 días. ¡Gracias por tu contribución!

Lea esta publicación de blog para ver las razones por las que marco los problemas como obsoletos.

Este problema se ha cerrado por inactividad. Si cree que se trata de un error, vuelva a abrir el problema o presente un nuevo problema con los detalles relevantes.

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

GoodBoy962 picture GoodBoy962  ·  10Comentarios

FilBot3 picture FilBot3  ·  18Comentarios

NiftyMist picture NiftyMist  ·  5Comentarios

worldofchris picture worldofchris  ·  8Comentarios

breml picture breml  ·  9Comentarios