Help with Composer and Packages workflow

Jesper
New Contributor III

Hi all,

Being rather new into the world of Jamf and also Composer, I wanted to hear about your workflow for creating/recreating packages.

To begin with, I have made various packages with Composer installed on my personal Mac, and then uploaded the Packages via the Jamf website (we are cloud).
Thats all fine, until I needed to make a change to an existing package...

Luckily I had that specific package in my Composer sources, so I could edit it from there.
But I might as well not have had it. As I can see I only have a few of what I have in Jamf.

How does your workflow look like?
Do you have a separate Mac for Composer use?
Do you keep the sources and or final packages on a file share?
How do you deal with new versions of existing packages?

Coming from an SCCM background, I am used to just being able to edit the source directly in the console, and then updating the package to reflect that. Can I do something similar, or how do you guys do that?

Any input and suggestions are much appreciated.

Thanks in advance.

5 REPLIES 5

blackholemac
Valued Contributor III

I keep a second "near virgin" Mac (or one could just as easily use a Parallels or VMWare instance) to build my packages. I don't know if you knew but you can "reimport" your sources back into Composer simply by dragging one of your compiled packages over and click "Convert to Source"

Packaging is one of those few skills on Mac management that I consider a bit of an art not a science. In general my strategy is to keep as true as possible to the vendor package and just add any of my own changes later in a separate one if I must.

The main reason I do this is simple. New versions become easy that way...if you use the vendor package, simply upload the new one and replace it in all configurations if you are still imaging and write your policies to get it out.

I have found 2-3 packages in my DP that I must snapshot, but I've had a love-hate relationship for years with them. Our org needs them and fighting with the developer is useless. Those I know very well and have down pat.

In short Composer is truly a standalone app and I run it as such. Once my final or updated package is complete, only then do I get the JSS involved.

jj_isd728
New Contributor II

I have a macPro running ESXi, which host our Apple Servers.
Generally, I spin up a new macOS system and install using an ISO i created.
I name it and assign to jamf.
I create my smart group and assign it to my test bed and create policies. Usually I create a policy as custom, so I can run it in -verbose mode, so I know what is going on.
I use composer for the User Environment items. Using the fresh installed OS to set and retrieve my settings and store as a DMG.
Most items I do with composer is DMG.
For packages, I went with scripting via a policy or use programs by http://s.sudre.free.fr.
I like IceBerg and Packages for building packages to deploy... which are usually preflight items with a script that curls another script.
I do this, so I just need to edit a script and not the package each time I need to make a change.

Look
Valued Contributor III

Once you get more experienced you get better at manually building packages in Composer, I do this for most now days and as @blackholemac says I also try and keep things as close to the vendor provided process as possible, generally using scripting to run installers etc... if at all possible.
Once you understand exactly how the process works having a seperate mac becomes much less of a neccessity except those few instances where you need to use the capture function to see what is going on, in that scenario I just spin up a brand new never booted macOS install on a test machine, luckily we have one set aside for this and other deployment, configuration testing etc...

Jesper
New Contributor III

Thanks for the very good input. Much appreciated.

As you mention, it is a matter of just digging into it. To get the experience.
Is there are way for me to download/extract the packages I have already uploaded to the JSS cloud?
I would like to make a repository for my initial package sources, scripts and final packages.

Thanks again.

kerouak
Valued Contributor

And when you get even more skillfull, you can use "Packages"

Add payloads, and pre and post install scripts etc.

My tool of choice..