buildout and plone

17
Tim Knapp Emerge Technology www.emergetec.com Buildout and Plone

Upload: knappt

Post on 18-May-2015

22.411 views

Category:

Technology


1 download

DESCRIPTION

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

TRANSCRIPT

Page 1: Buildout and Plone

Tim KnappEmerge Technologywww.emergetec.com

Buildout and Plone

Page 2: Buildout and Plone

Why Buildout?

Page 3: Buildout and Plone

Consistency

Page 4: Buildout and Plone

Dependency Management

Page 5: Buildout and Plone

Speeds Up Deployment

Page 6: Buildout and Plone

Buildout Basics

Page 7: Buildout and Plone

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}

Page 8: Buildout and Plone

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

Page 9: Buildout and Plone

Buildout and PloneNZPUG Meeting Dec 2008 / Tim Knapp

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

Page 10: Buildout and Plone

Buildout and PloneNZPUG Meeting Dec 2008 / Tim Knapp

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

Page 11: Buildout and Plone

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

Page 12: Buildout and Plone

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}

Page 13: Buildout and Plone

The Command Line

Page 14: Buildout and Plone

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

Page 15: Buildout and Plone

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

Page 16: Buildout and Plone

Buildout and PloneNZPUG Meeting Dec 2008 / Tim Knapp

Wrapping Up● Buildout Basics

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

● Command Line

Page 17: Buildout and Plone

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