mirror of
https://github.com/iiab/iiab.git
synced 2025-02-13 11:42:08 +00:00
102 lines
3 KiB
YAML
102 lines
3 KiB
YAML
- name: Install PostgreSQL packages
|
|
package: name={{ item }}
|
|
state=present
|
|
with_items:
|
|
- postgresql
|
|
tags:
|
|
- download
|
|
|
|
- name: Install PostgreSQL for Debian
|
|
package: name=postgresql-client
|
|
when: is_debuntu
|
|
tags:
|
|
- download
|
|
|
|
- name: Install PostgreSQL for Fedora
|
|
package: name=postgresql-server
|
|
when: not is_debuntu
|
|
tags:
|
|
- download
|
|
|
|
- name: Create postgresql-iiab systemd service
|
|
template: src=postgresql-iiab.service
|
|
dest=/etc/systemd/system/postgresql-iiab.service
|
|
owner=root
|
|
group=root
|
|
mode=0644
|
|
|
|
- name: Create postgres data directory
|
|
file: path=/library/pgsql-iiab
|
|
owner=postgres
|
|
group=postgres
|
|
mode=0700
|
|
state=directory
|
|
|
|
- name: Make sure that the en_US locale is enabled
|
|
lineinfile: dest=/etc/locale.gen
|
|
line="{{ postgresql_locale }} UTF-8"
|
|
when: is_debuntu
|
|
|
|
- name: Generate the selected locales
|
|
command: /usr/sbin/locale-gen
|
|
when: is_debuntu
|
|
|
|
- name: Initialize the postgres db
|
|
command: su - postgres -c "/usr/lib/postgresql/{{ postgresql_version }}/bin/initdb -E 'UTF-8' --locale={{ postgresql_locale }} -D /library/pgsql-iiab"
|
|
creates=/library/pgsql-iiab/pg_hba.conf
|
|
when: is_debian
|
|
|
|
- name: Initialize the postgres db
|
|
command: su - postgres -c "/usr/lib/postgresql/9.5/bin/initdb -E 'UTF-8' --locale={{ postgresql_locale }} -D /library/pgsql-iiab"
|
|
creates=/library/pgsql-iiab/pg_hba.conf
|
|
when: is_ubuntu
|
|
|
|
- name: Initialize the postgres db
|
|
command: su - postgres -c "/usr/bin/initdb -E 'UTF-8' --lc-collate={{ postgresql_locale }} --lc-ctype={{ postgresql_locale }} -D /library/pgsql-iiab"
|
|
creates=/library/pgsql-iiab/pg_hba.conf
|
|
when: not is_debuntu
|
|
|
|
- name: Configure PostgreSQL
|
|
template: backup=yes
|
|
src=postgresql.conf.j2
|
|
dest=/library/pgsql-iiab/postgresql.conf
|
|
owner=postgres
|
|
group=postgres
|
|
mode=0640
|
|
|
|
- name: Stop postgresql service
|
|
command: "/etc/init.d/postgresql stop"
|
|
ignore_errors: True
|
|
when: postgresql_install and is_debuntu
|
|
|
|
- name: Stop and disable stock postgresql service
|
|
service: name=postgresql
|
|
state=stopped
|
|
enabled=no
|
|
|
|
- name: Start and enable postgresql-iiab service
|
|
service: name=postgresql-iiab
|
|
state=started
|
|
enabled=yes
|
|
when: postgresql_enabled
|
|
|
|
- name: Stop and disable postgresql service if not postgresql_enabled
|
|
service: name=postgresql
|
|
state=stopped
|
|
enabled=no
|
|
when: not postgresql_enabled
|
|
|
|
- name: Add postgresql to service list
|
|
ini_file: dest='{{ service_filelist }}'
|
|
section=postgresql
|
|
option='{{ item.option }}'
|
|
value='{{ item.value }}'
|
|
with_items:
|
|
- option: name
|
|
value: postgresql
|
|
- option: description
|
|
value: '"PostgreSQL is a powerful, open source object-relational database system."'
|
|
- option: installed
|
|
value: "{{ postgresql_install }}"
|
|
- option: enabled
|
|
value: "{{ postgresql_enabled }}"
|