Posted on 05-16-2018 09:11 AM
Hey Guys!
I have followed @spreston's method of deploying CrashPlan in a Self Service policy
However even when using the deploy.properties which does contain the URL specified, after launching the App, it does know the username, but still asks for the Server Address.
Does anyone know how to complete the autofill for the Server Address portion?
Posted on 05-16-2018 09:49 AM
The deploy.properties file is in the right place on the local workstation, correct?
Posted on 05-16-2018 10:27 AM
Hey Scott!
I had saved the deploy.properties file in Library/Application Support/CrashPlan/deploy.properties . The priority on that is also set to 8. The Crashplan installer is set to default at 10.
-Kevin
Posted on 05-16-2018 11:47 AM
Hmm. I have seen this happen before. Did you have any other customization in place, such as logo, etc.? Was this a fresh install or re-install, upgrade in place?
Posted on 05-16-2018 11:48 AM
Nope. This is a fresh install as we are planning to introduce CrashPlan!
Posted on 05-16-2018 11:51 AM
OK, that's definitely weird. One other question, you're not trying this on the same computer that you used to build the packages, right?
I'd also look in your Jamf logs to make sure the custom file was run before the app installer (although you said the priorities were set).
Posted on 05-16-2018 12:00 PM
Yeah, this was captured from a clean system, then deployed to another completely system. It did run the deploy.properties package first, and then ran the CrashPlan installer.
I was also chatting with someone in the macadmins jamfnation slack channel about this to see if there are any solutions. I also did notice that upon first time installing, it does get stuck on the "Connecting..." screen for a while.
Posted on 05-16-2018 01:30 PM
Do you have a "deployment" setup in the CrashPlan console? Starting with v6.5 they completely changed how things work... Worth checking out at least. :)
Thanks,
Matt
Posted on 05-17-2018 08:43 AM
@mbezzo Just got my Code42 access. I'm an admin in the console, but dont see a "deployment" setup
Posted on 05-17-2018 08:52 AM
This is what I see in my console. If you don't have all these tabs on 6.5 server then you may be missing a permission?
Posted on 08-09-2018 01:38 AM
@kquan did you come right here in the end?
Posted on 08-09-2018 08:10 AM
@Daikonran hey! Sorry guys for not updating!
I worked with CrashPlan support and they gave me a script to run that autofills the user's email address and due to us using ADFS(microsoft shop) they need to verify 2FA after logging on. After logging in everything works as expected!
Posted on 03-27-2019 08:08 AM
@Daikonran what is the script that you are using that autofills the user's email address?
Thanks,
Posted on 03-27-2019 11:18 AM
Code 42 supplies a script that pulls the email address from the Users section of Jamf Pro. For one of our MSP clients this doesn't work since they don't use AD or LDAP nor the Users component of Jamf Pro.
I re-wrote the script that Code 42 had provided so it gets the computer serial number, then gets the computer's JSS ID, then pulls an email address that is manually entered in the User and Location record of the computer's inventory. This is an email address that we manually enter. If the email address is blank in the inventory, then it will display a prompt for the user to enter their work email address, which is then passed on with the script. You of course have to add your correct API user credentials and the JSS URL to the script, which is then used in the Deployment Policy in Code 42.
#!/bin/sh
jssUser="apiuser"
jssPass="password"
jssUrl="https://jamf.blahblahblah.com:8443"
username=$(/bin/ls -l /dev/console | /usr/bin/awk '{ print $3 }')
user_email=$(curl -X GET -sku $jssUser:$jssPass -H "Accept: application/xml" $jssUrl/JSSResource/users/email_address/$username | xpath /user/email_address 2>/dev/null | sed -e 's/<email_address>//' | sed -e 's/</email_address>//')
#this will get me just the serial number
serialNumber=$(system_profiler SPHardwareDataType| awk '/Serial Number/{print $4}')
#sanity check
#echo $serialNumber
#use API to get computer ID
computerID=$(curl -sku $jssUser:$jssPass -H "Accept: application/xml" $jssUrl/JSSResource/computers/serialnumber/"$serialNumber" | xmllint --xpath 'computer/general/id/text()' -)
#sanity check
#echo $computerID
#use API to get username
user_email=$(curl -sku $jssUser:$jssPass -H "Accept: application/xml" $jssUrl/JSSResource/computers/id/"$computerID"/subset/User%2540Location | xmllint --xpath 'computer/location/email_address/text()' -)
#echo $user_email
ask () {
osascript <<EOF - 2>/dev/null
tell application "SystemUIServer"
activate
text returned of (display dialog "$1" default answer "")
end tell
EOF
}
if [ -z "$user_email" ]; then
name=$(ask 'IMPORTANT!!! CRASHPLAN needs your company email address to complete the installation, please fill it in to continue. Please DO NOT close this window without entering your company email address: ')
echo "C42_USERNAME=$name"
echo "C42_USER_HOME=$(dscl . -read "/users/$username" NFSHomeDirectory | cut -d ' ' -f 2)"
else
echo "C42_USERNAME=${user_email}"
echo "C42_USER_HOME=$(dscl . -read "/users/$username" NFSHomeDirectory | cut -d ' ' -f 2)"
fi