HP41.cups

Rol de Ansible: cups

Estado de Construcción

Instala CUPS, instala PPDs necesarios e instala impresoras y clases en CUPS

Instalar y configurar CUPS

  • Instala cups y cups-pdf.
  • Las cuentas definidas en cups_lpadmin_users se añadirán al grupo lpadmin para administrar CUPS.
  • Instala cups-lpd si las variables lo permiten (ver más abajo):
    • Crea una cuenta de usuario que ejecutará el proceso cups-lpd.
    • Instala xinetd para ejecutar cups-lpd como un servicio. Utiliza el archivo de plantilla de cups-lpd para crear la configuración final de xinetd.
  • Configurando CUPS:
    • Si se proporcionan plantillas para cupsd.conf, cups-browsed.conf y snmp.conf, se construirán y se copiarán.
    • Si se proporcionan certificados SSL, se copiarán a la ubicación correcta.

Instalar PPDs

  • Crea /opt/share/ppd donde CUPS busca los PPDs que se copian manualmente.
  • Añade el repositorio de OpenPrinting.
  • Instala el paquete de OpenPrinting de Ricoh - openprinting-ppds-postscript-ricoh
    • También descomprime los PPDs que instala ya que el paquete los instala como archivos gzip en /opt/OpenPrinting-Ricoh/ppds/Ricoh.
  • Instala HPLIP:
    • También instala el complemento propietario de HP usando un script de excepción.
  • Copia los PPDs de la carpeta especificada en cups_ppd_files_to_be_copied a /opt/share/ppd.

Instalar Impresoras

  • Cualquier impresora que se defina para ser eliminada se eliminará primero.
  • Instala las impresoras listadas en la variable cups_printer_list y luego instala las clases listadas en cups_class_list.
    • Ver cups_printer_list y cups_class_list para ver cómo definir cada impresora y objeto de clase en las variables cups_printer_list y cups_class_list, respectivamente.
    • Esto utiliza el módulo cups_lpadmin. Hay documentación/comentarios dentro de él sobre cómo se puede usar.
    • cups_lpadmin es una copia directa de HP41.ansible-modules-extra/system/cups_lpadmin. Una vez que se fusione con el repositorio original, se eliminará de aquí.

Requisitos

  • Ansible >= 2.1
  • Máquina huésped: Debian
    • stretch
    • jessie
    • wheezy
  • Máquina huésped: Ubuntu
    • xenial
    • trusty
    • precise

Posibles tareas adicionales que no son parte de las responsabilidades de este rol.

  • Abrir los puertos necesarios de CUPS - 515 (LPR), 631 (IPP/IPPS), 9100 (IP directo) a través del firewall.
    • Si deseas usar debops.ferm, puedes usar/modificar cups__debops_ferm_dependent_rules (definido en defaults) para pasarlo a debops.ferm.

Variables por defecto que se pueden sobrescribir o usar tal cual al usar este rol:

Instalación y configuración de CUPS:

  • cups_lpadmin_users: Lista de usuarios que deben añadirse al grupo de administración de cups (lpadmin). Por defecto=root.
  • cups_lpd: Si se debe instalar y configurar cups-lpd - Por defecto=True.
  • cups_sysadmins_email: El correo electrónico que se usará para construir la plantilla de cupsd.conf - Por defecto=sysadmins@ansible_fqdn.
  • cups__debops_ferm_dependent_rules: Reglas simples por defecto para abrir puertos (515, 631, 9100) a través del firewall que se pueden referenciar al utilizar el rol debops.ferm.
  • /etc/xinetd.d/cups-lpd
    • cups_lpd_usn: El nombre de usuario con el que se ejecutará el proceso cups-lpd (a través de xinetd) - Por defecto=cupslpd.
  • Plantillas opcionales:
    • Pueden haberse configurado como una simple copia de archivo, pero acceder y añadir variables de ansible en ella no será posible. Con esto, ansible_managed, ansible_fqdn, etc., son accesibles. Las plantillas también podrían ser simples archivos de texto sin declaración de variable y se copiarán.
    • cups_cupsd_conf_template: Para /etc/cups/cupsd.conf.
    • cups_cups_browsed_conf_template: Para /etc/cups/cups-browsed.conf.
    • cups_snmp_conf_template: Para /etc/cups/snmp.conf.

