- name: Install 'postgresql' package package: name: postgresql state: present - name: Install 'postgresql-client' package (debuntu) package: name: postgresql-client state: present when: is_debuntu | bool - name: Install 'postgresql-server' package (OS's other than debuntu) package: name: postgresql-server state: present when: not is_debuntu - name: Install /etc/systemd/system/postgresql-iiab.service from template template: src: postgresql-iiab.service dest: /etc/systemd/system/postgresql-iiab.service # owner: root # group: root # mode: '0644' - name: Create PostgreSQL data dir /library/pgsql-iiab, owned by postgres:postgres file: path: /library/pgsql-iiab owner: postgres group: postgres mode: '0700' state: directory - name: Make sure locale {{ postgresql_locale }} is enabled (debuntu) # en_US.UTF-8 lineinfile: dest: /etc/locale.gen line: "{{ postgresql_locale }} UTF-8" when: is_debuntu | bool - name: Generate locales (debuntu) command: /usr/sbin/locale-gen when: is_debuntu | bool - name: Initialize the PostgreSQL db, creating /library/pgsql-iiab/pg_hba.conf (debuntu) #command: su - postgres -c "/usr/lib/postgresql/{{ postgresql_version }}/bin/initdb -E 'UTF-8' --locale={{ postgresql_locale }} -D /library/pgsql-iiab" command: /usr/lib/postgresql/{{ postgresql_version }}/bin/initdb -E 'UTF-8' --locale={{ postgresql_locale }} -D /library/pgsql-iiab args: creates: /library/pgsql-iiab/pg_hba.conf become: yes become_user: postgres when: is_debuntu | bool - name: Initialize the PostgreSQL db, creating /library/pgsql-iiab/pg_hba.conf (OS's other than debuntu) #command: su - postgres -c "/usr/bin/initdb -E 'UTF-8' --lc-collate={{ postgresql_locale }} --lc-ctype={{ postgresql_locale }} -D /library/pgsql-iiab" command: /usr/bin/initdb -E 'UTF-8' --lc-collate={{ postgresql_locale }} --lc-ctype={{ postgresql_locale }} -D /library/pgsql-iiab args: creates: /library/pgsql-iiab/pg_hba.conf become: yes become_user: postgres when: not is_debuntu - name: Install /library/pgsql-iiab/postgresql.conf owned by postgres:postgres, from template template: backup: yes src: postgresql.conf.j2 dest: /library/pgsql-iiab/postgresql.conf owner: postgres group: postgres mode: '0640' # Likely No Longer Nec! Given stanza below does the same... #- name: 'Stop postgresql service: /etc/init.d/postgresql stop (debuntu)' # command: "/etc/init.d/postgresql stop" # ignore_errors: True # when: postgresql_install and is_debuntu - name: Disable & Stop stock 'postgresql' systemd service systemd: name: postgresql state: stopped enabled: no # RECORD PostgreSQL AS INSTALLED - name: "Set 'postgresql_installed: True'" set_fact: postgresql_installed: True - name: "Add 'postgresql_installed: True' to {{ iiab_state_file }}" lineinfile: path: "{{ iiab_state_file }}" # /etc/iiab/iiab_state.yml regexp: '^postgresql_installed' line: 'postgresql_installed: True'