Files
cms/roles/setup_database/tasks/main.yml
ytshih bf6ac11888
All checks were successful
Ansible Playbook lint / ansible-lint (push) Successful in 35s
Initial commit
2024-12-19 10:25:37 +08:00

43 lines
1.1 KiB
YAML

---
- name: Init PostgreSQL
ansible.builtin.command: |
initdb --locale=C.UTF-8 --encoding=UTF8 -D /var/lib/postgres/data
args:
creates: /var/lib/postgres/data/PG_VERSION
become: true
become_user: postgres
- name: Start and enable postgres
ansible.builtin.systemd_service:
name: postgresql.service
state: started
enabled: true
- name: Setup postgres
become: true
become_user: postgres
block:
- name: Create cmsuser
community.postgresql.postgresql_user:
name: cmsuser
password: "{{ password }}"
environment:
PGOPTION: '-c password_encryption=scram-sha-256'
- name: Create cmsdb
community.postgresql.postgresql_db:
db: cmsdb
owner: cmsuser
- name: Configure privileges
community.postgresql.postgresql_privs:
db: cmsdb
role: cmsuser
privs: ALL
objs: ALL_IN_SCHEMA
- name: CMS init DB
ansible.builtin.shell: |
sudo -iu cmsuser <<EOF
cmsInitDB
EOF
become: true
become_user: cmsuser
register: ret
changed_when: ret.rc != 0