Introducing Patchoo! Deploy

loceee
Contributor

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!

12 REPLIES 12

calumhunter
Valued Contributor

Amazeballs this looks awesome

loceee
Contributor

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

franton
Valued Contributor III

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!

loceee
Contributor

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

iJake
Valued Contributor

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.

iJake
Valued Contributor

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.

loceee
Contributor

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.

loceee
Contributor

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

Achilles
New Contributor II

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...e6f9e65ebaab4632af7f0830d707167e
e7c5eca479a44c029320b88173e3ef37

franton
Valued Contributor III

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

loceee
Contributor

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!

roiegat
Contributor III

Looks nice! Will check it out in our environment.