Skip to main content

ZC Buildout recipe for setting up RabbitMQ.

Project description

Buildout recipe for downloading and installing RabbitMQ.


Thanks to Martijn Pieters for refactoring script generation to ensure that we always use an appropriate rabbitmq-server script for the installed version.

A brief documentation

This recipe takes a number of options:

The path where to find the erlc command (default = find it in PATH).
The URL to download the RabbitMQ source distribution.
Optional string passed as cookie to the erl runtime (-setcookie).
Alternate make command (e.g. gmake).

To further customize your RabbitMQ server configuration, create a rabbitmq-env file in the etc/ directory of your buildout, following the RabbitMQ configuration guide to set environment variables.

You can also create a rabbitmq.config file in the same location to provide erlang configuration statements.


We will define a buildout template used by the recipe:

>>> buildout_cfg = """
... [buildout]
... parts = rabbitmq
... offline = true
... [rabbitmq]
... recipe = rod.recipe.rabbitmq
... url =
... """

We’ll start by creating a buildout:

>>> import os.path
>>> write('buildout.cfg', buildout_cfg)

Running the buildout gives us:

>>> output = system(buildout)
>>> if output.endswith("ebin ebin/ < ebin/\n"): True
... else: print output


2.0.0 2011-05-18

  • Uses the buildout download cache if available.
  • Refactored script generation: reuses the existing scripts and customize them using the built-in rabbitmq-env sourcing option. This ensures we always use an appropriate rabbitmq-server script for the installed version.
  • Abandoned obsolete prefix buildout option.
  • Updated documentation.

1.1.7 2011-04-11

  • Added ‘make’ buildout option to specify an alternate make command (e.g. gmake).

1.1.6 2010-06-21

  • Using rabbit@localhost as NODENAME in order to provide portability of the database across machines independent of the hostname since you can not start RabbitMQ on a different machine with a different hostname (the database is tied to the hostname).

1.1.5 2010-06-21

  • Added support for setting an optional erlang cookie (-setcookie) through the ‘cookie’ option.

1.1.4 2010-05-09

  • Fixed issue where rabbitmq scripts used an incorrect default Erlang path when no erlang-path option was specified.

1.1.3 2010-05-03

  • Fixed parameter in generated rabbitmqctl script (-sname instead of -name).

1.1.2 2010-05-02

  • Fixed parameter in generated rabbitmq-server script (-sname instead of -name).

1.1.1 2010-03-21

  • Fixes an issue where the Erlang path wasn’t set correctly.

1.1.0 2010-03-20

  • Updated for RabbitMQ 1.7.2.

1.0.0 2009-08-23

  • Initial release.

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 rod.recipe.rabbitmq, version 2.0.0
Filename, size File type Python version Upload date Hashes
Filename, size rod.recipe.rabbitmq-2.0.0.tar.gz (11.9 kB) File type Source Python version None Upload date Hashes View

Supported by

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