Instalación y copia de PPDs:

  • cups_ppd_files_to_be_copied: La carpeta de donde copiar todos los archivos .ppd - Por defecto=None.
  • cups_hplip: ¿Debería instalar HPLIP? - Por defecto=True.
  • cups_ricoh_openprinting: ¿Debería instalar controladores/PPDs de OpenPrinting-Ricoh? - Por defecto=True.
  • cups_openprinting_apt_required: Se define como un ternario. Controla si se añade la clave y el repositorio de OpenPrinting APT en función de si se están instalando los controladores de Ricoh o no. Se puede sobrescribir fácilmente a tu valor.
  • cups_openprinting_apt_key_id: La ID de la clave APT que se debe obtener del servidor de claves a continuación. Por defecto=24CBF5474CFD1E2F.
  • cups_openprinting_key_server: El servidor de claves para adquirir la clave del repositorio a continuación - Por defecto=keyserver.ubuntu.com.
  • cups_openprinting_repo: El repositorio de OpenPrinting a añadir - Por defecto="deb http://www.openprinting.org/download/printdriver/debian/ lsb3.2 main".

Instalación de impresoras y clases:

  • cups_printer_uri_prefix: Un prefijo de URI para cualquier filtro en la parte superior de la URI - Por defecto="".
  • cups_printer_report_ipp_supplies: Cuando el objeto impresora no tiene el atributo report_ipp_supply_levels, se usa este valor - Por defecto=True.
  • cups_printer_report_snmp_supplies: Cuando el objeto impresora no tiene el atributo report_snmp_supply_levels, se usa este valor - Por defecto=True.
  • cups_printer_is_shared: Cuando el objeto impresora no tiene el atributo shared, se usa este valor - Por defecto=True.
  • cups_class_is_shared: Cuando el objeto clase no tiene el atributo shared, se usa este valor - Por defecto=True.
  • cups_printer_list: Una lista de hashes que contienen la información de la impresora necesaria para instalarlas. Verificar el módulo cups_lpadmin y cómo se utiliza la variable cups_printer_list.
  • cups_class_list: Una lista de hashes que contienen la información de la clase necesaria para instalarlas. Verificar el módulo cups_lpadmin y cómo se utiliza la variable cups_class_list.
  • cups_purge_all_printers_and_classes: ¿Debería el módulo cups_lpadmin purgar/eliminar todas las impresoras antes de continuar?
  • cups_printers_and_classes_to_be_removed: Impresoras y clases que deseas eliminar específicamente.

Variables relacionadas con la operación del rol y la configuración general de CUPS:

  • cups_packages_to_install: Los paquetes CUPS a instalar. Esto se puede sobrescribir para una versión de paquete específica si es necesario - Por defecto=cups, cups-pdf.
  • cups_xinetd_location: La ubicación de los archivos de xinet.d - Por defecto=/etc/xinetd.d.
  • cups_tmp_location: Ubicación temporal que este rol utiliza para copiar archivos y ejecutar scripts. La ubicación se crea si no existe - Por defecto=/tmp/cups-ansible.
  • cups_admin_grp: El grupo que tiene acceso de administrador a CUPS. Esto se referencia al añadir usuarios (si están definidos) a los roles de administración de CUPS - Por defecto=lpadmin.
  • cups_services: Los servicios de CUPS que se referencia al iniciar y detener los servicios de CUPS para propósitos de configuración - Por defecto=cups.
  • cups_etc_location: Ubicación de la configuración de CUPS - Por defecto=/etc/cups.
  • cups_etc_files_perms_owner: Propietario de los archivos colocados por este rol en cups_etc_location - Por defecto=root.
  • cups_etc_files_perms_grp: Membresía de grupo de los archivos colocados por este rol en cups_etc_location - Por defecto=lp.
  • cups_etc_files_mode: Modo de archivo de los archivos colocados por este rol en cups_etc_location - Por defecto=0644.
  • cups_expect_pkgs: Los paquetes relacionados con expect que se instalan para instalaciones no atendidas de diferentes scripts de expect dentro de este rol - Por defecto=expect, python-pexpect.
  • cups_ppd_shared_location: La ubicación estándar compartida donde se pueden colocar PPDs y CUPS los recogerá - Por defecto=/opt/share/ppd.
  • cups_ricoh_ppd_location: La ubicación donde se instalan los PPDs de Ricoh de OpenPrinting - Por defecto=/opt/OpenPrinting-Ricoh/ppds/Ricoh.
Acerca del proyecto

Installs CUPS, installs necessary PPDs and installs printers and classes on CUPS

Instalar
ansible-galaxy install HP41.cups
Licencia
mit
Descargas
1.7k
Propietario