taktus.package
Paquet
Un rôle pour gérer des paquets sur différents systèmes d'exploitation.
Ce rôle prend actuellement en charge apt, yum, dnf, brew, zypper, pacman et portage. N'hésitez pas à envoyer une demande de tirage ou de fonctionnalité pour ajouter votre gestionnaire de paquets préféré !
Attention :
- Ce rôle gère les différences de noms entre les gestionnaires de paquets mais pas entre les distributions utilisant le même gestionnaire.
- La couverture des tests est plutôt limitée, donc veuillez signaler les bogues !
Exigences
- Les hôtes doivent être configurés pour l'utilisation d'ansible (avoir python, ...)
- Privilèges root, par exemple
become: yes
Variables du rôle
Variable | Description | Valeur par défaut |
---|---|---|
package_list |
Liste de paquets (voir les détails !) | [] |
package_list_host |
Liste de paquets (voir les détails !) | [] |
package_list_group |
Liste de paquets (voir les détails !) | [] |
package_state |
État par défaut du paquet | 'présent' |
package_update_cache |
Mettre à jour le cache ? | oui |
package_cache_valid_time |
Combien de temps le cache de paquet est-il valide ? (secondes) | 3600 |
Détails de package_list
package_list
, package_list_host
et package_list_group
sont fusionnés lors de la gestion des paquets. Vous pouvez utiliser les listes d'hôtes et de groupes pour spécifier des paquets par hôte ou par groupe.
La liste des paquets vous permet de définir quels paquets doivent être gérés. Chaque élément de la liste peut avoir les attributs suivants :
Variable | Description | requis |
---|---|---|
name |
Nom du paquet | oui |
state |
État du paquet | non |
apt |
Nom du paquet pour apt | non |
apt_ignore |
Ignorer le paquet pour apt | non |
apt_install_recommends |
Installer les dépendances recommandées pour apt ? | non |
yum |
Nom du paquet pour yum | non |
yum_ignore |
Ignorer le paquet pour yum | non |
dnf |
Nom du paquet pour dnf | non |
dnf_ignore |
Ignorer le paquet pour dnf | non |
brew |
Nom du paquet pour brew | non |
brew_ignore |
Ignorer le paquet pour brew | non |
zypper |
Nom du paquet pour zypper | non |
zypper_ignore |
Ignorer le paquet pour zypper | non |
pacman |
Nom du paquet pour pacman | non |
pacman_ignore |
Ignorer le paquet pour pacman | non |
portage |
Nom du paquet pour portage | non |
portage_ignore |
Ignorer le paquet pour portage | non |
Par défaut, package_state
et item.name
sont utilisés lors de la gestion des paquets. Si toutefois item.state
est défini ou si un nom de paquet plus spécifique (par exemple item.apt
) est fourni, ces derniers seront utilisés à la place. Si vous voulez qu'un paquet soit ignoré pour certains gestionnaires de paquets, vous pouvez ajouter ***_ignore
: oui.
Exemple de package_list
package_list:
- name: package
- name: package1
state: absent
- name: package2
apt: package2_apt_name
- name: package3
apt_ignore: yes
yum: package3_yum_name
pacman: package3_pacman_name
portage: package3_portage_name
Dépendances
Aucune.
Exemple de Playbook
---
- hosts: servers
roles:
- { role: GROG.package,
become: yes,
package_list: [
{ name: htop,
brew: htop-osx },
{ name: tree }
]
}
Contributions
Toute aide, modification ou idée est bienvenue !
Auteur
Par G. Roggemans
Licence
MIT