Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

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.

Files for jarn.jenkins, version 1.0b2
Filename, size File type Python version Upload date Hashes
Filename, size jarn.jenkins-1.0b2.zip (14.6 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page