Finally got this working.
I spoke with JAMF Support, but it looks like NetBoot is not supported with my set up. Our company uses a Linux-based JDS and this set up is not supported with JAMF's NetBooting solutions:
"Right now, it's an OS X only solution, and we'll hopefully see one for Linux JDSes soon (unfortunately, I don't have a time table on that, though)."
https://jamfnation.jamfsoftware.com/discussion.html?id=10819
So here's how I've managed this.
I have a Mac mini running OSX Server that I'm using to serve my images. I created a NetRestore image using SIU.
My image is very simple and just includes an up-to-date OSX installation and an administrator account. I also created a QuickAdd package using recon and put that in a directory within /Library/Preferences. Finally, I included a script and launchd that runs the QuickAdd in the background on first boot. The script also creates a text document (exatt.newmachine.plist) containing the string 'true' within this directory. After running the package it hits my JSS with a 'jamf recon' and then finally a 'jamf policy'.
sudo update_dyld_shared_cache -force
sudo jamf RemoveFramework
sudo rm /Library/Keychains/apsd.keychain
installer -pkg /Library/Preferences/fghost/QuickAdd.pkg -target /
echo true > /Library/Preferences/fghost/exatt.newmachine.plist
sudo jamf recon
sudo jamf policy
sudo launchctl unload -w /Library/LaunchDaemons/com.jamfenroll.firstrun.plist
The recon helps the JSS see the 'true' document, assign an Extension Attribute, and group the machine into a smart group (new machines). From there, the subsequent 'jamf policy' tells this machine to start doing whatever is scoped to this Smart Group (change admin password/icon, install printers/software, etc.).
A final policy is scoped in to change the value of the exatt.newmachine.plist to 'false' and call another 'jamf recon'. The machine leaves the group and is now imaged, includes whatever packages I decided on, and is ready for a new user. Success!
So glad to get this working. Its a bit of a crude workaround, but its working solidly and by scoping policies to the smart group it stays 'thin' enough to be scalable until Linux-based JDSs are supported.
Regards,
Jason
I should note that the rc.netboot config mentioned above is no longer necessary with this set up.
Resources:
SIU Primer
https://wiki.cmich.edu/groups/imaging/wiki/751d7/Creating_an_imaging_workflow.html
Article about creating LaunchD plists
http://powercycled.wordpress.com/2012/04/25/spoof-mac-address-from-boot-using-launchd/
JAMF nation resources used to create my install script
https://jamfnation.jamfsoftware.com/discussion.html?id=9576
https://jamfnation.jamfsoftware.com/discussion.html?id=8225
Many thanks to Amanda Wulff and Justin Wetzel who put up with me throughout this whole process.