rivimey.ansible_cups

Ansible Role: CUPS

Build Status

Overview

This role will set up CUPS (Common Unix Printing System), ensuring all required PPDs (PostScript Printer Description files) are installed, along with printers and classes.

What it does:

  1. Install and Configure CUPS:

    • Installs cups and cups-pdf.
    • Adds users listed in cups_lpadmin_users to the lpadmin group for administration.
    • Installs cups-lpd if allowed, which involves creating a user for it and setting up the xinetd service.
    • Configures CUPS using provided templates, and if SSL certificates are given, copies them to the right place.
  2. Install PPDs:

    • Creates the /opt/share/ppd directory for PPDs.
    • Adds the OpenPrinting repository.
    • Installs Ricoh OpenPrinting package and extracts the PPD files.
    • Installs HPLIP and its proprietary plugin.
    • Copies additional PPDs from specified folders.
  3. Install Printers:

    • Removes any printers marked for deletion.
    • Installs printers and classes specified in cups_printer_list and cups_class_list.

Requirements

  • Ansible version 2.1 or higher.
  • Compatible guest machines: Debian (stretch, jessie, wheezy), Ubuntu (xenial, trusty, precise), CentOS (7.4).

Additional Tasks (Optional)

  • Open necessary CUPS ports (515, 631, 9100) in the firewall. You can use/depend on debops.ferm for this.

Default Variables

For CUPS Installation and Configuration:

  • cups_lpadmin_users: Users to add to the admin group. Default is root.
  • cups_lpd: Install and set up cups-lpd? Default is True.
  • cups_sysadmins_email: Email for configurations. Default is sysadmins@ansible_fqdn.
  • cups__debops_ferm_dependent_rules: Default rules for opening ports.
  • Other variables for templates and configurations.

For PPD Installation:

  • cups_ppd_files_to_be_copied: Folder with PPD files. Default is None.
  • Variables for HPLIP and installing OpenPrinting packages.

For Printer and Class Installation:

  • General settings for printers and classes including URI prefix, supply reports, and lists of printers and classes.

General Role Operation:

  • Various default variables like cups_packages_to_install, cups_services, cups_tmp_location, and file permission settings.

This role simplifies CUPS setup, taking care of installation and configuration based on specified parameters.

Informazioni sul progetto

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

Installa
ansible-galaxy install rivimey.ansible_cups
Licenza
mit
Download
163
Proprietario
Software engineer from Cambridge, UK. Background in C/C++ mostly working with Python, PHP code these days. Hobbies: maps, Drupal, transport history & more.