wiki:BUILD_SERVER_INSTANCE_R0

Version 7 (modified by pav, 16 years ago) (diff)

--

Error: Macro BackLinksMenu(None) failed
compressed data is corrupt

Error: Macro TicketQuery(summary=BUILD_SERVER_INSTANCE_R0, format=table, col=summary|owner|status|type|component|priority|effort|importance, rows=description|analysis_owners|analysis_reviewers|analysis_score|design_owners|design_reviewers|design_score|implementation_owners|implementation_reviewers|implementation_score|test_owners|test_reviewers|test_score|) failed
current transaction is aborted, commands ignored until end of transaction block

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.

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.

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.)