Difference between revisions of "User:Wvengen@nikhef.nl/Hudson installation"

From PDP/Grid Wiki
Jump to navigationJump to search
(add Mac OS X instructions)
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
I'm using the continuous integration server [http://www.hudson-ci.org/ Hudson] as part of the [http://jgridstart.nikhef.nl/ jGridstart] development process. An important aspect is testing the software on multiple platforms. Installing Hudson is pretty straightforward in unix-like OSes. Windows needs some attention though, which is described here.
 
I'm using the continuous integration server [http://www.hudson-ci.org/ Hudson] as part of the [http://jgridstart.nikhef.nl/ jGridstart] development process. An important aspect is testing the software on multiple platforms. Installing Hudson is pretty straightforward in unix-like OSes. Windows needs some attention though, which is described here.
 +
 +
A specific requirement is that the graphical user-interface is available for testing under a non-root/non-Administrator account. This really requires one to use (virtual) dedicated machines for running slaves, which is sane anyway; one really wants to have a controlled build environment.
  
 
== Installation of a Hudson Windows slave ==
 
== Installation of a Hudson Windows slave ==
Line 10: Line 12:
  
 
I've ran Hudson on Windows XP professional 32-bit (working on 64-bit), and Windows server 2003.
 
I've ran Hudson on Windows XP professional 32-bit (working on 64-bit), and Windows server 2003.
 +
Note that automatic installation of java environments can run into problems because the user has no administrative rights. You might want to add these, but my tests need to run as an ordinary user so that's no option. Installing JDKs manually as administrator is an option, or running the slave agent as administrator when a new JDK needs to be installed is another option.
  
 
== Installation of a Hudson Mac OS X slave ==
 
== Installation of a Hudson Mac OS X slave ==
Line 16: Line 19:
 
* Create an ordinary user (e.g. <tt>hudson</tt>), and setup auto-login
 
* Create an ordinary user (e.g. <tt>hudson</tt>), and setup auto-login
 
* Create a node in Hudson (type JNLP), and set JDK tool locations to <tt>/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home</tt> (for java 1.5.0, or use another number like <tt>1.6</tt>)
 
* Create a node in Hudson (type JNLP), and set JDK tool locations to <tt>/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home</tt> (for java 1.5.0, or use another number like <tt>1.6</tt>)
* Start Hudson at login by opening the AppleScript editor, and entering <tt>do shell script "javaws http://my.hudson/computer/node/slave-agent.jnlp"</tt>, and saving it as an application bundle. Drag that to the taskbar, right-click on it, and make it run at startup.
+
* Start Hudson at login by opening the AppleScript editor, and entering <tt>do shell script "javaws http://my.hudson/computer/node/slave-agent.jnlp"</tt> (see [http://developer.apple.com/mac/library/technotes/tn2002/tn2065.html here]), and saving it as an application bundle. Drag that to the taskbar, right-click on it, and make it run at startup.

Latest revision as of 11:34, 28 July 2010

I'm using the continuous integration server Hudson as part of the jGridstart development process. An important aspect is testing the software on multiple platforms. Installing Hudson is pretty straightforward in unix-like OSes. Windows needs some attention though, which is described here.

A specific requirement is that the graphical user-interface is available for testing under a non-root/non-Administrator account. This really requires one to use (virtual) dedicated machines for running slaves, which is sane anyway; one really wants to have a controlled build environment.

Installation of a Hudson Windows slave

  • Install the Windows OS
  • Create an ordinary user (e.g. hudson), and setup auto-login (KB324737).
  • Install UnxUtils (see also here), and copy sh.exe to C:\bin (or whichever drive you use for Hudson); make sure it can be found in the PATH.
  • Install the Java runtime from java.com
  • Create a node in Hudson (type JNLP)
  • Start Hudson at login by creating in the start menu's startup application folder a shortcut to: javaws http://hudson/computer/win/slave-agent.jnlp.

I've ran Hudson on Windows XP professional 32-bit (working on 64-bit), and Windows server 2003. Note that automatic installation of java environments can run into problems because the user has no administrative rights. You might want to add these, but my tests need to run as an ordinary user so that's no option. Installing JDKs manually as administrator is an option, or running the slave agent as administrator when a new JDK needs to be installed is another option.

Installation of a Hudson Mac OS X slave

Virtualisation using Parallels Desktop and Mac OS X Server (Leopard and Snow Leopard); it appears that you can't install regular desktop versions as virtual machines.

  • Install Mac OS X
  • Create an ordinary user (e.g. hudson), and setup auto-login
  • Create a node in Hudson (type JNLP), and set JDK tool locations to /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home (for java 1.5.0, or use another number like 1.6)
  • Start Hudson at login by opening the AppleScript editor, and entering do shell script "javaws http://my.hudson/computer/node/slave-agent.jnlp" (see here), and saving it as an application bundle. Drag that to the taskbar, right-click on it, and make it run at startup.