salt-states/printers.sls

37 lines
1.3 KiB
Plaintext
Raw Permalink Normal View History

# "ClassroomColor": "Dell C2660dn Color Laser PS",
{% set printers = {
"ClassroomColor_HP": "HP LJ300-400 color M351-M451 PCL6 Class Driver",
"Classroom_MFP": "Brother MFC-9970CDW Printer"
}
%}
# install all printer driver inf files
"PNPUtil.exe /add-driver \\\\ucs\\software\\drivers\\printers\\*.inf /subdirs /install":
2022-10-05 14:30:38 -04:00
cmd.run:
- shell: powershell
# TODO: ideally would actually check for success better
- success_retcodes: [1]
2022-10-05 14:30:38 -04:00
{% for printer, driver in printers.items() %}
2022-10-05 14:30:38 -04:00
# add the driver as a printer driver
"Add-PrinterDriver -Name '{{ driver }}'":
2022-10-05 14:30:38 -04:00
cmd.run:
- shell: powershell
- unless: Get-PrinterDriver -Name '{{ driver }}'
2022-10-05 14:30:38 -04:00
# add the printer
"Add-Printer -Name '{{ printer | replace('_', ' ')}}' -PortName 'http://ucs.sawtooth.claremontmakerspace.org:631/printers/{{ printer }}' -DriverName '{{ driver }}'":
cmd.run:
- shell: powershell
- unless: Get-Printer -Name '{{ printer | replace('_', ' ') }}'
{% endfor %}
# enable duplexer for Classroom HP
"Set-PrinterProperty -PrinterName 'ClassroomColor HP' -PropertyName Config:DuplexUnit -Value Installed":
2022-10-05 14:30:38 -04:00
cmd.run:
- shell: powershell
- unless:
- if ($(Get-PrinterProperty -PrinterName "ClassroomColor HP" -PropertyName Config:DuplexUnit).value -eq "Installed") { exit 0 } else { exit 1 }