forked from ISTI-ansible-roles/ansible-roles
postgresql: manage the change of the data directory.
This commit is contained in:
parent
ae515277ad
commit
9e343a0bf1
|
@ -1,14 +1,31 @@
|
|||
---
|
||||
- name: Create the postgresql data directory if it is not in the default place
|
||||
file: dest={{ psql_data_dir }} owner=postgres group=postgres mode=700 recurse=yes state=directory
|
||||
when: psql_use_alternate_data_dir
|
||||
tags: [ 'postgresql', 'postgres', 'pg_conf' ]
|
||||
- block:
|
||||
- name: Check if the new postgresql data directory exists
|
||||
stat: path={{ psql_data_dir }}
|
||||
register: postgresql_data_dir
|
||||
|
||||
- name: Stop the postgresql service while reconfiguring the data directory
|
||||
service: name=postgresql state=stopped
|
||||
when: postgresql_data_dir.stat.isdir is not defined
|
||||
|
||||
- name: Create the postgresql data directory if it is not in the default place
|
||||
file: dest={{ psql_data_dir }} owner=postgres group=postgres mode=700 recurse=yes state=directory
|
||||
|
||||
- name: Set the postgresql data dir if it is different from the default
|
||||
become: True
|
||||
become_user: postgres
|
||||
action: configfile path={{ psql_conf_dir }}/postgresql.conf key=data_directory value="'{{ psql_data_dir }}'"
|
||||
|
||||
- name: Copy the postgresql data directory into the new place
|
||||
shell: '[ "/var/lib/postgresql/{{ psql_version }}/main" != "{{ psql_data_dir }}" ] && cp -a /var/lib/postgresql/{{ psql_version }}/main/* {{ psql_data_dir }}'
|
||||
args:
|
||||
creates: '{{ psql_data_dir }}/main/base'
|
||||
when: postgresql_data_dir.stat.isdir is not defined
|
||||
|
||||
- name: Start the postgresql service that will use the new data directory
|
||||
service: name=postgresql state=started
|
||||
when: postgresql_data_dir.stat.isdir is not defined
|
||||
|
||||
- name: Set the postgresql data dir if it is different from the default
|
||||
become: True
|
||||
become_user: postgres
|
||||
action: configfile path={{ psql_conf_dir }}/postgresql.conf key=data_directory value="'{{ psql_data_dir }}'"
|
||||
notify: Restart postgresql
|
||||
when: psql_use_alternate_data_dir
|
||||
tags: [ 'postgresql', 'postgres', 'pg_conf' ]
|
||||
|
||||
|
|
Loading…
Reference in New Issue