diff --git a/etherpad/tasks/main.yml b/etherpad/tasks/main.yml
index cc221858df8f7fb359c56c6d72a614b2aac51677..5e24249d9f234ec61d38001d0f581769da10ce00 100644
--- a/etherpad/tasks/main.yml
+++ b/etherpad/tasks/main.yml
@@ -71,6 +71,27 @@
   when: item.db_type == 'mysql'
   no_log: true
 
+- name: ensure we have a postgres user for the etherpad
+  postgresql_user:
+    name: "{{item.db_user}}"
+    password: "{{item.db_password}}"
+    state: present
+  become: true
+  become_user: postgres
+  with_items: "{{etherpads}}"
+  when: item.db_type == 'postgres'
+  no_log: true
+
+- name: ensure we have a postgres database for the etherpad
+  postgresql_db:
+    name: "{{item.db_name}}"
+    owner: "{{item.db_user}}"
+    state: present
+  become: true
+  become_user: postgres
+  with_items: "{{etherpads}}"
+  when: item.db_type == 'postgres'
+
 - name: ensure we have a settings file
   template:
     src: settings.json.j2