rivimey.ansible_cups
Rôle Ansible : cups
Installe CUPS, les PPD nécessaires et les imprimantes et classes sur CUPS
Installer et configurer CUPS
- Installe
cups
etcups-pdf
- Les comptes définis dans
cups_lpadmin_users
seront ajoutés au groupelpadmin
pour administrer CUPS. - Installe
cups-lpd
si les variables le permettent (voir ci-dessous) :- Crée un compte utilisateur qui exécutera le processus cups-lpd.
- Installe
xinetd
pour exécuter cups-lpd en tant que service. Utilise le fichier modèle cups-lpd pour créer la configuration finale de xinetd.
- Configuration de CUPS :
- Si des modèles pour cupsd.conf, cups-browsed.conf et snmp.conf sont fournis, ils seront construits et copiés.
- Si des certificats SSL sont fournis, ils seront copiés à l'emplacement approprié.
Installer les PPD
- Crée
/opt/share/ppd
où CUPS recherche les PPD qui sont copiés manuellement. - Ajoute le dépôt OpenPrinting.
- Installe le paquet OpenPrinting Ricoh -
openprinting-ppds-postscript-ricoh
- Dézippe également les PPD qu'il installe, car ils sont installés sous forme de fichiers gzip dans
/opt/OpenPrinting-Ricoh/ppds/Ricoh
- Dézippe également les PPD qu'il installe, car ils sont installés sous forme de fichiers gzip dans
- Installe HPLIP :
- Installe également le plugin propriétaire HP en utilisant un script d'exception.
- Copie les PPD du dossier si spécifié dans
cups_ppd_files_to_be_copied
vers/opt/share/ppd
Installer les imprimantes
- Toutes les imprimantes définies pour être supprimées seront d'abord supprimées.
- Installe les imprimantes listées dans la variable
cups_printer_list
, puis installe les classes listées danscups_class_list
.- Voir cups_printer_list et cups_class_list pour voir comment définir chaque imprimante et classe dans la variable
cups_printer_list
etcups_class_list
, respectivement. - Cela utilise le module cups_lpadmin. Il y a de la documentation/commentaires sur son utilisation.
- cups_lpadmin est une copie directe de HP41.ansible-modules-extra/system/cups_lpadmin. Une fois qu'il sera fusionné en amont, il sera supprimé d'ici.
- Voir cups_printer_list et cups_class_list pour voir comment définir chaque imprimante et classe dans la variable
Exigences
- Ansible >= 2.1
- Machine invitée : Debian
- stretch
- jessie
- wheezy
- Machine invitée : Ubuntu
- xenial
- trusty
- precise
- Machine invitée : CentOS
- 7.4
Tâches supplémentaires possibles qui ne font pas partie des responsabilités de ce rôle.
- Ouvrir les ports CUPS nécessaires - 515 (LPR), 631 (IPP/IPPS), 9100 (IP directe) à travers le pare-feu.
- Si vous souhaitez utiliser debops.ferm, vous pouvez utiliser/modifier
cups__debops_ferm_dependent_rules
(défini dans les défauts) pour les transmettre à debops.ferm.
- Si vous souhaitez utiliser debops.ferm, vous pouvez utiliser/modifier
Variables par défaut qui peuvent être remplacées ou utilisées telles quelles lors de l'utilisation de ce rôle :
Installation et configuration de CUPS :
cups_lpadmin_users
: Liste des utilisateurs à ajouter au groupe admin de CUPS (lpadmin
). Par défaut = rootcups_lpd
: Indique s'il faut installer et configurer cups-lpd - Par défaut =True
cups_sysadmins_email
: L'email utilisé pour construire le modèle cupsd.conf - Par défaut =sysadmins@ansible_fqdn
cups__debops_ferm_dependent_rules
: Règles simples par défaut pour ouvrir les ports (515, 631, 9100) à travers le pare-feu qui peuvent être référencées lors de l'utilisation du rôle debops.ferm.- /etc/xinetd.d/cups-lpd
cups_lpd_user
: Le nom d'utilisateur sous lequel le processus cups-lpd sera exécuté (via xinetd) - Par défaut =cupslpd
- Modèles optionnels :
- Ils auraient pu être configurés comme une simple copie de fichier, mais accéder et ajouter des variables ansible à cela ne sera pas possible. Avec ce ansible_managed, ansible_fqdn, etc. sont accessibles. Les modèles peuvent aussi être de simples fichiers texte sans déclaration de variable et seront copiés.
cups_cupsd_conf_template
: Pour /etc/cups/cupsd.confcups_cups_browsed_conf_template
: Pour /etc/cups/cups-browsed.confcups_snmp_conf_template
: Pour /etc/cups/snmp.conf
Installation et copie des PPD :
cups_ppd_files_to_be_copied
: Le dossier d'où copier tous les fichiers .ppd - Par défaut = Nonecups_hplip
: Indique s'il faut installer HPLIP - Par défaut =True
cups_ricoh_openprinting
: Indique s'il faut installer les pilotes/PPD OpenPrinting-Ricoh - Par défaut =True
cups_openprinting_apt_required
: Ceci est défini comme un ternaire. Cela contrôle si la clé APT et le dépôt OpenPrinting sont ajoutés en fonction des pilotes Ricoh étant installés ou non. Cela peut être facilement remplacé par votre valeur.cups_openprinting_apt_key_id
: L'ID de clé APT à obtenir à partir du serveur de clés ci-dessous. Par défaut = 24CBF5474CFD1E2Fcups_openprinting_key_server
: Le serveur de clés pour acquérir la clé du dépôt ci-dessous - Par défaut = keyserver.ubuntu.comcups_openprinting_apt_repo
: Le dépôt OpenPrinting à ajouter pour Debian / Ubuntu - Par défaut = "deb http://www.openprinting.org/download/printdriver/debian/ lsb3.2 main"cups_openprinting_yum_repo
: Le dépôt OpenPrinting à ajouter pour RedHat / CentOS - Par défaut = "http://www.openprinting.org/download/printdriver/components/lsb3.2/main/RPMS"
Installation des imprimantes et classes :
cups_printer_uri_prefix
: Un préfixe URI pour tout filtre sur le dessus de l'URI - Par défaut = ""cups_printer_report_ipp_supplies
: Lorsque l'objet imprimante n'a pas l'attributreport_ipp_supply_levels
, cette valeur est utilisée - Par défaut =True
cups_printer_report_snmp_supplies
: Lorsque l'objet imprimante n'a pas l'attributreport_snmp_supply_levels
, cette valeur est utilisée - Par défaut =True
cups_printer_is_shared
: Lorsque l'objet imprimante n'a pas l'attributshared
, cette valeur est utilisée - Par défaut =True
cups_class_is_shared
: Lorsque l'objet classe n'a pas l'attributshared
, cette valeur est utilisée - Par défaut =True
cups_printer_list
: Une liste de hachages contenant les informations de l'imprimante nécessaires pour les installer. Veuillez consulter le module cups_lpadmin et comment la variable cups_printer_list est utilisée.cups_class_list
: Une liste de hachages contenant les informations de la classe nécessaires pour les installer. Veuillez consulter le module cups_lpadmin et comment la variable cups_class_list est utilisée.cups_purge_all_printers_and_classes
: Le module cups_lpadmin doit-il purger/supprimer toutes les imprimantes avant de continuer.cups_printers_and_classes_to_be_removed
: Imprimantes et classes que vous souhaitez supprimer spécifiquement.
Variables liées au fonctionnement du rôle et à la configuration générale de CUPS :
cups_packages_to_install
: Les paquets CUPS à installer. Cela peut être remplacé pour une version de paquet spécifique si nécessaire - Par défaut =cups, cups-pdf
cups_xinetd_location
: L'emplacement des fichiers xinet.d - Par défaut =/etc/xinetd.d
cups_tmp_location
: Emplacement temporaire utilisé par ce rôle pour copier des fichiers et exécuter des scripts. L'emplacement est créé s'il n'existe pas - Par défaut =/tmp/cups-ansible
cups_admin_group
: Le groupe qui a accès en admin à CUPS. Ceci est référencé lors de l'ajout d'utilisateurs (si défini) aux rôles admins de CUPS - Par défaut =lpadmin
cups_services
: Le(s) service(s) CUPS référencés lors du démarrage et de l'arrêt des services CUPS à des fins de configuration - Par défaut =cups
cups_etc_location
: Emplacement de la configuration CUPS - Par défaut =/etc/cups
cups_etc_files_perms_owner
: Propriétaire des fichiers placés par ce rôle souscups_etc_location
- Par défaut =root
cups_etc_files_perms_group
: Appartenance au groupe des fichiers placés par ce rôle souscups_etc_location
- Par défaut =lp
cups_etc_files_mode
: Mode de fichier des fichiers placés par ce rôle souscups_etc_location
- Par défaut =0644
cups_expect_packages
: Les paquets liés à expect qui sont installés pour des installations non supervisées de différents scripts expect dans ce rôle - Debian - Par défaut =expect, python-pexpect
, RedHat - Par défaut =expect, pexpect
cups_ppd_shared_location
: L'emplacement standard partagé où les PPD peuvent être placés et que CUPS récupérera - Par défaut =/opt/share/ppd
cups_ricoh_ppd_location
: L'emplacement où les PPD Ricoh d'OpenPrinting sont installés - Par défaut =/opt/OpenPrinting-Ricoh/ppds/Ricoh
À propos du projet
Installs CUPS, installs necessary PPDs and installs printers and classes on CUPS
Installer
ansible-galaxy install rivimey.ansible_cups
Licence
mit
Téléchargements
163
Propriétaire
Software engineer from Cambridge, UK. Background in C/C++ mostly working with Python, PHP code these days. Hobbies: maps, Drupal, transport history & more.