r/postgresql-server-base: Factor out prep steps
There's a bit of a dependency loop between the _postgresql-server_ role and other roles that supplement it, like _wal-g-pg_ and _postgresql-cert_. The latter roles need PostgreSQL installed, but when those roles are used, the server cannot be started until they have been applied. To resolve this situation, I've broken out the initial installation steps from the _postgresql-server_ role into _postgresql-server-base_. Roles that need PostgreSQL installed, but need to be applied before the server can start, can depend on this role.
This commit is contained in:
3
roles/postgresql-cert/meta/main.yml
Normal file
3
roles/postgresql-cert/meta/main.yml
Normal file
@@ -0,0 +1,3 @@
|
||||
dependencies:
|
||||
- systemd-base
|
||||
- postgresql-server-base
|
||||
@@ -2,7 +2,6 @@
|
||||
package:
|
||||
name:
|
||||
- certbot
|
||||
- postgresql-server # to get postgres user account
|
||||
state: present
|
||||
tags:
|
||||
- install
|
||||
|
||||
38
roles/postgresql-server-base/tasks/main.yml
Normal file
38
roles/postgresql-server-base/tasks/main.yml
Normal file
@@ -0,0 +1,38 @@
|
||||
- name: ensure postgresql-server is installed
|
||||
package:
|
||||
name:
|
||||
- postgresql-server
|
||||
- postgresql-upgrade
|
||||
state: present
|
||||
tags:
|
||||
- install
|
||||
|
||||
- name: ensure postgresql-upgrade script is installed
|
||||
copy:
|
||||
src: postgresql-upgrade.sh
|
||||
dest: /usr/local/libexec/postgresql-upgrade
|
||||
owner: root
|
||||
group: root
|
||||
mode: u=rwx,go=rx
|
||||
tags:
|
||||
- postgresql-upgrade
|
||||
- name: ensure postgresql-upgrade systemd unit is installed
|
||||
copy:
|
||||
src: postgresql-upgrade.service
|
||||
dest: /etc/systemd/system/postgresql-upgrade.service
|
||||
owner: root
|
||||
group: root
|
||||
mode: u=rw,go=r
|
||||
notify:
|
||||
- reload systemd
|
||||
tags:
|
||||
- postgresql-upgrade
|
||||
- systemd
|
||||
|
||||
- name: ensure postgresql-upgrade service starts when needed
|
||||
service:
|
||||
name: postgresql-upgrade
|
||||
enabled: true
|
||||
tags:
|
||||
- postgresql-upgrade
|
||||
- service
|
||||
@@ -1,2 +1,3 @@
|
||||
dependencies:
|
||||
- systemd-base
|
||||
- postgresql-server-base
|
||||
|
||||
@@ -1,12 +1,3 @@
|
||||
- name: ensure postgresql-server is installed
|
||||
package:
|
||||
name:
|
||||
- postgresql-server
|
||||
- postgresql-upgrade
|
||||
state: present
|
||||
tags:
|
||||
- install
|
||||
|
||||
- name: restore postgresql data directory from backup
|
||||
command: >-
|
||||
{{ postgresql_restore_command }}
|
||||
@@ -132,35 +123,6 @@
|
||||
tags:
|
||||
- systemd
|
||||
|
||||
- name: ensure postgresql-upgrade script is installed
|
||||
copy:
|
||||
src: postgresql-upgrade.sh
|
||||
dest: /usr/local/libexec/postgresql-upgrade
|
||||
owner: root
|
||||
group: root
|
||||
mode: u=rwx,go=rx
|
||||
tags:
|
||||
- postgresql-upgrade
|
||||
- name: ensure postgresql-upgrade systemd unit is installed
|
||||
copy:
|
||||
src: postgresql-upgrade.service
|
||||
dest: /etc/systemd/system/postgresql-upgrade.service
|
||||
owner: root
|
||||
group: root
|
||||
mode: u=rw,go=r
|
||||
notify:
|
||||
- reload systemd
|
||||
tags:
|
||||
- postgresql-upgrade
|
||||
- systemd
|
||||
|
||||
- name: ensure postgresql-upgrade service starts when needed
|
||||
service:
|
||||
name: postgresql-upgrade
|
||||
enabled: true
|
||||
tags:
|
||||
- postgresql-upgrade
|
||||
- service
|
||||
- name: ensure postgresql starts at boot
|
||||
service:
|
||||
name: postgresql
|
||||
|
||||
Reference in New Issue
Block a user