Skip to main content

Buildout recipe for installing a Jenkins instance

Project description

Overview

This is a recipe to set up and configure Jenkins 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
    jenkins-download
    jenkins

[jetty-download]
recipe = hexagonit.recipe.download
url = http://download.eclipse.org/jetty/7.2.2.v20101205/dist/jetty-distribution-7.2.2.v20101205.tar.gz
strip-top-level-dir = true

[jenkins-download]
recipe = hexagonit.recipe.download
url = http://mirrors.jenkins-ci.org/war/1.397/jenkins.war
download-only = true

[jenkins]
recipe = jarn.jenkins
jetty-location = ${jetty-download:location}
jenkins-location = ${jenkins-download:location}

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

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

Jenkins will write all its log files into var/jenkins/log. All its configuration including jobs and past runs will go into var/jenkins/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:

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

Changelog

1.0b2 - 2011-03-15

  • Pass os.environ into the Jenkins process. [newbery]

1.0b1 - 2011-02-13

  • Renamed from collective.recipe.hudson to jarn.jenkins, following the Hudson to Jenkins renaming by the Jenkins community. [hannosch]

1.0a3 - 2010-09-10

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

  • Updated example to version 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]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jarn.jenkins-1.0b2.zip (14.6 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page