Whether you have automated policies which install printers where they’re needed or have users install them themselves via Self Service, deploying printers in Jamf Pro is fairly painless.
A few times this year however, we’ve run into issues with some of our older printers that required us to replace them with newer models. If you happen to use a print server, however, it can be challenging to simultaneously remove and install new printers via Jamf while using the original printer name with the newly deployed printer.
As a result, I wanted to develop a smoother process for these printer swaps and so that all machines in our environment that had the old printer installed would get the new model without impacting those users’ machines.
Complicating matters in our environment was the fact that we configure several proactive policies for installing printers. In the event a computer in one of our departments or labs does not have all the necessary printer(s) already installed, these policies kick in the next time a computer checks in (every 15 minutes) and reinstalls all applicable printers. I wanted to be sure then to avoid having the old printer reinstalled via these policies once we deployed the new printer.
Additionally, the native “unmap” option in the Jamf Pro Printers payload within Policies requires that the printer name deployed on machines match what’s on the server. However, the new printer I needed to deploy needed to have the same name as the old printer in order to match the same printer queue name on our institution’s print server. I needed to be able to simultaneously uninstall the old printer, reinstall the new printer with the same name, and not unnecessarily impact our users.
Ultimately, I developed the following workflow to accomplish this task:
- Temporarily disable the applicable proactive printer install policies we had configured.
- Change the old printer information in Jamf Pro to something different in order to upload our new printer configuration.
- Create a policy scoped to all computers with the old printer installed to run 1) a script uninstalling the old printer and 2) a printer payload to map (install) the new printer.
- Once successfully deployed, update the applicable proactive printer policies with the new printer and re-enable the policies.
See below the jump for more details.