Version 106.1 by Paul Hoadley on 2010/07/31 08:53

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
Paul Hoadley 106.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
Paul Hoadley 106.1 35 === Servlet Container Installation ===
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##
Paul Hoadley 106.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
Paul Hoadley 102.1 87 == Building WO Apps ==
Mike Schrag 90.1 88
89 * Check out [[^setupWorkspace.sh]]