69 lines
2.2 KiB
YAML
69 lines
2.2 KiB
YAML
---
|
|
- name: Enable COPR repositories
|
|
community.general.copr:
|
|
name: "{{ item.repo | default(item) }}"
|
|
state: enabled
|
|
loop: "{{ (copr_install | default([])) + (apps_copr | default([])) }}"
|
|
become: true
|
|
|
|
- name: Add DNF repositories
|
|
ansible.builtin.yum_repository:
|
|
name: "{{ item.name }}"
|
|
description: "{{ item.description | default(omit) }}"
|
|
baseurl: "{{ item.baseurl | default(omit) }}"
|
|
metalink: "{{ item.metalink | default(omit) }}"
|
|
enabled: "{{ item.enabled | default(true) }}"
|
|
metadata_expire: "{{ item.metadata_expire | default(omit) }}"
|
|
gpgcheck: "{{ item.gpgcheck | default(true) }}"
|
|
repo_gpgcheck: "{{ item.repo_gpgcheck | default(omit) }}"
|
|
gpgkey: "{{ item.gpgkey | default(omit) }}"
|
|
loop: "{{ (dnf_repos_add | default([])) + (apps_dnf_repos_add | default([])) }}"
|
|
become: true
|
|
|
|
- name: Add DNF repository files
|
|
ansible.builtin.get_url:
|
|
url: "{{ item.url | default(item) }}"
|
|
dest: "/etc/yum.repos.d/{{ (item.url | default(item)) | basename }}"
|
|
owner: root
|
|
group: root
|
|
mode: '0644'
|
|
loop: "{{ (dnf_repofiles_add | default([])) + (apps_dnf_repofiles_add | default([])) }}"
|
|
become: true
|
|
|
|
- name: Remove DNF repositories
|
|
ansible.builtin.yum_repository:
|
|
name: "{{ item }}"
|
|
state: absent
|
|
loop: "{{ dnf_repos_remove | default([]) }}"
|
|
become: true
|
|
|
|
- name: Install remote RPM packages (from URLs)
|
|
ansible.builtin.dnf:
|
|
name: "{{ (dnf_install_remote | default([])) + (apps_dnf_install_remote | default([])) + (apps_packages_remote | default([])) }}"
|
|
state: present
|
|
disable_gpg_check: true
|
|
become: true
|
|
when: ((dnf_install_remote | default([])) + (apps_dnf_install_remote | default([])) + (apps_packages_remote | default([]))) | length > 0
|
|
|
|
- name: Remove unwanted packages
|
|
ansible.builtin.dnf:
|
|
name: "{{ item }}"
|
|
state: absent
|
|
autoremove: true
|
|
loop: "{{ dnf_remove | default([]) }}"
|
|
failed_when: false
|
|
become: true
|
|
|
|
- name: Install packages
|
|
ansible.builtin.dnf:
|
|
name: "{{ apps_all_packages }}"
|
|
state: present
|
|
skip_broken: true
|
|
become: true
|
|
|
|
- name: Update all packages
|
|
ansible.builtin.dnf:
|
|
name: "*"
|
|
state: latest # noqa package-latest
|
|
skip_broken: true
|
|
become: true |