Since Day 1 with Plone circa 2004, I’ve always taken pride in and greatly enjoyed refining my development environment. It’s been stable for a while now (> 1 year or so) so I thought I’d share.
Operating system
Mac OS X Latest (Lion, at the time of this writing)
Terminal
Mac OS X Terminal
Editor
Vim
Python
Yes. All versions, via the collective Python buildout:
Plone
Yes. All versions, via pythonpackages.com:
Additional tools
A shell script to run virtualenv, buildout, etc:
#!/bin/sh if ! [ -n "$1" ] then echo "Usage:\n\n$0 <dir>\n" exit 1 fi if ! [ -d $1 ] then mkdir $1 fi cd $1 virtualenv-2.7 . bin/pip install zc.buildout bin/buildout init cat << EOF > buildout.cfg [buildout] extends = http://build.pythonpackages.com/buildout/plone/4.2.x-dev EOF bin/buildout bin/plone start sleep 4 echo "Adding Plone site..." curl -d form.submitted:boolean="True" http://admin:admin@localhost:8080/@@plone-addsite\?site_id=Plone bin/plone stop bin/plone fg
A Python script to create temporary directories:
#!/usr/bin/env python import os import tempfile print os.path.abspath(tempfile.mkdtemp())
A default buildout config file:
[buildout] eggs-directory = /Users/aclark/Developer/eggs-directory download-cache = /Users/aclark/Developer/download-cache extends-cache = /Users/aclark/Developer/extends-cache
Workflow
My typical workflow looks like this:
- Hang in #plone on irc.freenode.net and wait for questions
- Hear question and get inspired to run Plone
- Run: $ test-plone `tmp`
~ 1 minute later I’m browsing http://localhost:8080/Plone and can install add-ons, check ZMI settings, etc.
Enjoy.