CrashPlanProe installation and self service plugin

tcandela
Valued Contributor II

has anyone installed CrashPlanPROe via Self Service ?
did you read the 'administering crashplanPROe with the Casper Suite' technical paper Casper suite v9.0 or later 19 August 2014 to assist in your installation.

if so, have you installed the Self Service Plug-in-bundle ? is it useful ?
Where does it show up in Self Service ? in the same list as the self service URL plug-ins?
does a user just click it ?
does it show up even if CrashPlanPROe is not installed on your mac ?

7 REPLIES 7

jkuo
Contributor

I have it running via Self Service, and I tried many ways to do it and could only get it to work by breaking it up into two parts: (1) Copy the installer into a known location, (2) Run a script to install the application.

My script looks like this:

#!/bin/bash

# Unzip CrashPlan and install
sudo unzip "/Users/Shared/CrashPlanPROe_Mac.dmg.zip" -d /Users/Shared
sudo hdiutil attach "/Users/Shared/CrashPlanPROe_Mac.dmg"
sudo installer -verbose -pkg "/Volumes/CrashPlanPROe/Install CrashPlanPROe.pkg" -target /
sudo hdiutil detach "/Volumes/CrashPlanPROe"
sudo rm "/Users/Shared/CrashPlanPROe_Mac.dmg.zip"
sudo rm "/Users/Shared/CrashPlanPROe_Mac.dmg"
sudo rm -r /Users/Shared/__MACOSX

Then the user just clicks it in Self Service, and they'll see the whole installation taking place. They'll only have to interact with it after it's done and prompting them to log in.

Hope that helps!
Jason

tcandela
Valued Contributor II

@jkuo - what about the installation code ?

did you install the Self Service plug-in for CrashPlanPROe ?

jkuo
Contributor

@tcandela - by installation code do you mean copying the installer? You can do this with Casper Composer, just zip the dmg, start Composer, and then move it over to /Users/Shared, then create the installer.

I basically followed the instructions for creating the installer according to the guide you mentioned, I just had trouble with the policy part working as described in there. So that's where my script came in. It's still a self-service policy. What self service plug-in are you referring to?

tcandela
Valued Contributor II

@jkuo - I know how to do the Casper composer/zip process, thats no problem for me.

if you go to the above TAB 'Third Part Products' you will find CRASHPLANPROe under the C section, within there is the plug-in.

so you're installing PROe (enterprise) like I am.

during a straight up install , The installation involves selecting 1. new account or
2. existing account

I choose # 2 , entering a netid/password & PROe server (i referred to it as installation code).

what happens once 'self service' installs the application, and a user runs it, what is happening? do they get prompted to enter netid/password & PROe server anytime?

when a standard user runs the installed crashplan application nothing happens, just a crashplan 'splash screen', if its an account that has 'administrator' rights, the user gets past the 'splash screen' and into the crashplan settings.

jkuo
Contributor

@tcandela - ahh, I see. No, I'm not using the CrashPlan PROe plugin.

When people use Self Service using the copy the package + run installer script above, they get the splash screen and are prompted to select New Account or Existing.

I just tested it on Self Service with a "Standard" account, and the CrashPlan splash screen comes up followed by the dialog to select a new or existing account.

tcandela
Valued Contributor II

@jkuo i see. I want to have mine install with no user having to enter any account info, and automatically start backing up.

i'm using the 2014 version of this

http://www.jamfsoftware.com/libraries/pdf/white_papers/Administering-CrashPlan-PROe-with-the-Casper-Suite.pdf

boberito
Valued Contributor

I've sort of done this with a mismatch of things. It's worked well now for roughly 4 years. I still find I like the user to open crash plan once to make sure everything is happy because well, it's crashplan...ugh

I have a policy that runs at first login.

It drops a DMG with a few files into places
/Library/Application Support/CrashPlan/custom and .custom and fills in that folder with what it needs. I did both because I remember when building it, it seemed like it never was happy with just 1 or the other and it's such small files I didn't care much. In there is custom.properties which has things like the registration key so it'll register it with the appropriate group in Crashplan and the server addresses.

