- name: Читаем version
postgresql_query:
login_host: '{{ inventory_hostname }}'
db: set
query: "SELECT version()"
login_user: "{{ server_db_user | default('postgres') }}"
login_password: "{{ server_db_password | default('postgres') }}"
register: request_changes
delegate_to: localhost
check_mode: false
получаю ошибку:
The full traceback is:
File "/tmp/ansible_postgresql_query_payload_o8ks4ej4/ansible_postgresql_query_payload.zip/ansible/modules/postgresql_query.py", line 299, in main
File "/tmp/ansible_postgresql_query_payload_o8ks4ej4/ansible_postgresql_query_payload.zip/ansible/modules/postgresql_query.py", line 299, in <listcomp>
с сообщением в таске:
"msg": "Cannot fetch rows from cursor: dictionary update sequence element #0 has length 58; 2 is required"
что я делаю не так?
А ты почитай репу, там есть все нужные правки. "Искаропки" не заводится, я же в статье написал.
Приветствую. Все равно не понятно, почему не хочет строки выбирать, то что описали в статье, в файлах уже изменили (исправили). Если возможно, немного еще разжевать, как юзать ? ))
Все круто работает. Спасибо!
Видимо дело как раз в пермишинах, проверьте еще раз свой pg_hba.conf. Попробуйте все-таки выполнять от юзера postgres, переключаясь на него в become_user и цепляться к сокету login_unix_socket: "/var/run/postgresql/.s.PGSQL.5432". Это собственно у Сергея в test.yml и прописано.
Разложу по полочкам. Сценарий согласно параметрам стандартного postgresql_query именно параметр отвечающий за то куда подключаться и параметр delegate_to указывающий что выполнять его надо на локальном хосте. И сам запрос у меня адресован к серверу баз данных установленном на Винде на другой тачке. Насилии вы мне объясните как я должен организовать локальный сокет к порту сервера винды.,
Обсуждают сегодня