[RSS]

Installation guide for parallel team integration Hudson instance

Requirements

  • Unix-like operating system
  • Working Hg installation as is described at HgHowTos
  • merge binary - it is in rcs package for most systems
  • Latest 1.5.0 JDK
  • Latest Apache Tomcat or similar
  • Ant 1.7.0
  • Latest version of Hudson
  • At least 10GB of disk space

Installation

Tomcat and Hudson

First of all you need to get Hudson working on your machine
  • unpack Tomcat's .tar.gz to directory of your preference - $tomcat-dir
  • copy hudson.war to $tomcat-dir/webapps
  • edit your .profile and set HUDSON_HOME variable to your preferred path (it will be used as Hudson working directory) - $hudson-home. Also set export CATALINA_OPTS="-Xmx512m" . Source the profile (source .profile).
  • create $hudson-home/plugins directory, download VNC and Mercurial plugins from https://hudson.dev.java.net/ and put them to $hudson-home/plugins directory
  • install JDK 1.5.0 and Apache Ant
  • set JRE_HOME environment variable to your $jdk-home directory
  • run $tomcat-dir/bin/startup.sh
  • check that the Tomcat and Hudson are running, point your browser to http://$hudson-machine-name:8080/hudson/

Team repository push job setup

  • point your browser to http://$hudson-machine-name:8080/hudson/
  • Go to Hudson management link
  • click New job link
  • Check New Freestyle Job and enter job name Team_repository_push
  • Use Mercurial version control
  • the repository URL is http://hg.netbeans.org/main-golden/
  • Check poll SCM
  • Enter schedule * * * * * to run it every minute
  • Use this script an example: JDK_HOME=/opt/java/jdk1.5.0_12 export JDK_HOME ANT_HOME=/space/apache-ant-1.7.0 export ANT_HOME PATH=$ANT_HOME/bin:$JDK_HOME/bin:$PATH:/usr/sfw/bin export action=sync export push_username=your_usename export push_password=your_password export repository=your_team_repository_name sh -x nbbuild/hudson/team-repo
  • Set up email notification if desired.
  • click Save button

Team repository build job setup

  • point your browser to http://$hudson-machine-name:8080/hudson/
  • Go to Hudson management link
  • click New job
  • Check New Freestyle Job and enter job name Team_repository_build
  • Use Mercurial version control
  • the repository URL is http://hg.netbeans.org/$your_team_repository_name/
  • Check poll SCM
  • Enter schedule * * * * * to run it every minute
  • Check Run Xvnc during build
  • Use this script an example: JDK_HOME=/opt/java/jdk1.5.0_12 export JDK_HOME ANT_HOME=/space/apache-ant-1.7.0 export ANT_HOME PATH=$ANT_HOME/bin:$JDK_HOME/bin:$PATH:/usr/sfw/bin export action=build export push_username=your_usename export push_password=your_password export repository=your_team_repository_name sh -x nbbuild/hudson/team-repo
  • Check Archive the artifacts
  • Enter real.workspace/nbbuild/NetBeans-* to File to archive field
  • Check Publish JUnit test result report
  • Enter real.workspace/*/build/test/unit/results/*.xml to Test report XMLs field
  • Set up email notification if desired.
  • click Save button