Wiki source code of Installing and Using the Hudson build server
Version 103.1 by Paul Hoadley on 2010/07/31 07:38
Show last authors
author | version | line-number | content |
---|---|---|---|
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 | == Setting up Hudson == | ||
4 | |||
5 | There are a couple different ways to run Hudson. The easiest is to run it as a standalone application. | ||
6 | |||
7 | === Standalone Installation === | ||
8 | |||
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}} | ||
12 | |||
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 | |||
19 | java -DHUDSON_HOME=/Developer/Hudson/Home -jar /Developer/Hudson/hudson.war | ||
20 | |||
21 | {{/code}} | ||
22 | |||
23 | {{info}} | ||
24 | |||
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. | ||
26 | {code} | ||
27 | java -DHUDSON_HOME=/Developer/Hudson/Home -jar /Developer/Hudson/hudson.war -httpPort=9080 --ajp13Port=9009 | ||
28 | {code} | ||
29 | |||
30 | {{/info}} | ||
31 | |||
32 | 1. Point your browser to: [[http://localhost:8080/]] | ||
33 | 1. Start setting up jobs | ||
34 | |||
35 | === Servlet Container Installation === | ||
36 | |||
37 | 1. Install Tomcat from [[http://www.macports.org]] with the command | ||
38 | |||
39 | {{noformat}} | ||
40 | |||
41 | sudo /opt/local/bin/port install tomcat6 | ||
42 | |||
43 | {{/noformat}} | ||
44 | |||
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: | ||
46 | |||
47 | {{code value="xml"}} | ||
48 | |||
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> | ||
55 | |||
56 | {{/code}} | ||
57 | |||
58 | {{panel bgColor="#F7D6C1"}} | ||
59 | |||
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. | ||
61 | |||
62 | {{/panel}} | ||
63 | |||
64 | 1. Start tomcat | ||
65 | |||
66 | {{noformat}} | ||
67 | |||
68 | sudo launchctl load -w /Library/LaunchDaemons/org.macports.tomcat6.plist | ||
69 | |||
70 | {{/noformat}} | ||
71 | |||
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 | ||
74 | 1. change ownership of that folder with ownership www:_www | ||
75 | 1. add to /opt/local/share/java/tomcat6/conf/setenv.local: | ||
76 | |||
77 | {{noformat}} | ||
78 | |||
79 | export HUDSON_HOME=/opt/local/var/db/hudson | ||
80 | export JAVA_OPTS=-Djava.awt.headless=true | ||
81 | |||
82 | {{/noformat}} | ||
83 | |||
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. | ||
85 | 1. Goto [[http://localhost:8080/hudson]] and you can start configuring your Hudson build server | ||
86 | |||
87 | == Building WO Apps == | ||
88 | |||
89 | * Check out [[^setupWorkspace.sh]] |