73 lines
1.8 KiB
YAML
73 lines
1.8 KiB
YAML
---
|
|
# tasks file for postgresql
|
|
- name: Install package dependencies
|
|
package:
|
|
name:
|
|
- postgresql
|
|
- postgresql-contrib
|
|
- python3-pip
|
|
- acl
|
|
state: present
|
|
update_cache: yes
|
|
become: true
|
|
- name: Install `psycopg2` driver for postgresql
|
|
pip:
|
|
name: psycopg2-binary
|
|
state: present
|
|
become: true
|
|
- name: Update `listen_address` in `/etc/postgresql/12/main/postgresql.conf`
|
|
lineinfile:
|
|
path: /etc/postgresql/12/main/postgresql.conf
|
|
regexp: ^#listen_addresses = 'localhost'
|
|
line: listen_addresses='*'
|
|
become: true
|
|
- name: Update `pg_hba.conf`
|
|
community.postgresql.postgresql_pg_hba:
|
|
dest: /etc/postgresql/12/main/pg_hba.conf
|
|
contype: host
|
|
users: postgres
|
|
source: 192.168.56.0/24
|
|
method: md5
|
|
create: true
|
|
become: true
|
|
- name: Create new test-database
|
|
become_user: postgres
|
|
become: yes
|
|
community.postgresql.postgresql_db:
|
|
name: test
|
|
- name: Create table `test`.`message`
|
|
become_user: postgres
|
|
become: yes
|
|
community.postgresql.postgresql_table:
|
|
db: test
|
|
name: message
|
|
columns:
|
|
- id bigserial primary key
|
|
- content text
|
|
- name: Copy over dummy-data for `test`.`message`
|
|
copy:
|
|
src: "{{ role_path }}/files/sample.csv"
|
|
dest: /tmp/sample.csv
|
|
- name: Insert sample data into `test`.`message`
|
|
become_user: postgres
|
|
become: yes
|
|
community.postgresql.postgresql_copy:
|
|
copy_from: /tmp/sample.csv
|
|
db: test
|
|
dst: message
|
|
columns: content
|
|
options:
|
|
format: csv
|
|
- name: Update password of postgres user
|
|
become_user: postgres
|
|
become: yes
|
|
community.postgresql.postgresql_user:
|
|
name: postgres
|
|
password: coolshit
|
|
- name: Restart postgresql service
|
|
service:
|
|
name: postgresql
|
|
state: restarted
|
|
enabled: yes
|
|
become: true
|