printer-create.yml 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. ---
  2. - name: Install CUPS and create a print queue
  3. hosts:
  4. gather_facts: no
  5. vars:
  6. print_packages:
  7. -
  8. -
  9. print_services:
  10. -
  11. -
  12. print_ports:
  13. -
  14. queue_name: "local_print_queue_name"
  15. device_uri: "URI_to_remote_print_queue"
  16. tasks:
  17. - name: Install the CUPS and Avahi packages
  18. yum:
  19. name: "{{ print_packages }}"
  20. state:
  21. - name: Enable and start the CUPS and Avahi services
  22. systemd:
  23. name: "{{ item }}"
  24. state:
  25. enabled:
  26. loop: "{{ print_services }}"
  27. - name: Open the mDNS firewall port
  28. firewalld:
  29. service: "{{ item }}"
  30. state:
  31. permanent:
  32. immediate:
  33. loop: "{{ print_ports }}"
  34. - name: Check if print queue already exists
  35. command:
  36. register: cmdout
  37. ignore_errors: true
  38. changed_when: false
  39. - name: Create the print queue
  40. command:
  41. when: cmdout.rc != 0
  42. - name: Check default printer
  43. command:
  44. register: curr_dest
  45. changed_when: false
  46. - name: Make the new print queue the default
  47. command:
  48. when: curr_dest['stdout'] | regex_replace('^(.*):.') != queue_name