# HG changeset patch # User Madhusudan.C.S # Date 1264340816 -19800 # Node ID cca34bc300d72cbe0bb1f812ad4754ef61d22e48 # Parent 12ca78ff63e4bb980abf9243ccfea31c0b3d46ff Added initial buildout configuration files. diff -r 12ca78ff63e4 -r cca34bc300d7 bootstrap.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/bootstrap.py Sun Jan 24 19:16:56 2010 +0530 @@ -0,0 +1,121 @@ +############################################################################## +# +# Copyright (c) 2006 Zope Corporation and Contributors. +# All Rights Reserved. +# +# This software is subject to the provisions of the Zope Public License, +# Version 2.1 (ZPL). A copy of the ZPL should accompany this distribution. +# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED +# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS +# FOR A PARTICULAR PURPOSE. +# +############################################################################## +"""Bootstrap a buildout-based project + +Simply run this script in a directory containing a buildout.cfg. +The script accepts buildout command-line options, so you can +use the -c option to specify an alternate configuration file. + +$Id$ +""" + +import os, shutil, sys, tempfile, urllib2 +from optparse import OptionParser + +tmpeggs = tempfile.mkdtemp() + +is_jython = sys.platform.startswith('java') + +# parsing arguments +parser = OptionParser() +parser.add_option("-v", "--version", dest="version", + help="use a specific zc.buildout version") +parser.add_option("-d", "--distribute", + action="store_true", dest="distribute", default=False, + help="Use Disribute rather than Setuptools.") + +parser.add_option("-c", None, action="store", dest="config_file", + help=("Specify the path to the buildout configuration " + "file to be used.")) + +options, args = parser.parse_args() + +# if -c was provided, we push it back into args for buildout' main function +if options.config_file is not None: + args += ['-c', options.config_file] + +if options.version is not None: + VERSION = '==%s' % options.version +else: + VERSION = '' + +USE_DISTRIBUTE = options.distribute +args = args + ['bootstrap'] + +to_reload = False +try: + import pkg_resources + if not hasattr(pkg_resources, '_distribute'): + to_reload = True + raise ImportError +except ImportError: + ez = {} + if USE_DISTRIBUTE: + exec urllib2.urlopen('http://python-distribute.org/distribute_setup.py' + ).read() in ez + ez['use_setuptools'](to_dir=tmpeggs, download_delay=0, no_fake=True) + else: + exec urllib2.urlopen('http://peak.telecommunity.com/dist/ez_setup.py' + ).read() in ez + ez['use_setuptools'](to_dir=tmpeggs, download_delay=0) + + if to_reload: + reload(pkg_resources) + else: + import pkg_resources + +if sys.platform == 'win32': + def quote(c): + if ' ' in c: + return '"%s"' % c # work around spawn lamosity on windows + else: + return c +else: + def quote (c): + return c + +cmd = 'from setuptools.command.easy_install import main; main()' +ws = pkg_resources.working_set + +if USE_DISTRIBUTE: + requirement = 'distribute' +else: + requirement = 'setuptools' + +if is_jython: + import subprocess + + assert subprocess.Popen([sys.executable] + ['-c', quote(cmd), '-mqNxd', + quote(tmpeggs), 'zc.buildout' + VERSION], + env=dict(os.environ, + PYTHONPATH= + ws.find(pkg_resources.Requirement.parse(requirement)).location + ), + ).wait() == 0 + +else: + assert os.spawnle( + os.P_WAIT, sys.executable, quote (sys.executable), + '-c', quote (cmd), '-mqNxd', quote (tmpeggs), 'zc.buildout' + VERSION, + dict(os.environ, + PYTHONPATH= + ws.find(pkg_resources.Requirement.parse(requirement)).location + ), + ) == 0 + +ws.add_entry(tmpeggs) +ws.require('zc.buildout' + VERSION) +import zc.buildout.buildout +zc.buildout.buildout.main(args) +shutil.rmtree(tmpeggs) diff -r 12ca78ff63e4 -r cca34bc300d7 buildout.cfg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/buildout.cfg Sun Jan 24 19:16:56 2010 +0530 @@ -0,0 +1,65 @@ +[buildout] +parts = + django + tagging + registration + +eggs = + PIL + HTML5lib + pisa + Werkzeug + elementtree + docutils + markdown + textile + beautifulsoup + MySQL-python + +[versions] +reportlab=2.3 + +[reportlab] +recipe=zc.recipe.egg +eggs= + reportlab +find-links= + http://distfiles.minitage.org/public/externals/minitage/ + +[django] +recipe = djangorecipe +version = 1.1 +settings = production +eggs = + ${buildout:eggs} + ${reportlab:eggs} +pythonpath = + ${basic-apps:location} + ${tagging:location} + ${django-command-extensions:location} + ${south:location} + ${registration:location} + +[basic-apps] +recipe = infrae.subversion +urls = + http://django-basic-apps.googlecode.com/svn/trunk/ basic + +[tagging] +recipe = infrae.subversion +urls = + http://django-tagging.googlecode.com/svn/trunk/ . + +[django-command-extensions] +recipe = zerokspot.recipe.git +repository = http://github.com/django-extensions/django-extensions.git + +[south] +recipe = infrae.subversion +urls = + http://svn.aeracode.org/svn/south/tags/0.5/ . + +[registration] +recipe = mercurialrecipe +repository = http://bitbucket.org/ubernostrum/django-registration/ + diff -r 12ca78ff63e4 -r cca34bc300d7 development.cfg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/development.cfg Sun Jan 24 19:16:56 2010 +0530 @@ -0,0 +1,10 @@ +[buildout] +extends = + buildout.cfg + +eggs += + pysqlite + +[django] +settings = development +eggs = ${buildout:eggs} diff -r 12ca78ff63e4 -r cca34bc300d7 production.cfg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/production.cfg Sun Jan 24 19:16:56 2010 +0530 @@ -0,0 +1,7 @@ +[buildout] +extends = + buildout.cfg + +eggs += + MySQLdb +