1. Dmitri Lebedev
  2. fastdev-django

Source

fastdev-django / buildout.cfg

# prerequisites

# Django compressor requires lxml
# lxml requires libxslt-dev and python-dev installed in system
# sudo apt-get install libxslt-dev python-dev

# sudo apt-get install rubygems


[buildout]
# add local subrepos that have setup.py to develop eggs in 'develop =' section.
# gp.recipe.node works only from the repo, not from pypi
develop = djaml

# hamlpy needs a patch that this subrepo has
parts =
	django
	cleanup
	sass
	yuic

versions = versions
project = project


[sass]
project = ${buildout:project}
recipe = rubygemsrecipe
gems =
	sass


[coffee]
recipe = gp.recipe.node
npms =
	coffee-script
scripts =
	coffee
	npm


[pyflakes]
recipe = zc.recipe.egg
scripts =
	pyflakes
eggs =
	pyflakes
entry-points = pyflakes=pkg_resources:run_script
arguments = 'pyflakes', 'pyflakes'


[pep8]
recipe = zc.recipe.egg
scripts =
	pep8
eggs =
	pep8
entry-points = pep8check=pep8:_main


[django]
recipe = djangorecipe
project = ${buildout:project}
settings = dev
eggs =
#	mock                  # useful for mocking some objects in unit tests
#	django-reversion      # useful for keeping revisions of objects
	ipython               # advanced interactive Python shell
	django_extensions     # shell_plus
	django-annoying       # a set of decorators and middleware to simplify coding
	django-debug-toolbar  # cool debugging
#	werkzeug              # WSGI debug post-mortem shell in the page
#	django-tastypie       # RESTful API for models
#	Pillow				  # replacement of PIL
	pudb                  # console debugging IDE
	django_compressor     # js/css compressor/compiler
	BeautifulSoup         # required by compressor
	html5lib              # required by compressor
	lxml                  # required by compressor
	django-appconf        # required by compressor
#	versiontools          # required by reversion
	hamlpy                # HAML templates. Before a pull request is done, culebron-hamlpy is used.
	djaml                 # hamlpy loader


[prod]
recipe = djangorecipe
project = ${buildout:project}
settings = prod
eggs = ${django:eggs}
wsgi = true


[versions]
# change these versions when you are sure they will be compatible with your project
django = 1.4.0
django-annoying = 0.7.6
django_compressor = 1.1
django_extensions = 1.7.1
django-reversion = 1.5.1
django-tastypie = 0.9.9
ipython = 0.11


[cleanup]
recipe = iw.recipe.cmd
on_install = true
on_update = true
cmds =
	find ${buildout:project} -name '*.py[co]' -delete


[webfaction]
recipe = iw.recipe.cmd
on_install = true
on_update = true
cmds =
	rm djangopaths.py
	ln -s bin/django djangopaths.py
	echo "import os" >> ${buildout:project}.wsgi
	echo "import djangopaths" >> ${buildout:project}.wsgi
	echo "from django.core.handlers.wsgi import WSGIHandler"  >> ${buildout:project}.wsgi
	echo "" >> ${buildout:project}.wsgi
	echo "os.environ['DJANGO_SETTINGS_MODULE'] = '${buildout:project}.production'"  >> ${buildout:project}.wsgi
	echo "application = WSGIHandler()"  >> ${buildout:project}.wsgi


[yuic]
# YUI compressor for CSS & JS files. Set COMPRESS_ENABLED = True in settings.py to turn it on
recipe = zc.recipe.egg
eggs = yuicompressor