cans.package-install

cans.package-install

Statut de la compilation Ansible Galaxy Licence

Rôle Ansible simple qui installe une liste donnée de paquets Debian (.deb).

L'objectif de ce rôle n'est pas d'être trop complexe. C'est plutôt une méthode d'installation de paquets minimaliste mais efficace et réutilisable. C'est essentiellement une procédure qui, lorsqu'on lui donne une liste de paquets, les installe.

Exigences

Ce rôle n'a pas de pré-requis particulier. Mais il suppose que le(s) serveur(s) cible(s) utilisent la distribution Debian ou un dérivé.

Variables du rôle

Toutes les variables de ce rôle sont préfixées avec pkginstall_.

Ce rôle définit également des variables pour son usage interne. Celles-ci sont préfixées avec _pkginstall_. Vous ne devez pas les utiliser.

Variables d'entrée

Pour que ce rôle puisse effectuer une tâche, vous devez définir soit pkginstall_packages_absent, soit pkginstall_packages_present.

  • pkginstall_packages: DÉCONSEILLÉ Utilisez pkginstall_package_present à la place (par défaut : []);
  • pkginstall_packages_present: une liste de noms de paquets à s'assurer qui sont installés sur le(s) hôte(s) cible(s) (par défaut : []);
  • pkginstall_packages_absent: une liste de noms de paquets à s'assurer qui ne sont pas installés sur le(s) hôte(s) cible(s) (par défaut : []);

Valeurs par défaut

  • pkginstall_apt_package_list_cache_directory: chemin vers le répertoire qui stocke les listes de paquets disponibles et les contenus des listes de paquets. Cette variable est nécessaire uniquement si vous définissez pkginstall_cache_purge à true (voir ci-dessous). Il est très improbable que vous ayez besoin de modifier cela. (par défaut : "/var/lib/apt/lists")
  • pkginstall_cache_ttl: durée de validité du cache des paquets, en secondes (par défaut : 3600)
  • pkginstall_cache_update: si le cache des paquets doit être mis à jour ou non avant d'installer les paquets (par défaut : true)
  • pkginstall_purge: lors de la suppression de paquets, supprimez également leurs fichiers de configuration (par défaut : true);
  • pkginstall_recommended: si les paquets recommandés doivent être installés en plus des paquets explicitement listés pour installation (par défaut : false).
  • pkginstall_update_cache: DÉCONSEILLÉ utilisez pkginstall_cache_update à la place (par défaut : true)

Dépendances

Ce rôle n'a pas de dépendances formelles. Mais il vous demande de remplacer la variable pkginstall_packages pour effectuer des tâches.

Vous pourriez également être intéressé par l'utilisation du rôle cans.package-source en conjonction avec celui-ci, pour ajouter des dépôts de paquets supplémentaires à ceux déjà connus par APT.

Exemples de Playbooks

Supposons que vous ayez deux rôles, first_role et second_role, chacun définissant une variable qui contient une liste de paquets à installer, appelons-les first_role_packages et second_role_packages, respectivement. Vous pouvez ensuite, pour utiliser ce rôle, commencer par assigner la variable pkginstall_packages avec la concaténation des deux listes. Ensuite, il suffit d'appeler le rôle.

- hosts: servers
  vars:
    pkginstall_packages: "{{ first_role_packages + second_role_packages }}"
  roles:
    - role: cans.package-install
    - role: first_role
    - role: second_role

Si pour une raison quelconque vous ne pouvez pas installer tous les paquets à la fois (par exemple parce que first_role installe ou configure quelque chose nécessaire avant de pouvoir installer les paquets requis par second_role):

- hosts: servers
  roles:
    - role: cans.package-install
      pkginstall_packages: "{{ first_role_packages }}"
    - role: first_role
    - role: cans.package-install
      pkginstall_packages: "{{ second_role_packages }}"
    - role: second_role

Les exemples ci-dessus supposent qu'Ansible se connecte aux serveurs cibles avec une identité ayant suffisamment de privilèges pour installer des paquets. Sinon, vous devez peut-être utiliser l'un ou l'autre des mots-clés remote_user et become :

- hosts: servers
  remote_user: "utilisateur-privilegié"
  vars:
    pkginstall_packages: "{{ first_role_packages + second_role_packages }}"
  roles:
    - role: cans.package-install
      become: yes
    - role: first_role
    - role: second_role

Licence

GPLv2

Informations sur l'auteur

Copyright © 2017-2018, Nicolas CANIART.

À propos du projet

Simple Ansible Role that installs a given list of Debian packages (`.deb`).

Installer
ansible-galaxy install cans.package-install
Licence
gpl-2.0
Téléchargements
536
Propriétaire