Skip to content
View grahampugh's full-sized avatar

Organizations

@jssimporter

Block or report grahampugh

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this userโ€™s behavior. Learn more about reporting abuse.

Report abuse
grahampugh/README.md

Currently most active projects ๐Ÿง‘๐Ÿผโ€๐Ÿ’ป

My most popular and demanding project is ๐Ÿ—‚๏ธ erase-install, a zsh script for upgrading, reinstalling and erasing macOS. This was updated significantly in 2022 to use mist-cli and swiftDialog, and has to keep pace with changes to those projects as well as changes to macOS itself.

My other most used project is JamfUploader. This is a collection of python processors for use with AutoPkg which is the dominant method for integrating AutoPkg with Jamf Pro. The project also includes jamf-upload.sh, a script enabling the use of the JamfUploader framework to create or amend all sorts of API objects without having to write AutoPkg recipes.

The JamfUploader processors are also mirrored in my AutoPkg recipes repo, grahampugh-recipes, along with a large collection of recipes and examples of how to write .jamf recipes.

Other notable projects ๐Ÿ“

For those interested in an easy script for setting up AutoPkg on a fresh machine, including (optionally) configuring JamfUploader, check out AutoPkgSetup.

If you need a signed package to add to your MDM to install Rosetta 2 at enrollment, check out Rosetta-2-install.

MSPs, or anyone working with multiple Jamf Pro instances, may be interested in the Multitenant Jamf Tools (MJT), which is a series of scripts using a common framework, designed to perform a range of actions on Jamf Pro instances using the API. This includes jocads.sh, an interactive script with the ability to copy a large range of API objects from one instance to multiple other instances in one go, and jamfuploader-run.sh and autopkg-run.sh, two scripts that wrap on top of AutoPkg and the JamfUploader processors to allow running jamf-upload.sh and AutoPkg recipes on multiple instances at once. There's also mdm-commands.sh, which allows you to run various MDM commands on multiple devices at once. Handily, MJT stores credentials for all your instances in your Keychain, so you only have to provide them once.

If you need to convert PLIST files to YAML, or vice versa, check out plist-yaml-plist.

Deprecations โ˜ ๏ธ

The projects based on python-jss that I inherited from Shea Craig, namely JSSImporter, Spruce, jss_helper, JSSRecipeCreator, and python-jss itself, are all now deprecated. You can still find the code in the JSSImporter organisation.

Pinned Loading

  1. erase-install erase-install Public

    A script that automates downloading macOS installers, and optionally erasing or upgrading macOS in a single process. Watch the video!

    Shell 862 136

  2. jamf-upload jamf-upload Public

    Scripts for uploading packages to Jamf Cloud

    Python 151 40

  3. AutoPkgSetup AutoPkgSetup Public

    A single-script installer for AutoPkg. Optimised for JamfUploader.

    Shell 50 8

  4. multitenant-jamf-tools multitenant-jamf-tools Public

    A suite of tools for performing API actions on multiple Jamf servers/tenants at once

    Shell 13 6

  5. jamf-api-tool jamf-api-tool Public

    Standalone python tool for interacting with the Jamf API.

    Python 3

  6. plist-yaml-plist plist-yaml-plist Public

    Utility to convert plist files to yaml files or vice versa

    Python 54 14