Skip to main content

Buildout recipe for installing a Hudson instance

Project description

Overview

This recipe has been superseded by jarn.jenkins maintained on Github at https://github.com/Jarn/jarn.jenkins.

This is a recipe to set up and configure Hudson in a Jetty servlet container.

Note

The recipe is currently not compatible with Python 2.7 due to an incompatibility in the iw.recipe.template recipe used internally.

Basic setup

A basic buildout configuration using this recipe looks like this:

[buildout]

parts =
    jetty-download
    hudson-download
    hudson

[jetty-download]
recipe = gocept.download
url = http://download.eclipse.org/jetty/stable-7/dist/jetty-distribution-7.0.1.v20091125.tar.gz
md5sum = b29813029fbbf94d05e1f28d9592813f
strip-top-level-dir = true

[hudson-download]
recipe = gocept.download
url = http://download.hudson-labs.org/war/1.375/hudson.war
md5sum = c9bd2515f5b01e46eed2f740aef5e145

[hudson]
recipe = collective.recipe.hudson
jetty-location = ${jetty-download:location}
hudson-location = ${hudson-download:location}

This will download both Jetty and Hudson and create an executable Jetty environment in parts/hudson. It will also create a control script in bin/hudson. The name of the script is the name of the section.

To test the setup run bin/hudson fg and check the console output. By default this will run a Jetty server on port 8070. The hudson instance is accessible in a browser at http://127.0.0.1:8070/hudson/.

Hudson will write all its log files into var/hudson/log. All its configuration including jobs and past runs will go into var/hudson/data. The directory name in var will have the name of the recipe section.

Options

The recipe supports the following options:

host

Name or IP address of the Jetty server, e.g. some.server.com. Defaults to 127.0.0.1.

port

Server port. Defaults to 8070.

java-opts

Optional. Parameters to pass to the Java Virtual Machine (JVM) used to run Jetty. Each option is specified on a separated line. If you run into memory problems it’s typical to pass:

[hudson]
...
java-opts =
  -Xms512M
  -Xmx1024M
...

Changelog

1.0 - 2011-02-13

  • Superseded by jarn.jenkins. [hannosch]

1.0a3 - 2010-09-10

  • Added note about Python 2.7 incompatibility. Thanks to Rob Madole for notifying me. [hannosch]

  • Updated example to Hudson 1.375. [hannosch]

1.0a2 - 2010-03-04

  • Configure the HUDSON_HOME environment variable inside the jetty.xml instead of the control script. [hannosch]

  • Simplify the example buildout a bit. [hannosch]

1.0a1 - 2010-03-04

  • Better update handling. [hannosch]

  • Don’t configure a ContextDeployer which allows us to skip the contexts examples cleanup. [hannosch]

  • Added basic package documentation. [hannosch]

  • Updated jetty configuration to match new class names caused by the move to the Eclipse project. [hannosch]

  • Initial code, largely based on collective.recipe.solrinstance. [hannosch]

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page