Personal tools
You are here: Home Documentation Tutorials Introduction to zc.buildout Buildout overview

Buildout overview

Define the full system using ConfigParser format extended with a variable-substitution syntax
Jim Fulton's tutorial for using buildout, originally given at DZUG 2007
Page 4 of 17.
  • Configuration driven

    • ConfigParser +

      handout

      Buildout uses the raw ConfigParser format extended with a variable-substitution syntax that allows reference to variables by section and option:

      ${sectionname:optionname}
      
    • Allows full system to be defined with a single file

      handout

      Although it is possible and common to factor into multiple files.

  • Specify a set of "parts"

    • recipe
    • configuration data
    handout

    Each part is defined by a recipe, which is Python software for installing or uninstalling the part, and data used by the recipe.

  • Install and uninstall

    handout

    If a part is removed from a specification, it is uninstalled.

    If a part's recipe or configuration changes, it is uninstalled and reinstalled.

Buildout overview (continued)

  • Recipes
    • Written in python
    • Distributed as eggs
  • Egg support
    • Develop eggs
    • Egg-support recipes

Quick intro

  • Most common case
    • Working on a package
    • Want to run tests
    • Want to generate distributions
  • buildout is source project
  • Example: zope.event