diff --git a/doc/jenkins-guide.md b/doc/jenkins-guide.md index e221da0c7..1c9f3da84 100644 --- a/doc/jenkins-guide.md +++ b/doc/jenkins-guide.md @@ -138,6 +138,9 @@ service jenkins status # SmartOS svcs -l svc:/application/jenkins:default +# macOS +sudo launchctl list | grep jenkins + # Other OSes ~iojs/start.sh ``` @@ -155,6 +158,10 @@ service jenkins restart # SmartOS svcadm restart svc:/application/jenkins:default +# macOS +launchctl stop org.nodejs.osx.jenkins +launchctl start org.nodejs.osx.jenkins + # Other OSes ~iojs/start.sh ``` @@ -218,4 +225,4 @@ of the members of the [infra](https://github.com/nodejs/build#infra-admins) or [release](https://github.com/nodejs/build#release-admins) administrators to take a look. -[secrets repo]: https://github.com/nodejs-private/secrets \ No newline at end of file +[secrets repo]: https://github.com/nodejs-private/secrets diff --git a/setup/osx/README.md b/setup/osx/README.md deleted file mode 100644 index 52338a4fe..000000000 --- a/setup/osx/README.md +++ /dev/null @@ -1,67 +0,0 @@ -# Node.js Build OS X Setup - -Add this to your ssh config: - -```text -Host release-voxer-osx1010-1 - User iojs - HostName ci.nodejs.org - Port 3222 - # IdentityFile nodejs_build_release -Host release-voxer-osx1010-2 - User iojs - HostName ci.nodejs.org - Port 3223 - # IdentityFile nodejs_build_release -Host test-voxer-osx1010-1 - User iojs - HostName ci.nodejs.org - Port 3224 - # IdentityFile nodejs_build_test -Host test-voxer-osx1010-2 - User iojs - HostName ci.nodejs.org - Port 3225 - # IdentityFile nodejs_build_test -``` - -## Configuration - -Required steps: - -* Create user `iojs` -* `xcode-select --install` to install XCode tools, or install from App Store -* Sun Java (JDK) -* `git clone https://chromium.googlesource.com/external/gyp /Users/iojs/gyp` -* `git clone --mirror https://github.com/nodejs/node.git /Users/iojs/io.js.reference` -* For release machines: - - Install PackageMaker, download "Auxiliary Tools for Xcode - Late July 2012" from the Apple Developer site to get it, put it in ~iojs/PackageMaker.app - - Install Packages from http://s.sudre.free.fr/Software/Packages/about.html - - Install xz utilities from http://macpkg.sourceforge.net/ - - Install Node.js Foundation code signing and package signing certificates - * Available from either the secrets repository under "release" as a passwordless .p12 file - * OS X 10.10: In Keychain Access, "Import Items" and add both the Installer and Application certificates to the "System" (not "login" which is default) - * OS X 10.10: Find the private key for Node.js Foundation under System in Keychain Access, "Get Info" for it, switch to "Access Control" and allow access by all applications. This step requires a physical keyboard under El Capitan and onward. - * Command line alternative (all OS X?): `sudo security import /path/to/id.p12 -k /Library/Keychains/System.keychain -T /usr/bin/codesign -T /usr/bin/productsign` - - Add `ssh_config` as `~iojs/.ssh/config` - - Install the staging key as `~/.ssh/id_rsa` - - Install a CI tunnel key as `~/.ssh/id_rsa_ci` - - Initialise a connection to both the staging server and the CI server via ssh to get host key sorted -* Install `start.sh` and `tunnel.sh` to `/Users/iojs` -* Install `org.nodejs.osx.jenkins.plist` and `org.nodejs.osx.tunnel.plist` to `/Library/LaunchDaemons` -* As root (or using `sudo`), run: - - `launchctl load /Library/LaunchDaemons/org.nodejs.osx.tunnel.plist` - - `launchctl load /Library/LaunchDaemons/org.nodejs.osx.jenkins.plist` - - `launchctl start org.nodejs.osx.tunnel` - - `launchctl start org.nodejs.osx.jenkins` - -_(Note the tunnel components of this are only applicable for Voxer machines, ignore for others)_ - -## Operating - -The tunnel connects the machines to ci.nodejs.org for a local tunnel to handle HTTP proxying and a remote tunnel to allow external SSH connections. It should always be running. - -The Jenkins process is managed by launched and should be automatically restarted when it dies. It can be manually started and stopped using: - -* `launchctl stop org.nodejs.osx.jenkins` -* `launchctl start org.nodejs.osx.jenkins` diff --git a/setup/osx/org.nodejs.osx.jenkins.plist b/setup/osx/org.nodejs.osx.jenkins.plist deleted file mode 100644 index 7b3c2c72f..000000000 --- a/setup/osx/org.nodejs.osx.jenkins.plist +++ /dev/null @@ -1,29 +0,0 @@ - - - - - Label - org.nodejs.osx.jenkins - - UserName - iojs - - WorkingDirectory - /Users/iojs - - Program - /Users/iojs/start.sh - - RunAtLoad - - - KeepAlive - - - StandardErrorPath - /Users/iojs/jenkins_err.log - - StandardOutPath - /Users/iojs/jenkins.log - - diff --git a/setup/osx/org.nodejs.osx.tunnel.plist b/setup/osx/org.nodejs.osx.tunnel.plist deleted file mode 100644 index 7d9dcf1ef..000000000 --- a/setup/osx/org.nodejs.osx.tunnel.plist +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Label - org.nodejs.osx.tunnel - - UserName - iojs - - Program - /Users/iojs/tunnel.sh - - RunAtLoad - - - KeepAlive - - - diff --git a/setup/osx/ssh_config b/setup/osx/ssh_config deleted file mode 100644 index 15533a514..000000000 --- a/setup/osx/ssh_config +++ /dev/null @@ -1,8 +0,0 @@ -Host iojs-www node-www - HostName direct.nodejs.org - User staging - IdentityFile ~/.ssh/id_rsa - -Host ci.nodejs.org - User tunnel - IdentityFile ~/.ssh/id_rsa_ci diff --git a/setup/osx/start.sh b/setup/osx/start.sh deleted file mode 100644 index 54274d8dd..000000000 --- a/setup/osx/start.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/sh - -curl -O https://ci.nodejs.org/jnlpJars/slave.jar - -SECRET= -SERVER_ID= -CI_SERVER=ci.nodejs.org - -export JOBS=2 -export NODE_COMMON_PIPE=/Users/iojs/test.pipe -export OSTYPE=osx -export ARCH=x64 -export DESTCPU=x64 - -java -jar slave.jar -jnlpUrl https://${CI_SERVER}/computer/${SERVER_ID}/slave-agent.jnlp -secret $SECRET diff --git a/setup/osx/tunnel.sh b/setup/osx/tunnel.sh deleted file mode 100644 index 4816d4d22..000000000 --- a/setup/osx/tunnel.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh - -REMOTE_PORT=3222 -SSH_KEY=~/.ssh/ci-osx -REMOTE_HOST=ci.nodejs.org -PROXY_PORT=8118 - -ssh -C -N -o ServerAliveInterval=3 -R "*:${REMOTE_PORT}:localhost:22" -L "${PROXY_PORT}:localhost:${PROXY_PORT}" $REMOTE_HOST -l osx -i $SSH_KEY -sleep 10 # give the server a break before auto restart