Version 104.1 by Johan Henselmans on 2010/08/18 20:55

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 104.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 104.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##
74 1. Change ownership of that folder: ##chown www:_www /opt/local/var/db/hudson##
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 104.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 1. {{code value="xml"}}
92 <?xml version='1.0' encoding='utf-8'?>
93 <tomcat-users>
94 <role rolename="manager"/>
95 <role rolename="admin"/>
96 <user username="tomcat" password="tomcat" roles="admin,manager"/>
97 </tomcat-users> 
98 {{/code}}
99
100 {{panel bgColor="#F7D6C1"}}
101
102 {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}
103
104 {{/panel}}
105
106 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;
107 1. {{color value="#003366"}}[{{/color}}Download Hudson{{color}}|http://hudson-ci.org/latest/hudson.war]{{/color}}, saving&nbsp;##hudson.war##&nbsp;somewhere for later.
108 1. Create a folder for Hudson to work in:&nbsp;##/Library/hudson##
109 1. Change ownership of that folder:&nbsp;##chown appserver:_appserver /Library/Hudson##
110 1. Add the following to&nbsp;##/Library/Tomcat/bin/setenv.sh##:
111
112 {{noformat}}
113
114 export HUDSON_HOME=/Library/Hudson
115 export JAVA_OPTS=-Djava.awt.headless=true
116
117 {{/noformat}}
118
119 {{color value="#000000"}}
120 &nbsp;
121 {{/color}}
122
123 1. Install Hudson in Tomcat: go to&nbsp;{{color value="#003366"}}[{{/color}}http:~/~/localhost:8080{{color}}|http://localhost:8080]{{/color}}, login with the user and password that you have created in&nbsp;##tomcat-users.xml##, and upload&nbsp;##hudson.war##&nbsp;to the Tomcat server.
124 1. Goto&nbsp;{{color value="#003366"}}[{{/color}}http:~/~/localhost:8080/hudson{{color}}|http://localhost:8080/hudson]{{/color}}&nbsp;and you can start configuring your Hudson build server.
125
Paul Hoadley 102.1 126 == Building WO Apps ==
Mike Schrag 90.1 127
128 * Check out [[^setupWorkspace.sh]]