aboutsummaryrefslogtreecommitdiffstats
path: root/ansible/roles/postgres
diff options
context:
space:
mode:
authorGravatar Chris Lovering <[email protected]>2023-08-13 14:59:36 +0100
committerGravatar Chris Lovering <[email protected]>2023-08-13 15:54:03 +0100
commit431585b5256a0d08f4f3c33122465a88a93ddcb1 (patch)
tree4cc41cda81655332fa467e6c9c85d1ee9c35b90e /ansible/roles/postgres
parentServe static files from Turing (#116) (diff)
Move all ansible files to their own folder
Diffstat (limited to 'ansible/roles/postgres')
-rw-r--r--ansible/roles/postgres/handlers/main.yml4
-rw-r--r--ansible/roles/postgres/tasks/main.yml34
-rw-r--r--ansible/roles/postgres/vars/main.yml7
3 files changed, 45 insertions, 0 deletions
diff --git a/ansible/roles/postgres/handlers/main.yml b/ansible/roles/postgres/handlers/main.yml
new file mode 100644
index 0000000..a036301
--- /dev/null
+++ b/ansible/roles/postgres/handlers/main.yml
@@ -0,0 +1,4 @@
+- name: Restart postgres.
+ service:
+ name: '{{ postgresql_daemon }}'
+ state: "restarted"
diff --git a/ansible/roles/postgres/tasks/main.yml b/ansible/roles/postgres/tasks/main.yml
new file mode 100644
index 0000000..9551c4e
--- /dev/null
+++ b/ansible/roles/postgres/tasks/main.yml
@@ -0,0 +1,34 @@
+- name: Install postgres packages
+ apt:
+ name:
+ - python3-psycopg2
+ - postgresql-{{ postgresql_version }}
+ - postgresql-contrib-{{ postgresql_version }}
+ - libpq-dev
+ state: present
+ tags:
+ - role::postgres
+
+- name: Check postgres is started and enabled on boot
+ service:
+ name: '{{ postgresql_daemon }}'
+ state: started
+ enabled: true
+ tags:
+ - role::postgres
+
+- name: Add postgres users
+ community.postgresql.postgresql_user: "{{ item }}"
+ with_items: "{{ postgresql_users }}"
+ become: true
+ become_user: "{{ postgresql_user }}"
+ tags:
+ - role::postgres
+
+- name: Add postgres databases
+ community.postgresql.postgresql_db: "{{ item }}"
+ with_items: "{{ postgresql_databases }}"
+ become: true
+ become_user: "{{ postgresql_user }}"
+ tags:
+ - role::postgres
diff --git a/ansible/roles/postgres/vars/main.yml b/ansible/roles/postgres/vars/main.yml
new file mode 100644
index 0000000..ddb483a
--- /dev/null
+++ b/ansible/roles/postgres/vars/main.yml
@@ -0,0 +1,7 @@
+postgresql_version: "15"
+postgresql_daemon: "postgresql@{{ postgresql_version }}-main"
+postgres_user: "postgres"
+
+postgresql_users: []
+
+postgresql_databases: []