taktus.package

Paquet

Ansible Galaxy État de la construction Dernière étiquette Discussion Gitter

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

À propos du projet

A role for installing packages on different operating systems.

Installer
ansible-galaxy install taktus.package
Licence
mit
Téléchargements
112
Propriétaire