2023-02-09 21:49:13 +00:00
- name : Install deps packages
apt :
name : "{{ postgresql_deps_packages }}"
state : present
update_cache : yes
- name : Add gpg keys for PostgreSQL repo
ansible.builtin.apt_key :
url : "{{ item.url }}"
keyring : "{{ item.keyring }}"
loop : "{{ postgresql_apt_key }}"
- name : Add PostgreSQL repository
ansible.builtin.apt_repository :
repo : "{{ item.repo }}"
state : present
filename : "{{ item.filename }}"
update_cache : yes
loop : "{{ postgresql_apt_repository }}"
- name : Gather packages
package_facts :
manager : auto
- name : Set fact about PostgreSQL package
set_fact :
postgresql_installed_package : "{{ ansible_facts.packages[postgresql_package_name][0]['name'] }}"
when : postgresql_package_name in ansible_facts.packages
2023-02-10 11:34:38 +00:00
- name : Print installed PostgreSQL version
debug :
2023-02-09 21:49:13 +00:00
msg : "{{ ansible_facts.packages[postgresql_package_name][0]['version'] }}"
2023-02-10 11:34:38 +00:00
verbosity : 2
2023-02-09 21:49:13 +00:00
when : postgresql_installed_package is defined
- name : Mask PostgreSQL before install
ansible.builtin.systemd :
name : "{{ postgresql_unit_name }}"
masked : yes
when : postgresql_package_name not in ansible_facts.packages or ansible_facts.packages[postgresql_package_name][0]['version'] != (postgresql_version + "-" + postgresql_version_build)
- name : "Install {{ postgresql_package_name }}-{{ postgresql_version }}-{{ postgresql_version_build }}"
apt :
name : "{{ postgresql_package }}"
update_cache : yes
register : postgresql_setup
when : postgresql_package_name not in ansible_facts.packages
- name : "Update {{ postgresql_package_name }}-{{ postgresql_version }}-{{ postgresql_version_build }}"
apt :
name : "{{ postgresql_package }}"
update_cache : yes
register : postgresql_update
notify : Restart PostgreSQL
when :
- postgresql_package_name in ansible_facts.packages
- ansible_facts.packages[postgresql_package_name][0]['version'] != (postgresql_version + "-" + postgresql_version_build)