-
Notifications
You must be signed in to change notification settings - Fork 13
Setup Build Slave
TBD: describe general setup and meaning of on readme.
Create a new directory, the slave should work in
mkdir ~/cloudbees && cd ~/cloudbees
and run
bash <(curl -fsSL https://raw.github.com/BeamApp/Transit/master/scripts/cloudbees-slave-go.sh)
To perform the following steps automatically :)
To build and test the various artifacts during the build, each slave needs a set of command line tools. If you don't setup this machine from scratch it is very likely that you already have some of them installed.
- Install Xcode Command Line Tools and/or full Xcode from MAS.
- If using full Xcode, you'll need to agree to the license by running:
xcodebuild -license - Homebrew
ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"http://mxcl.github.com/homebrew/ - Git
brew install githttp://git-scm.com - JavaScript Tools (node+npm and PhantomJS)
- Node.js
brew install nodehttp://nodejs.org (make surenpmexists) - PhantomJS
brew install phantomjshttp://phantomjs.org - ios-sim
brew install ios-simhttps://github.com/phonegap/ios-sim - Android (SDK, AVD with android 17, environment variables)
- SDK
brew install android-sdkhttp://developer.android.com/sdk - Android Platform Tools, etc.
android update sdk -u --filter platform-tools,android-17,system-image,extra-intel-Hardware_Accelerated_Execution_Manager- (if dialog asks for installing Java, please do so and run again)
- create and AVD
android create avd -n default -t android-17 -b x86 - if not installed via
brewmake sureANDROID_SDK_ROOTis set andandroidandadbare on the path - optional:
open $ANDROID_SDK_ROOT/r21.1/extras/intel/Hardware_Accelerated_Execution_Manager/haxm-macosx_r02.dmgand install the mpkg to boost your Android Emulator performance by 500%.
- SDK
CloudBee's custom build slaves need to be authorized via SSH and require you to provide a public SSH key. For security reasons you should not re-use and store your personal SSH keys on a dedicated build server. Instead, create a new pair exclusively for for authenticate the build slave against CloudBees.
- create a new directory to run the slave in and store the SSH keys,
mkdir ~/cloudbees && cd ~/cloudbees - authenticate your node
- create SSH keys pair
ssh-keygen -t rsa -f cloudbees-slave -N "" - copy
cat cloudbees-slave.pub | pbcopyand paste your public key in issue #26, so we can register your node.
- create SSH keys pair
- put jenkins-cli.jar into your
~/cloudbeesdircurl -Lo jenkins-cli.jar https://jenkins.ci.cloudbees.com/jnlpJars/jenkins-cli.jar - put run-cloudbees-slave.sh into and
chmod +xitcurl -Lo run-cloudbees-slave.sh https://raw.github.com/BeamApp/Transit/master/scripts/run-cloudbees-slave.sh && chmod +x run-cloudbees-slave.sh - run
./run-cloudbees-slave.sh- (if dialog asks for installing Java, please do so and run again)
If the script terminates with "Authentication failed. No private key accepted." we haven't received your private SSH key, yet. Please wait until we registered your build slave and make sure you added your public key in issue #26.
TBD
