Version 99.1 by Paul Hoadley on 2010/07/31 07:36

Show last authors
1 [[Hudson>>http://hudson-ci.org/]] is an "extensible continuous integration server". It monitors repeated executions of jobs, such as building software projects, and can be used to build WebObjects applications and frameworks. Hudson is an open source project, and can be used at no cost. An introductory presentation on building WebObjects projects with Hudson was given by Mike Schrag at WOWODC-West in 2009, and the video can be [[purchased from wocommunity.org>>http://www.wocommunity.org/apps/WebObjects/WOCommunity.woa/wa/recordings]].
2
3 There are a couple different ways to run Hudson. The easiest is to run it as a standalone application.
4
5 === Standalone Installation ===
6
7 {{info}}
8 These instructions are based on David Avendasora's setup. You may have different preferences as to where to install Hudson at or where to set its home directory to.
9 {{/info}}
10
11 1. Create a /Developer/Hudson/Home directory
12 1. Download Hudson From [[http://hudson.dev.java.net]]. Save the hudson.war file to /Developer/Hudson
13 1. Launch Hudson with the following command in Terminal.app:
14
15 {{code}}
16
17 java -DHUDSON_HOME=/Developer/Hudson/Home -jar /Developer/Hudson/hudson.war
18
19 {{/code}}
20
21 {{info}}
22
23 If you have an instance of tomcat or AJP running in a different process you can also use the \-httpPort= and \--ajp13Port= options to change the ports used.
24 {code}
25 java -DHUDSON_HOME=/Developer/Hudson/Home -jar /Developer/Hudson/hudson.war -httpPort=9080 --ajp13Port=9009
26 {code}
27
28 {{/info}}
29
30 1. Point your browser to: [[http://localhost:8080/]]
31 1. Start setting up jobs
32
33 === Servlet Container Installation ===
34
35 1. Install Tomcat from [[http://www.macports.org]] with the command
36
37 {{noformat}}
38
39 sudo /opt/local/bin/port install tomcat6
40
41 {{/noformat}}
42
43 1. Create an administrative user in /opt/local/share/java/tomcat6/conf/tomcat-users.xml (20 mins to find out where the user should be and how not to restart tomcat). Something along the line of:
44
45 {{code value="xml"}}
46
47 <?xml version='1.0' encoding='utf-8'?>
48 <tomcat-users>
49 <role rolename="manager"/>
50 <role rolename="admin"/>
51 <user username="tomcat" password="tomcat" roles="admin,manager"/>
52 </tomcat-users>
53
54 {{/code}}
55
56 {{panel bgColor="#F7D6C1"}}
57
58 Don't forget to change the username and password after you have finished checking out the build server and start using it in production.
59
60 {{/panel}}
61
62 1. Start tomcat
63
64 {{noformat}}
65
66 sudo launchctl load -w /Library/LaunchDaemons/org.macports.tomcat6.plist
67
68 {{/noformat}}
69
70 1. download Hudson from [[http://hudson.dev.java.net]], take care that you use the contextual menu to download the link hudson war file
71 1. create a folder /opt/local/var/db/hudson (this will be the place where hudson will store it's stuff
72 1. change ownership of that folder with ownership www:_www
73 1. add to /opt/local/share/java/tomcat6/conf/setenv.local:
74
75 {{noformat}}
76
77 export HUDSON_HOME=/opt/local/var/db/hudson
78 export JAVA_OPTS=-Djava.awt.headless=true
79
80 {{/noformat}}
81
82 1. Install Hudson in Tomcat: goto [[http://localhost:8080]], login with the user and password that you have created in the tomcat-users.xml, and upload hudson.war to the tomcat server.
83 1. Goto [[http://localhost:8080/hudson]] and you can start configuring your Hudson build server
84
85 === Building WO Apps ===
86
87 * Check out [[^setupWorkspace.sh]]