mirror of
				https://github.com/iiab/iiab.git
				synced 2025-03-09 15:40:17 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			114 lines
		
	
	
	
		
			3.5 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			114 lines
		
	
	
	
		
			3.5 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| - name: Install postgresql package
 | |
|   package:
 | |
|     name: postgresql
 | |
|     state: present
 | |
|   #tags: download
 | |
| 
 | |
| - name: Install postgresql-client (debuntu)
 | |
|   package:
 | |
|     name: postgresql-client
 | |
|     state: present
 | |
|   when: is_debuntu | bool
 | |
|   #tags: download
 | |
| 
 | |
| - name: Install postgresql-server (OS's other than debuntu)
 | |
|   package:
 | |
|     name: postgresql-server
 | |
|     state: present
 | |
|   when: not is_debuntu
 | |
|   #tags: download
 | |
| 
 | |
| - 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'
 | |
| 
 | |
| # Probably Not 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 stock postgresql service
 | |
|   systemd:
 | |
|     name: postgresql
 | |
|     state: stopped
 | |
|     enabled: no
 | |
| 
 | |
| - name: Enable & Start postgresql-iiab systemd service, if postgresql_enabled
 | |
|   systemd:
 | |
|     name: postgresql-iiab
 | |
|     state: started
 | |
|     enabled: yes
 | |
|   when: postgresql_enabled | bool
 | |
| 
 | |
| - name: Disable postgresql-iiab service, if not postgresql_enabled
 | |
|   systemd:
 | |
|     name: postgresql-iiab
 | |
|     state: stopped
 | |
|     enabled: no
 | |
|   when: not postgresql_enabled
 | |
| 
 | |
| - name: Add 'postgresql' variable values to {{ iiab_ini_file }}
 | |
|   ini_file:
 | |
|     path: "{{ iiab_ini_file }}"
 | |
|     section: postgresql
 | |
|     option: "{{ item.option }}"
 | |
|     value: "{{ item.value | string }}"
 | |
|   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 }}"
 |