54 lines
1.2 KiB
YAML
54 lines
1.2 KiB
YAML
---
|
|
- name: Set postgresql installation directory
|
|
set_fact:
|
|
psql_dir: '/etc/postgresql/{{ psql.version }}/main/'
|
|
|
|
- name: Install postgresql
|
|
apt:
|
|
update_cache: true
|
|
name: postgresql
|
|
state: present
|
|
register: apt_result
|
|
retries: 3
|
|
until: apt_result is succeeded
|
|
|
|
- name: Ensure main postgresql directory exists
|
|
file:
|
|
path: '{{ psql_dir }}'
|
|
state: directory
|
|
owner: postgres
|
|
group: postgres
|
|
mode: 0755
|
|
|
|
- name: Ensure configuration directory exists
|
|
file:
|
|
path: '{{ psql_dir }}/conf.d'
|
|
state: directory
|
|
owner: postgres
|
|
group: postgres
|
|
mode: 0755
|
|
|
|
- name: Configuration of postgresql {{ psql.version }}
|
|
template:
|
|
src: postgresql/postgresql.conf.j2
|
|
dest: '{{ psql_dir }}/postgresql.conf'
|
|
mode: 0640
|
|
owner: postgres
|
|
group: postgres
|
|
notify:
|
|
- restart postgresql
|
|
|
|
- name: Master of configuration of postgresql {{ psql.version }}
|
|
template:
|
|
src: 'postgresql/{{ item }}.j2'
|
|
dest: '{{ psql_dir }}/{{ item }}'
|
|
mode: 0640
|
|
owner: postgres
|
|
group: postgres
|
|
loop:
|
|
- pg_hba.conf
|
|
- pg_ident.conf
|
|
notify:
|
|
- restart postgresql
|
|
when: 'not(psql.replica | default(False))'
|