Skip to main content
Jamf Nation, hosted by Jamf, is a dynamic and knowledgeable community of Apple-focused IT admins and Jamf Pro users. Join us in person, in October, for the annual Jamf Nation User Conference (JNUC) to discover new and better ways to manage Apple devices.
CCA Badge CMA Badge

Introducing Patchoo! Deploy

Say hi to Patchoo! Deploy.

As most admins are (or are wanting to) jumping off the imaging wagon, and moving to a policy based build process.

I wondered if I could leverage some of Patchoo's existing function and provide a deployment framework.

Well I did... and here's a first look.

http://www.rehrehreh.com/files/hi-patchoo-deploy.html

Jump on the "deploy" fork if you are brave!

Like Comment
SOLVED Posted: 9/19/14 at 12:01 AM by calumhunter

Amazeballs this looks awesome

Like
CCA Badge CMA Badge
SOLVED Posted: 9/21/14 at 6:43 PM by loceee

Thanks bud! And I haven't forgotten our other little secret project. https://github.com/patchoo/jss-autopkg-addon

Like
CCA Badge CJA Badge CMA Badge
SOLVED Posted: 9/24/14 at 9:02 AM by franton

So i've been reading through this for a couple days now (the joys of being unemployed) and i've come to the inevitable conclusion that this is a work of hideous genius. I wish i'd known about this a couple years ago!

Like
CCA Badge CMA Badge
SOLVED Posted: 9/24/14 at 7:33 PM by loceee

Well, it didn't exist a couple of years a go if that makes you feel better. :)

Like
CCA Badge CCE Badge CJA Badge
SOLVED Posted: 9/25/14 at 10:01 AM by iJake

I'm going to have to give this a spin. I plan to move our "imaging" to the thin model this year. Thanks for putting this together.

Like
CCA Badge CCE Badge CJA Badge
SOLVED Posted: 9/25/14 at 10:11 AM by iJake

First comment after just starting to go through is that it seems to me that Patchoo and Patchoo deploy should be split into two different scripts. It makes this script very busy especially when running through where you set the custom variables.

Like
CCA Badge CMA Badge
SOLVED Posted: 9/29/14 at 2:23 PM by loceee

Agreed but by design I wanted it to be a single script you can call from the JSS.

There is a bunch of shared code and functions between the different modes, so breaking it up would be difficult to manage. Perhaps it could be attacked by installing common libraries to the clients. Again it shouldn't be written in bash. :) I might look at that once the code settles down. But I think that adds a fair bit of complexity. I do like the casper friendly design of it being a single script stored in the JSS. But am open to suggestions and understand it could be a bit overwhelming.

Planning some how to video to help explain and show it in action.

Like
CCA Badge CMA Badge
SOLVED Posted: 10/1/14 at 1:16 AM by loceee

For those playing along at home, or those that would like to see more here's a log dump from a test Mac build... with some example screen shots of the loginwindow feedback during a deploy session.

It's now functional enough that I've merged it into the master! Happy birthday deploy!

https://github.com/patchoo/patchoo/blob/master/docs/jamf_patchoo_deploy.log.txt

external image link

external image link

Like
CCA Badge
SOLVED Posted: 6/3/15 at 12:16 PM by Achilles

I have finally had time to play with Patchoo

Amazing!!

I have one issue where the package names for software updates is not appearing in the cocadialog window. However for apple updates its pulling the package names perfectly?

any thoughts. I checked the patchoo/pkg folder and the updates are in there? Also checked the receipts and they are also in there? so it seems like its just not pulling the updates pkg names.. any thoughts would be great. I would say i am 90% ready to implement.. Thanks to the amazing work by Mr. Loceee...

Like
CCA Badge CJA Badge CMA Badge
SOLVED Posted: 7/10/15 at 10:48 AM by franton

So the mice (me) got playing and I realised that the one thing that hurts Patchoo currently is that it uses applescript dialog boxes for it's bootstrapping process.

So I recoded it in CocoaDialog instead. Combine that with @loceee 's CocoaDialog variant and you should be able to do everything over the loginwindow. Just for good measure I've also added in experimental JSS sites support and all the computer lookups are done via UUID's instead of MAC addresses.

Now i'm not in a place where I can adequately test this as there isn't a JSS where I am. (Working on that too) I'm confident most of it should work but consider this very experimental. All feedback gratefully received and i'll happily bug fix what I can.

https://github.com/franton/patchoo

Like
CCA Badge CMA Badge
SOLVED Posted: 7/11/15 at 12:08 AM by loceee

Thanks so much ! I am sorry Patchoo has been a little stale and I haven't been able to test these commits. Hope to get some time in the next couple of months. Thanks again!

Like
CCA Badge
SOLVED Posted: 7/13/15 at 6:21 AM by roiegat

Looks nice! Will check it out in our environment.

Like