Compare commits

..

1 Commits

5 changed files with 13 additions and 21 deletions

View File

@ -8,7 +8,7 @@ postgresql_config_port: 5432
postgresql_base_config: postgresql_base_config:
listen_addresses: "{{ postgresql_config_listen_addresses }}" listen_addresses: "{{ postgresql_config_listen_addresses }}"
unix_socket_directories: "{{ postgresql_config_unix_socket_directories }}" connect_socket: "{{ postgresql_config_connect_socket }}"
port: "{{ postgresql_config_port }}" port: "{{ postgresql_config_port }}"
postgresql_merged_config: >-2 postgresql_merged_config: >-2
{{ postgresql_base_config | combine( {{ postgresql_base_config | combine(

View File

@ -17,14 +17,15 @@ postgresql_pg_ident_conf_file: >-2
{{ postgresql_config_path }}/pg_ident.conf {{ postgresql_config_path }}/pg_ident.conf
postgresql_pg_hba_conf_file: >-2 postgresql_pg_hba_conf_file: >-2
{{ postgresql_config_path }}/pg_hba.conf {{ postgresql_config_path }}/pg_hba.conf
postgresql_admin_role: "postgres" postgresql_admin_role: "{{ postgresql_user }}"
postgresql_admin_role_contype: local postgresql_admin_role_contype: local
postgresql_admin_role_method: peer postgresql_admin_role_method: peer
postgresql_admin_local_user: >-2 postgresql_admin_local_user: >-2
{{ ansible_facts['user_id'] }} {{ ansible_facts['user_id'] }}
postgresql_admin_role_mapping_name: >-2 postgresql_admin_role_mapping_name: >-2
{{ postgresql_admin_local_user }}_{{ postgresql_admin_role }} {{ postgresql_admin_local_user }}_{{ postgresql_admin_role }}
postgresql_admin_pg_ident_conf: "{{ postgresql_admin_role_mapping_name }}\t{{ postgresql_admin_local_user }}\t{{ postgresql_admin_role }}" postgresql_admin_pg_ident_conf: >-2
{{ postgresql_admin_role_mapping_name }}\t{{ postgresql_admin_local_user }}\t{{ postgresql_admin_role }}
postgresql_admin_pg_hba_conf_options: >-2 postgresql_admin_pg_hba_conf_options: >-2
map={{ postgresql_admin_role_mapping_name }} map={{ postgresql_admin_role_mapping_name }}
postgresql_superuser_password: ~ postgresql_superuser_password: ~

View File

@ -14,31 +14,21 @@
- name: Ensure postgresql configuration is set - name: Ensure postgresql configuration is set
community.postgresql.postgresql_set: community.postgresql.postgresql_set:
name: "{{ option.key }}" name: "{{ option.key }}"
value: "{{ pg_option_value }}" value: "{{ option.value }}"
login_host: "{{ postgresql_login_host }}" login_host: "{{ postgresql_login_host }}"
login_port: "{{ postgresql_config_port }}" login_port: "{{ postgresql_config_port }}"
login_password: "{{ postgresql_superuser_password }}" login_password: "{{ postgresql_superuser_password }}"
loop: "{{ postgresql_merged_config | dict2items }}" loop: "{{ postgresql_merged_options | dict2items }}"
loop_control: loop_control:
loop_var: option loop_var: option
vars:
pg_option_value: >-2
{{
(option.value | join(' '))
if (option.value is iterable
and option.value is not string
and option.value is not mapping)
else option.value
}}
register: postgresql_config_results
- name: Ensure postgresql configuration is reloaded - name: Ensure postgresql configuration is reloaded
community.postgresql.postgresql_query: community.postgresql.postgresql_query:
db: "postgres"
query: "SELECT pg_reload_conf();" query: "SELECT pg_reload_conf();"
login_host: "{{ postgresql_login_host }}" login_host: "{{ postgresql_login_host }}"
login_port: "{{ postgresql_config_port }}" login_port: "{{ postgresql_config_port }}"
login_password: "{{ postgresql_superuser_password }}" login_password: "{{ postgresql_superuser_password }}"
register: postgresql_config_results
- name: Ensure restart handler is fired if required - name: Ensure restart handler is fired if required
debug: debug:
@ -49,7 +39,7 @@
loop: "{{ postgresql_config_results.results }}" loop: "{{ postgresql_config_results.results }}"
loop_control: loop_control:
loop_var: result loop_var: result
label: "{{ result.option.key }}" label: "{{ result.option.name }}"
vars: vars:
postgresql_login_host: >-2 postgresql_login_host: >-2
{{ {{

View File

@ -69,9 +69,10 @@
file: "initialize-docker.yml" file: "initialize-docker.yml"
when: when:
- postgresql_state == 'present' - postgresql_state == 'present'
- not postgresql_global_data_info.stat.exists - postgresql_global_data_info.stat.exists
- postgresql_global_data_info.stat.isdir is defined - postgresql_global_data_info.stat.isdir is defined
- not postgresql_global_data_info.stat.isdir - postgresql_global_data_info.stat.isdir
# TODO: determine if initialization is needed
- name: Ensure postgresql container '{{ postgresql_container_name }}' is {{ postgresql_container_state }} - name: Ensure postgresql container '{{ postgresql_container_name }}' is {{ postgresql_container_state }}
community.docker.docker_container: community.docker.docker_container:

View File

@ -20,7 +20,7 @@
line: "# Ansible managed" line: "# Ansible managed"
- name: "{{ postgresql_pg_ident_conf_file }}" - name: "{{ postgresql_pg_ident_conf_file }}"
insert_after: "# Ansible managed" insert_after: "# Ansible managed"
line: "{{ postgresql_admin_pg_ident_conf }}" line: "{{ ansible_user }}_{{ postgresql_admin_role }}\t{{ ansible_user }}\t{{ postgresql_admin_role }}"
when: postgresql_state == 'present' when: postgresql_state == 'present'
- name: Configure permissions for postgresql admin role - name: Configure permissions for postgresql admin role
@ -29,5 +29,5 @@
contype: "{{ postgresql_admin_role_contype }}" contype: "{{ postgresql_admin_role_contype }}"
users: "{{ postgresql_admin_role }}" users: "{{ postgresql_admin_role }}"
method: "{{ postgresql_admin_role_method }}" method: "{{ postgresql_admin_role_method }}"
options: "{{ postgresql_admin_pg_hba_conf_options }}" options: "map={{ ansible_user }}_{{ postgresql_admin_role }}"
when: postgresql_state == 'present' when: postgresql_state == 'present'