Buildout and Plone

Post on 18-May-2015

22.411 views 1 download

Tags:

description

A presentation outlining some Buildout basics particularly in the context of setting up and maintaining a Plone instance.

Transcript of Buildout and Plone

Tim KnappEmerge Technologywww.emergetec.com

Buildout and Plone

Why Buildout?

Consistency

Dependency Management

Speeds Up Deployment

Buildout Basics

Buildout and PloneNZPUG Meeting Dec 2008 / Tim Knapp

Configuration File

[buildout]parts =    zope    plone    instance

[plone]recipe = plone.recipe.plone

[zope2]recipe = plone.recipe.zope2instanceuser = admin:admineggs = ${plone:eggs}products = ${plone:products}

Buildout and PloneNZPUG Meeting Dec 2008 / Tim Knapp

Advanced SyntaxVariable Substitution

Option Addition and Removal

${parts:option}

${plone:eggs}${buildout:directory}option = ${buildout:directory}/somefolder

options = foo bar

options += bazoptions -= foo

Buildout and PloneNZPUG Meeting Dec 2008 / Tim Knapp

Buildout Directory● bin/● bootstrap.py● buildout.cfg● develop-eggs/● downloads/● eggs/● parts/● products/● src/

Buildout and PloneNZPUG Meeting Dec 2008 / Tim Knapp

Buildout Options● bin-directory● develop-eggs-directory● eggs-directory● parts● parts-directory● log-level

Buildout and PloneNZPUG Meeting Dec 2008 / Tim Knapp

Parts

[buildout]parts =    instance

[instance]recipe = plone.recipe.zope2instanceuser = admin:admineggs = ${plone:eggs} archetypes.schemaextenderzcml = archetypes.schemaextenderproducts = ${plone:products}environment­vars =     TZ Pacific/Aucklandhttp­address = 8080zeo­address = 8000debug­mode = onverbose­security = onevent­log­level = debug

Buildout and PloneNZPUG Meeting Dec 2008 / Tim Knapp

Plone Recipes

[buildout]parts =    zope2    plone    instance

[plone]recipe = plone.recipe.plone

[zope2]recipe = plone.recipe.zope2install

[instance]recipe = plone.recipe.zope2instanceuser = admin:admineggs = ${plone:eggs}products = ${plone:products}

The Command Line

Buildout and PloneNZPUG Meeting Dec 2008 / Tim Knapp

Command Line Options

$cd path/to/my/buildout

$python2.4 bootstrap.pyCreating directory 'mybuildout/bin'.Creating directory 'mybuildout/parts'.Creating directory 'mybuildout/develop­eggs'.Generated script 'mybuildout/bin/buildout'.

$ bin/buildout

$ bin/instance start

Buildout and PloneNZPUG Meeting Dec 2008 / Tim Knapp

Advanced CLI Options● -v and -q

– increase and decrease verbosity● -n and -N

– Newest and non-newest modes● -O and -o

– online and offline mode

Buildout and PloneNZPUG Meeting Dec 2008 / Tim Knapp

Wrapping Up● Buildout Basics

– Configuration File– Buildout Directory– Buildout Options– Parts– Recipes

● Command Line

Buildout and PloneNZPUG Meeting Dec 2008 / Tim Knapp

Credits● Photo Credits

– http://flickr.com/photos/_boris/2796908072/

– http://flickr.com/photos/bullish1974/2648544508/

– http://flickr.com/photos/binary_koala/86227485/

– http://www.flickr.com/photos/bahkubean/2491416430/

● Clayton Parker: http://www.slideshare.net/claytron/reaching-deployment-nirvana-using-buildout-presentation