Hi, I trying to add new hba_records using pg_hba_module but got this error:
`
failed: [pg-12] (item={‘hba_database’: ‘test-db’, ‘hba_users’: ‘johndoe’, ‘hba_connection_type’: ‘host’, ‘hba_source’: ‘0.0.0.0/0’, ‘hba_method’: ‘trust’}) => {“ansible_loop_var”: “item”, “changed”: false, “item”: {“hba_connection_type”: “host”, “hba_database”: “test-db”, “hba_method”: “trust”, “hba_source”: “0.0.0.0/0”, “hba_users”: “johndoe”}, “msg”: "value of method must be one of: trust, reject, md5, password, gss, sspi, krb5, ident, peer, ldap, radius, cert, pam, scram-sha-256, got: trust "}
`
this is what my vars.yml looks like:
`
- hba_records:
- hba_database: test-db
hba_users: johndoe
hba_connection_type: host
hba_source: 0.0.0.0/0
hba_method: trust
- hba_database: test-db
hba_users: alexsong
hba_connection_type: host
hba_source: 0.0.0.0/0
hba_method: trust
`
my ansible info:
`
➜ ~ ansible --version
ansible 2.9.5
config file = None
configured module search path = [‘/Users/MASKED/.ansible/plugins/modules’, ‘/usr/share/ansible/plugins/modules’]
ansible python module location = /Users/MASKEd/Library/Python/3.7/lib/python/site-packages/ansible
executable location = /Users/MASKED/Library/Python/3.7/bin/ansible
python version = 3.7.5 (default, Nov 1 2019, 02:16:23) [Clang 11.0.0 (clang-1100.0.33.8)]
`
racke
(Stefan Hornburg)
2
Hi, I trying to add new hba_records using pg_hba_module
<https://docs.ansible.com/ansible/latest/modules/postgresql_pg_hba_module.html> but got this error:
>
failed:[pg-12](item={'hba_database':'test-db','hba_users':'johndoe','hba_connection_type':'host','hba_source':'0.0.0.0/0','hba_method':'trust'})=>{"ansible_loop_var":"item","changed":false,"item":{"hba_connection_type":"host","hba_database":"test-db","hba_method":"trust","hba_source":"0.0.0.0/0","hba_users":"johndoe"},"msg":"value
of method must be one of: trust, reject, md5, password, gss, sspi, krb5, ident, peer, ldap, radius, cert, pam,
scram-sha-256, got: trust "}
>
this is what my vars.yml looks like:
>
-hba_records:
-hba_database:test-db
hba_users:johndoe
hba_connection_type:host
hba_source:0.0.0.0/0
hba_method:trust
-hba_database:test-db
hba_users:alexsong
hba_connection_type:host
hba_source:0.0.0.0/0
hba_method:trust
>
my ansible info:
Hello Ikshan,
the module expects the parameters without the hba_ prefix as clearly stated in the documentation and shown in the examples.
Regards
Racke
Hi stefan, sorry I forgot to put my playbook, here what it looks like
`
- name: PostgreSQL | Add new HBA records.
become: yes
postgresql_pg_hba:
dest: “{{ postgresql_hba_file_path }}”
contype: “{{ item.hba_connection_type }}”
users: “{{ item.hba_users }}”
source: “{{ item.hba_source }}”
databases: “{{ item.hba_database | default(omit) }}”
method: "{{ item.hba_method }} "
notify: restart postgresql
loop: “{{ hba_records }}”
when: setup_hba == true
`
so basically I want to add multiple records, so I create some loops.
racke
(Stefan Hornburg)
4
Hi stefan, sorry I forgot to put my playbook, here what it looks like
>
- name: PostgreSQL | Add new HBA records.
become: yes
postgresql_pg_hba:
dest: "{{ postgresql_hba_file_path }}"
contype: "{{ item.hba_connection_type }}"
users: "{{ item.hba_users }}"
source: "{{ item.hba_source }}"
databases: "{{ item.hba_database | default(omit) }}"
method: "{{ item.hba_method }} "
notify: restart postgresql
loop: "{{ hba_records }}"
when: setup_hba == true
>
Maybe the trailing space in
method: "{{ item.hba_method }} "
causes the problem ?
Regards
Racke
No, it is not the problem, I tried removing whitespace, and it still errors.
Is that the same error?
Because @Stefan Hornburg (Racke) is right, if you look closely at the
FIRST error:
"msg": "value of method must be one of: trust, reject, md5, password,
gss, sspi, krb5, ident, peer, ldap, radius, cert, pam, scram-sha-256,
got: trust "}
You can see that it has an extra space at the end.
If you say you have fixed that, then whatever error is left must be different.
Did you forget to post the new error?
I solve the problem by change double quote to single quote in the task that render item from loop.