Version 100.1 by fcobia on 2009/10/22 10:37

Hide last authors
fcobia 100.1 1 Hudson is a build server that takes the chore of the building and can do it automatically, based on all kinds of variables.
Pascal Robert 37.1 2
fcobia 100.1 3 The complete introduction has been show on wowodc-west in 2009.
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
David Avendasora 92.1 13 1. Create a /Developer/Hudson/Home directory
14 1. Download Hudson From [[http://hudson.dev.java.net]]. Save the hudson.war file to /Developer/Hudson
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
fcobia 100.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
fcobia 100.1 32 1. Point your browser to: http:~/~/localhost:8080/
33 1. Start setting up jobs!
Paul Hoadley 98.1 34
David Avendasora 92.1 35 === Servlet Container Installation ===
36
fcobia 100.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
David Avendasora 92.1 45 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:
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
David Avendasora 92.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
David Avendasora 92.1 72 1. download Hudson from [[http://hudson.dev.java.net]], take care that you use the contextual menu to download the link hudson war file
73 1. create a folder /opt/local/var/db/hudson (this will be the place where hudson will store it's stuff
fcobia 100.1 74 1. change ownership of that folder with ownership //www:_www//
David Avendasora 92.1 75 1. add 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
fcobia 100.1 84 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.
David Avendasora 92.1 85 1. Goto [[http://localhost:8080/hudson]] and you can start configuring your Hudson build server
fcobia 100.1 86
Mike Schrag 90.1 87
88 === Building WO Apps ===
89
90 * Check out [[^setupWorkspace.sh]]