Version 7 (modified by pav, 16 years ago) (diff) |
---|
Analysis
Overview
The goal of this task (and its related) is to create a one-step process for turning source code into a working system. This involves setting up a build server.
Task requirements
We must provide a running and available instance of a build server.
- Search for a build server which suits our needs.
- Locate the place where the server will be (maybe the same as the new Trac system?).
- Make basic setup and run the server.
- Integration with the project and further setup are not part of this task.
Task result
A build server running.
Implementation idea
When searching for a suitable server, keep in mind that it must provide all the functionality, that the tasks in "Related" section require.
Look at Hudson and Continuum.
Related
BUILD_SERVER_INTEGRATION_R0
BUILD_SERVER_REPORTS_R0
BUILD_SERVER_DEPLOYMENTS_R0
SCS_MACHINE_SETUP_R1
How to demo
Show the instance running.
Design
- Research is made about hudson and continuum pros and cons. The main differences are:
- Continuum allows multiple jobs over a single project but has problem where if maven "modules" are sibling
projects (i.e. referenced via ../some-project/pom.xml). It is harder to set up.
- hudson is better due to its simplicity. For example to configure a schedule, we should simply add “@daily” on schedule option and all is set. It has also more detailed email notifications.
- For now we will setup Hudson for our build continuous integration server. Visit https://hudson.dev.java.net/.
- There are a lot of reports that can be generated: http://hudson.gotdns.com/wiki/display/HUDSON/Plugins#Plugins-Buildreports
- The server will be set in the scs folder in the new server. See SCS_MACHINE_SETUP_R1.
- Follow the installation instructions: http://hudson.gotdns.com/wiki/display/HUDSON/Installation+and+Execution.
Implementation
- Hudson is running on http://sophie2.org:8080.
- It is set up in the home folder of the user "build" - /home/build/.hudson on the sophie2.org server.
- The logs are redirected to hudson.log file in the same folder.
- There is bash script which starts Hudson named hudson.sh with arguments start/restart/stop depends on what action you want, located in the build's home folder. It is configured to start when the sophie2 server starts.
- The Hudson server has authentication and users are set for all the team members. Registration is no present.
Testing
Comments
(Write comments for this or later revisions here.)