Skip to main content

A Buildout recipe to install and configure Postgres database with Anaconda.

Project description


birdhousebuilder.recipe.postgres is a Buildout recipe to install and configure Postgres database with Anaconda. Postgres will be deployed as a Supervisor service.

The recipe is based on

This recipe is used by the Birdhouse project.


The recipe requires that Anaconda is already installed. It assumes that the default Anaconda location is in your home directory ~/anaconda. Otherwise you need to set the ANACONDA_HOME environment variable or the Buildout option anaconda-home.

It installs the postgresql package from a conda channel in a conda environment named birdhouse. The location of the birdhouse environment is .conda/envs/birdhouse. It deploys a Supervisor configuration for Postgres in ~/.conda/envs/birdhouse/etc/supervisor/conf.d/postgres.conf. Supervisor can be started with ~/.conda/envs/birdhouse/etc/init.d/supervisor start.

The Postgres database files are by default in ~/.conda/envs/birdhouse/var/lib/postgres.

The recipe depends on birdhousebuilder.recipe.conda and birdhousebuilder.recipe.supervisor.

Supported options

The recipe supports the following options:


Buildout option with the root folder of the Anaconda installation. Default: $HOME/anaconda. The default location can also be set with the environment variable ANACONDA_HOME. Example:

export ANACONDA_HOME=/opt/anaconda

Search priority is:

  1. anaconda-home in buildout.cfg
  3. $HOME/anaconda
Port used for Postgres. Default: 5433.
path to the database files. Default: ~/.conda/envs/birdhouse/var/lib/postgres
Options for Postgres initialisation. Default: --auth=trust
psql commands to setup your database schema and users.

Example usage

The following example buildout.cfg installs Postgres with Anaconda:

parts = postgres

anaconda-home = /home/myself/anaconda

recipe = birdhousebuilder.recipe.postgres
port = 5433
cmds =
     createuser -p 5433 --createdb --no-createrole --no-superuser --login demo
     createdb -p 5433 --owner=demo demo

After installing with Buildout start the Postgres service with:

$ cd /home/myself/.conda/envs/birdhouse
$ etc/init.d/supervisord start  # start|stop|restart
$ bin/supervisorctl status      # check that postgres is running


Carsten Ehbrecht ehbrecht at

Change History

0.2.0 (2015-03-31)

  • using postgresql from anaconda
  • refactored postgres setup
  • using subprocess instead of os.system

0.1.0 (2015-03-30)

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 birdhousebuilder.recipe.postgres, version 0.2.0
Filename, size File type Python version Upload date Hashes
Filename, size birdhousebuilder.recipe.postgres-0.2.0.tar.gz (12.8 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page