I also have it drop a script into /var/tmp which we'll get back to at the end.

#!/bin/sh

osascript -e 'tell application "CrashPlan" to activate
tell application "Finder" to set visible of process "CrashPlan" to false
delay 12
tell application "CrashPlan" to quit'

Here's my custom.properties

###################################################################################################
##
## custom.properties
## Edit these properties to customize and/or simplify the users experience.
## http://support.crashplanpro.com/doku.php/branding_and_customization
##
###################################################################################################
## Authority properties
## Skip the register/login screens by providing address, registrationKey, username, and password.
##
## Authority parameters
## ${username}
##     determined from the CP_USER_NAME command-line argument, the CP_USER_NAME environment variable, 
##     or "user.name" Java system property from the user interface once it launches.
## ${computername} - system computer name
## ${generated}    - random 8 characters, typically used for password
## ${uniqueId}     - a globally unique id, a large number
## ${deferred}
##     for LDAP and Auto register only! This allows them to register without password 
##     and requires user to login to CPD the first time.

## the primary address and port to the authority that manages the accounts and issues licenses
## Example:  internalhost:4282
address=saes-cp-a.saes.org:4282

## the secondary address and port to the authority that manages the accounts and issues licenses. 
## Note: This is an advanced setting. Use only if you are familiar with its use and results.
## Example:  externalhost:4282
secondaryAddress=saes-cp-b.saes.org

## Do not prompt or allow user to change the address (true or false)
hideAddress=true

## Allow user to change the server address in account settings (true or false).
lockedAddress=false

## The organization registration key, when specified the field is hidden in the register/login screen
## Example: AAAA-BBBB-CCCC-DDDD
registrationKey=SPECIFIC GROUP KEY

## The username to use when authorizing the computer, can use params listed below
## Accepts any parameters listed above.
username=${username}

## The password used when authorizing the computer, can use params listed below
## Accepts any parameters listed above.
password=${deferred}


##################################################################################################
## Proxy properties
## Use when CP Clients must use a proxy to connect with an external CP PROe Server instance
## Requires the url for a ProxyAutoConfig (PAC) file, accessible to the client
proxy.enable=false
proxy.pacUrl=test


##################################################################################################
## Sigle Sign-on properties

## SsoAuth will not be available unless this is true. Default is false.
ssoAuth.enabled=false

## Login via sso is enforced, the login with sso button is hidden. SSO must ben enabled. Default is false.
ssoAuth.required=false

## Name of the SsoAuth identity provider. Only used if ssoAuth.enable=true. Default is "Shibboleth".
ssoAuth.provider=single sign-on


###################################################################################################
## Language properties
## Specify any properties found in lang/txt.properties
## Any properties listed here will override but are English only.


###################################################################################################
## END
###################################################################################################

Then after that's done running I have a script set for AFTER that runs and downloads the newest crashplan client from our crashplan server. This way anytime crashplan server upgrades I don't have to make a new install package.

#!/bin/sh
curl http://10.1.1.21:4280/download/CrashPlanPROe_Mac.dmg > /var/tmp/CP.dmg
hdiutil attach /var/tmp/CP.dmg
installer -pkg /Volumes/CrashPlanPROe/Install CrashPlanPROe.pkg -target /
hdiutil detach /Volumes/CrashPlanPROe/
rm -rf /var/tmp/CP.dmg

So this configures CrashPlan, but it won't grab the user unless it's opened. So like i mentioned before, back to the script that's dropped into /var/tmp/

I have it do an update inventory. But then I have the final part of the policy under Execute Command

sh /var/tmp/crashplanopen.sh

You'll see it runs the script from above, CrashPlan opens, hides, then quits. It you don't have it wait, it'll quit crashplan too quickly and it won't configure.

Anyway I hope all of that makes sense.

Bob