[[!meta title="Continuous Integration Mac OS X Yosemite Setup"]] [[!meta author="Kyllikki"]] [[!meta date="2016-02-06T14:27:38Z"]] [[!toc]] Install yosemite set system name in system preferences-\>sharing Update system in app store Install Xcode from app store install xcode commandline tools `xcode-select --install` accept licence `xcodebuild -license` install java install [[https://www.macports.org/install.php Mac Ports|https///www.macports.org/install.php_mac_ports]] Update ports database ready for use `sudo port -v selfupdate` `sudo port upgrade outdated` install required packages `sudo port install git ccache expat openssl curl libjpeg-turbo libpng p5-html-parser screen bison pkgconfig` create jenkins user enable ssh login for jenkins user in system preferences-\>sharing-\>remote login Add node on jenkins master CI instance. `Name       cislave14` `Description    Mac os X yosemite build slave` `# of executors 2` `Remote FS root /Users/jenkins/jenkins` `Labels     x86_64-apple-darwin14.5.0` take note of secret and slave url for use in next steps. As jenkins user: create jenkins workspace directory `mkdir jenkins` download slave jar `curl -o slave.jar `[`http://ci.netsurf-browser.org/jenkins/jnlpJars/slave.jar`](http://ci.netsurf-browser.org/jenkins/jnlpJars/slave.jar) create jenkins slave script `cat << EOF > jenkins-slave.sh` `#!/bin/sh` `java -Djava.awt.headless=true -jar slave.jar -jnlpUrl `[`http://ci.netsurf-browser.org/jenkins/computer/cislave7/slave-agent.jnlp`](http://ci.netsurf-browser.org/jenkins/computer/cislave7/slave-agent.jnlp)` -secret 1234` `EOF` `chmod a+x jenkins-slave.sh` create ssh keypair (accept defaults - no password) `ssh-keygen -t rsa -C "netsurf@cislave8.netsurf-browser.org"` copy .ssh/id\_rsa.pub from slave to jenkins master node and append to /home/netsurf/.ssh/authorized\_keys start slave daemon in screen