diff --git a/roles/packages/tasks/apt.yml b/roles/packages/tasks/apt.yml new file mode 100644 index 0000000..c732f0d --- /dev/null +++ b/roles/packages/tasks/apt.yml @@ -0,0 +1,23 @@ +--- + +- name: Ensure packages defined in install_packages are installed + apt: + name: "{{ install_packages }}" + state: present + update_cache: yes + +- block: + + - name: Enable backports + apt_repository: + repo: "deb http://deb.debian.org/debian {{ ansible_distribution_release }}-backports main" + filename: backports + + - name: Install backports packages + apt: + name: "{{ backports_packages }}" + state: present + default_release: "{{ ansible_distribution_release }}-backports" + + when: backports_packages is defined + diff --git a/roles/packages/tasks/main.yml b/roles/packages/tasks/main.yml index b5e6742..958a83f 100644 --- a/roles/packages/tasks/main.yml +++ b/roles/packages/tasks/main.yml @@ -1,28 +1,15 @@ --- -- name: Install packages - apt: - name: "{{ install_packages }}" - state: present - update_cache: yes +- name: Include tasks for apt as package manager + include_tasks: apt.yml + when: ansible_pkg_mgr == 'apt' -- block: +- name: Include tasks for other package manager + include_tasks: other.yml + when: ansible_pkg_mgr != 'apt' - - name: Enable backports - apt_repository: - repo: "deb http://deb.debian.org/debian {{ ansible_distribution_release }}-backports main" - filename: backports - - - name: Install backports packages - apt: - name: "{{ backports_packages }}" - state: present - default_release: "{{ ansible_distribution_release }}-backports" - - when: backports_packages is defined - -- name: Delete packages - apt: +- name: Ensure packages defined in delete_packages not installed + package: name: "{{ delete_packages }}" state: absent when: delete_packages is defined diff --git a/roles/packages/tasks/other.yml b/roles/packages/tasks/other.yml new file mode 100644 index 0000000..5abdea2 --- /dev/null +++ b/roles/packages/tasks/other.yml @@ -0,0 +1,7 @@ +--- + +- name: Ensure packages defined in install_packages are installed + package: + name: "{{ install_packages }}" + state: present +