Version 114.1 by Johan Henselmans on 2010/08/18 21:04

Hide last authors
Paul Hoadley 102.1 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]].
Pascal Robert 37.1 2
Paul Hoadley 102.1 3 == Setting up Hudson ==
fcobia 100.1 4
David Avendasora 92.1 5 There are a couple different ways to run Hudson. The easiest is to run it as a standalone application.
David Avendasora 64.1 6
David Avendasora 92.1 7 === Standalone Installation ===
David Avendasora 64.1 8
David Avendasora 92.1 9 {{info}}
10 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.
11 {{/info}}
Mike Schrag 90.1 12
Johan Henselmans 104.1 13 1. Create a ##/Developer/Hudson/Home## directory.
14 1. [[Download Hudson>>http://hudson-ci.org/latest/hudson.war]], saving ##hudson.war## file to ##/Developer/Hudson##.
David Avendasora 92.1 15 1. Launch Hudson with the following command in Terminal.app:
16
17 {{code}}
18
David Avendasora 96.1 19 java -DHUDSON_HOME=/Developer/Hudson/Home -jar /Developer/Hudson/hudson.war
David Avendasora 92.1 20
21 {{/code}}
22
Paul Hoadley 98.1 23 {{info}}
David Avendasora 92.1 24
Johan Henselmans 108.1 25 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.
Paul Hoadley 98.1 26 {code}
27 java -DHUDSON_HOME=/Developer/Hudson/Home -jar /Developer/Hudson/hudson.war -httpPort=9080 --ajp13Port=9009
28 {code}
29
30 {{/info}}
31
Paul Hoadley 102.1 32 1. Point your browser to: [[http://localhost:8080/]]
33 1. Start setting up jobs
Paul Hoadley 98.1 34
Johan Henselmans 108.1 35 === Servlet Container Installation on Mac OS X (10.5, 10.6) ===
David Avendasora 92.1 36
Paul Hoadley 102.1 37 1. Install Tomcat from [[http://www.macports.org]] with the command
David Avendasora 92.1 38
Mike Schrag 90.1 39 {{noformat}}
40
Pascal Robert 37.1 41 sudo /opt/local/bin/port install tomcat6
42
Mike Schrag 90.1 43 {{/noformat}}
44
Johan Henselmans 104.1 45 1. Create an administrative user in ##/opt/local/share/java/tomcat6/conf/tomcat-users.xml##.
Pascal Robert 37.1 46
Mike Schrag 90.1 47 {{code value="xml"}}
48
Pascal Robert 37.1 49 <?xml version='1.0' encoding='utf-8'?>
50 <tomcat-users>
51 <role rolename="manager"/>
52 <role rolename="admin"/>
53 <user username="tomcat" password="tomcat" roles="admin,manager"/>
54 </tomcat-users>
Johan Henselmans 82.1 55
Mike Schrag 90.1 56 {{/code}}
Johan Henselmans 82.1 57
Mike Schrag 90.1 58 {{panel bgColor="#F7D6C1"}}
Johan Henselmans 82.1 59
Mike Schrag 90.1 60 Don't forget to change the username and password after you have finished checking out the build server and start using it in production.
Pascal Robert 37.1 61
Mike Schrag 90.1 62 {{/panel}}
63
Johan Henselmans 104.1 64 1. Start Tomcat.
Mike Schrag 90.1 65
66 {{noformat}}
67
68 sudo launchctl load -w /Library/LaunchDaemons/org.macports.tomcat6.plist
69
70 {{/noformat}}
71
Johan Henselmans 104.1 72 1. [[Download Hudson>>http://hudson-ci.org/latest/hudson.war]], saving ##hudson.war## somewhere for later.
73 1. Create a folder for Hudson to work in: ##/opt/local/var/db/hudson##
Johan Henselmans 108.1 74 1. Change ownership of that folder: ##chown www:_www /opt/local/var/db/hudson##
Johan Henselmans 104.1 75 1. Add the following to ##/opt/local/share/java/tomcat6/conf/setenv.local##:
Mike Schrag 90.1 76
77 {{noformat}}
Pascal Robert 37.1 78
Mike Schrag 90.1 79 export HUDSON_HOME=/opt/local/var/db/hudson
80 export JAVA_OPTS=-Djava.awt.headless=true
Johan Henselmans 82.1 81
Mike Schrag 90.1 82 {{/noformat}}
83
Johan Henselmans 104.1 84 1. Install Hudson in Tomcat: go to [[http://localhost:8080]], login with the user and password that you have created in ##tomcat-users.xml##, and upload ##hudson.war## to the Tomcat server.
85 1. Goto [[http://localhost:8080/hudson]] and you can start configuring your Hudson build server.
Mike Schrag 90.1 86
Johan Henselmans 108.1 87 === {{color value="#000000"}}{*}Servlet Container Installation on Mac OS X Server (10.6)*{{/color}} ===
88
89 1. Tomcat is by default installed on Mac OS X Server.
90 1. Create an administrative user in&nbsp;##/Library/Tomcat/conf/tomcat-users.xml##.
91
92 {{code value="xml"}}
93
94 <?xml version='1.0' encoding='utf-8'?>
95 <tomcat-users>
96 <role rolename="manager"/>
97 <role rolename="admin"/>
98 <user username="tomcat" password="tomcat" roles="admin,manager"/>
99 </tomcat-users> 
100
101 {{/code}}
102
103 {{panel bgColor="#F7D6C1"}}
104
105 {color:#000000}Don't forget to change the username and password after you have finished checking out the build server and start using it in production.&nbsp;{color}
106
107 {{/panel}}
108
109 1. The way to start it depends on the version. The current way is to go to the Web Settings in Server Admin, Settings, General, check the Tomcat checkbox. Restart the WebServer.&nbsp;
110 1. {{color value="#003366"}}[{{/color}}{{color value="#003366"}}Download Hudson{{/color}}http:~/~/hudson-ci.org/latest/hudson.war, saving&nbsp;##hudson.war##&nbsp;somewhere for later.
111 1. Create a folder for Hudson to work in:&nbsp;##/Library/hudson##
112 1. Change ownership of that folder:&nbsp;##chown appserver:sys /Library/Hudson##
113 1. Add the following to&nbsp;##/Library/Tomcat/bin/setenv.sh##:
114
115 {{noformat}}
116
117 export HUDSON_HOME=/Library/Hudson
118 export JAVA_OPTS=-Djava.awt.headless=true
119
120 {{/noformat}}
121
Johan Henselmans 114.1 122 1. Make sure that you are using UTF8 in the Connector, by adding
Johan Henselmans 108.1 123
Johan Henselmans 114.1 124 {{noformat}}
Johan Henselmans 108.1 125
Johan Henselmans 114.1 126 URIEncoding="UTF-8"
127
128 {{/noformat}}
129
130 to the Connector in /Library/tomcat/conf/server.xml in such a way:
131
132 {{noformat}}
133
134 <Connector port="8080" protocol="HTTP/1.1"
135 connectionTimeout="20000"
136 redirectPort="8443" URIEncoding="UTF-8"/>
137
138 {{/noformat}}
139
140 1. Install Hudson in Tomcat: go to [[http://localhost:8080]], login with the user and password that you have created in tomcat-users.xml, and upload hudson.war to the Tomcat server.
141
142 1. Goto [[http://localhost:8080/hudson]]&nbsp;and you can start configuring your Hudson build server.
143
Paul Hoadley 102.1 144 == Building WO Apps ==
Mike Schrag 90.1 145
146 * Check out [[^setupWorkspace.sh]]