AutoCasperNBI and 2015 MacBook Air

bmarks
Contributor II

I am having an issue specific to the 2015 MacBook Air. When I use AutoCasperNBI to create a NetBoot image using the base OS specific to this model, the end result is not only an unmodifiable DMG, but one that doesn't even remember the JSS URL. I have used this app with much success up until now. I have tried toggling various settings to see if that made a difference, but no change.

I am using the current pre-release version of AutoCasperNBI because version 1.1.4 would not recognize my base OS DMG (red dot when trying to add it.) As for my base OS, I created it with Composer after performing a re-install of Yosemite on this model via Internet Recovery so that I'd have the cleanest OS (i.e. no iLife, etc.) My attempts at creating a base OS via AutoDMG failed because I was not successful getting a Yosemite installer from the App Store. When navigating to the Yosemite section of the App Store, attempts at re-downloading the installer immediately failed with an error. I suspect this is because the 2015 Air has its own build of Yosemite.

I have attempted this about six times at this point, so I think I've covered all my bases up to this point, but with each attempt the result is the same.

My hope is that 10.10.3 will unify the builds again, but due to my company's inventory constraints, we may run out of the previous-model Air too quickly to be able to wait for that.

14 REPLIES 14

bmarks
Contributor II

Oh, and I guess I should mention why this is an issue. I use an installer to add a small app to assist in erasing FileVault encrypted drives and I remove the LaunchAgent so that Casper Imaging.app doesn't auto-open. Normally, I can modify the NetBoot image after it is created, but in this case I can no longer do that, e.g. remove the LaunchAgent, without some Terminal DMG-mounting trickery (that also doesn't seem to work now in Yosemite.) Also, since the JSS URL doesn't seem to stick, this creates an additional step for our provisioners to miss during the imaging process (which seems trivial but not when you end up with a ton of emails freaking out about the change.)

davidacland
Honored Contributor II

Probably a question for @bentoms. Might be a bug with the version, is there an option to save as a read-write image?

Is the DMG inside the nbi writable? If it isn't, can you convert it?

bentoms
Release Candidate Programs Tester

@davidacland thanks for bringing this to my attention.

@bmarks tha is for testing the pre-release, one thing that is fixed it the ability to recognise Composer OS.dmg's. So I'm happy you've proven it works. :)

The reason for pre-releasing some versions of AutoCasperNBI is there are a number of changes made to the final NBI. With the pre-release it's a sparseimage & not a DMG.

The perms to which should be the same, & is set to 775. How do the perms read when the NBI is mounted?

Also, what does the AutoCasperNBI.plist have in it for the JSS URL?

Lastly, why not install your app via a PKG in AutoCasperNBI? See the bottom of this post for an example

bmarks
Contributor II

Thanks for the reply. My app is installed via a PKG. The only manual part I normally have to perform is the removal of the LaunchAgent so that Casper Imaging doesn't auto-launch, and it was when I could no longer do this that I realized there might be something different happening. The two variables between my old workflow and this new workflow are: pre-release of AutoCasperNBI and a Composer DMG of OS X build 14C1510.

To me, it looks like the URL isn't getting written to the NetBoot image. It should be in:

/var/root/Library/Preferences/com.jamfsoftware.jss.plist

Correct?

That's where it is on my older image, but on my new image that file doesn't exist.

I chose to attempt to use the pre-release version because version 1.1.4 wouldn't recognize my base OS (created with Composer.) Should I attempt to create a DMG of this 2015 Air with Disk Utility instead? I assumed the red dot in 1.1.4 was indicating it didn't recognize the OS X build, but it sounds like the red dot was because I had created the DMG with Composer.

As far as the perms, they are identical to my older image:

drwxrwxr-x 24 bmarks 454177323 884B Mar 23 12:19 OS_X_All_Macs
drwxrwxr-x 28 bmarks 454177323 1.0K Mar 23 10:50 OS_X_Imaging_MBAir2015_v3

(The top one is my old image.)

bmarks
Contributor II

In the past, I've used AutoDMG to create all my base OS DMG's, so this 2015 Air is creating a new variable for me. What might be the best way to create a base OS DMG to be used with AutoCasperNBI since I can't get a model-specific installer to use with AutoDMG? Thanks.

bentoms
Release Candidate Programs Tester

@bmarks this newer version is meant to correct an issue with Composer HD's captured as you have for the reasons you have.

In the com.macmule.AutoCasperNBI.plist on the Mac that ran AutoCasperNBI, is there a JSS URL in there? Also, does it show as writing to the file in the logs?

bmarks
Contributor II

The correct JSS URL is listed in the plist file mentioned above. Here are the log entries I could find related to the JSS URL:

Mon Mar 23 10:26:53 PDT 2015 Trying to get JSS version
Mon Mar 23 10:26:53 PDT 2015 Received JSS version
Mon Mar 23 10:26:53 PDT 2015 Checking JSS Version from https://ceng-casp-wp2.**.com:8443
Mon Mar 23 10:26:53 PDT 2015 JSS is: 9.65

...

Mon Mar 23 12:01:22 PDT 2015 Downloading JSS CA Cert for https://ceng-casp-wp2.**.com:8443
Mon Mar 23 12:01:22 PDT 2015 Downloaded JSS CA Cert to '/Volumes/OS_X_Imaging_MBAir2015_v4/Library/Application Support/AutoCasperNBI/Certificates/'

I couldn't find any other entries that appeared to be related to the JSS URL. Just to be safe on my end, I removed the domain from the URL, so disregard the asterisks. Thanks.

bentoms
Release Candidate Programs Tester

@bmarks yep my cock up.. can you test AutoCasperNBI 1.1.7

bmarks
Contributor II

I just created a NetBoot image and the JSS URL definitely was saved this time. Great, thanks!

With that said, I did have to change my workflow slightly. Previously, I could double-click and mount the final NetBoot.dmg file and remove the LaunchAgent so that Casper Imaging wouldn't autoload. This time, I had to follow these instructions to mount NetBoot.dmg as read/write via Terminal, delete the LaunchAgent and then convert it back to read-only:

AFP548 - Mount DMG Read Write

I know that last part isn't applicable to most people, but I mention it anyway to make sure that's expected behavior. If it is, that works for me. I have to replicate my images to 36 global imaging labs, so getting the image perfect the first time is important for me. Thanks again.

bentoms
Release Candidate Programs Tester

@bmarks why not add it as an additional PKG to AutoCasperNBI with that PKG deleting the LaunchAgent?

I've an example here, let AutoCasperNBI do the work. :)

bmarks
Contributor II

@bentoms I'm pretty sure I tried that at one point. I had a postinstall script that rm'd the file. But, in my testing, it didn't work. My theory was that the .plist got written after packages got installed, but that was just a guess and I didn't revisit it after a few attempts at testing.

However, it looks like the package you just mentioned does that exact thing, so I'll revisit this and perform some more testing. Thanks for the additional info.

bentoms
Release Candidate Programs Tester

@bmarks I tried to make the order particular so that additional packages are installed AFTER AutoCasperNBI installs the normal stuff.

This allow for the LaunchAgent to be deleted, as linked.

bmarks
Contributor II

So, yeah, I must've had an error in my script because when I updated my package with your postinstall script, everything worked great. Thanks again for an infinitely helpful app and all of the assistance.

bentoms
Release Candidate Programs Tester

@bmarks awesome!