Posted on 05-25-2022 04:42 AM
Hi ,
trying to help with some JAMF bundling, and I would like to know how to do the following if possible.
Im used to building the standard .pkg into jamf but not using specific commands to install the .pkg from within JAMF.
We have a client installer for Thinkbox Deadline render Client which requires a bunch of parameters to be set during install.
I was able to get the install working using their provided "installbuilder.sh" that resides within the .PKG
"sudo /Volumes/Deadline-10.1.21.4-osx-installers/DeadlineClient-10.1.21.4-osx-installer.app/Contents/MacOS/installbuilder.sh --prefix /Applications/Thinkbox/Deadline10 --setpermissionsclient true --unattendedmodeui minimal --mode unattended --connectiontype Direct --repositorydir /Volumes/net-render-repo/ --licenseserver @ 10.200.235.200 "
What I need to do now is incorporate that command so that it can be used direct from JAMF to push to 50 or so clients.
Any help appreciated
Thanks
Solved! Go to Solution.
Posted on 05-25-2022 06:10 AM
What you need to do is cache the app in a policy to a location where you can then run the installer script later.
Once the app is on the endpoint, you can run a script to call the installbuilder.sh script with your options.
As for caching it, you can either use the built in Jamf caching process in a policy, or simply package the app to push it to a specific location. So in Composer, or whatever you use to create your packages, the hierarchy would look something like this
/path/to/installer/
DeadlineClient-10.1.21.4-osx-installer.app
Then with a script set to run "After" in the same policy or in some other policy, run a command that calls that sh script and whatever options you need, keeping in mind that you might have to adjust some paths to account for the app location on the device.
Posted on 05-25-2022 05:47 AM
Hello, you could create a policy in Jamf, go to Files and Processes and scroll down at the bottom. There is a line called Execute Command. Put your command there. If it does not work, you could try to remove "sudo" as it already executes the command as the root user.
Posted on 05-25-2022 06:10 AM
What you need to do is cache the app in a policy to a location where you can then run the installer script later.
Once the app is on the endpoint, you can run a script to call the installbuilder.sh script with your options.
As for caching it, you can either use the built in Jamf caching process in a policy, or simply package the app to push it to a specific location. So in Composer, or whatever you use to create your packages, the hierarchy would look something like this
/path/to/installer/
DeadlineClient-10.1.21.4-osx-installer.app
Then with a script set to run "After" in the same policy or in some other policy, run a command that calls that sh script and whatever options you need, keeping in mind that you might have to adjust some paths to account for the app location on the device.
Posted on 05-25-2022 07:35 AM
Thanks!
I found an earlier post for a different app doing something simalar, however your post confirmed it for me
I did the following -
In composer -
New- Normal Snapshot
Moved Pkg to - /Users/Shared/
Then added a post install script and added as follows
/Users/Shared/DeadlineClient-10.1.21.4-osx-installer.app/Contents/MacOS/installbuilder.sh --prefix /Applications/Thinkbox/Deadline10 --setpermissionsclient true --unattendedmodeui none --mode unattended --connectiontype Direct --repositorydir /Volumes/net-render-repo/ --licenseserver @10.200.235.200
Saved as a .pkg and then dropped into JAMF admin
Pushed out from JAMF remote to several machines and then tested the install by verifying app launched and connects to the mounted repository.
The only thing that I had to do on the machine was grant access for the .sh to have access rights , not sure how to get around that
Also Is there an easy way to then have a script run after the post install script to delete the .pkg in /Users/Shared ?
Thanks!!