Getting Started

Getting Started

Configuration

Creating a buildout defaults file:

Create a ~/.buildout/default.cfg file with the following contents:

[buildout]
eggs-directory = /home/patrick/.buildout/eggs
download-cache = /home/patrick/.buildout/downloads
extends-cache = /home/patrick/.buildout/extends

Note:

  • You will need to create these folders!!!

  • eggs-directory: allows multiple buildouts to share the same eggs.

  • download-cache: shared directory for downloaded archives.

  • extends-cache: shared directory for extended buildout configurations.

To specify a particular python interpreter other than the default:

executable = /opt/python24/bin/python

Setup

  • Create a folder (and optionally a virtualenv for your project.

  • Change into your project folder e.g:

    cd sample-django-buildout/
    
  • Download the bootstrap.py script:

    wget http://svn.zope.org/*checkout*/zc.buildout/trunk/bootstrap/bootstrap.py
    
  • Create a basic buildout.cfg in the root of your project folder:

    [buildout]
    parts =
    
  • Bootstrap the environment (this only has to be done once):

    python bootstrap.py
    

    Note:

    • If you run bootstrap.py with python 2.4 (or 2.5 for example), then your buildout configuration will continue to use this version of python e.g:

      python2.4 bootstrap.py
      
    • The bootstrap.py script will create a buildout script in the bin folder.

    • I had to update my version of setuptools

Usage

  • Update/download/create the buildout.cfg file e.g:

    [buildout]
    parts =
        PIL
        django
    
    [django]
    recipe = djangorecipe
    version = 1.1
    eggs =
        psycopg2
        markdown
        PIL
    
    [PIL]
    recipe = zc.recipe.egg
    egg = PIL==1.1.6
    find-links = http://dist.repoze.org/
    

    Note: The buildout.cfg file is added to version control (probably some other bits as well).

  • Run the buildout script to setup the environment:

    bin/buildout