diff options
author | Michael Bernstein <michael@fandomhome.com> | 2007-02-28 15:43:27 +0000 |
---|---|---|
committer | Michael Bernstein <michael@fandomhome.com> | 2007-02-28 15:43:27 +0000 |
commit | 96a7aab6a432dcd3a9d9e4a587c9920e7c2301a7 (patch) | |
tree | 25609f83d26e8d1ba31d33ca7f61f28aa832bfdb /bootstrap.py | |
parent | 037de95d68439f37368d33ac2c417178a3a2a5e6 (diff) | |
download | zope-pagetemplate-96a7aab6a432dcd3a9d9e4a587c9920e7c2301a7.tar.gz |
buildoutification of zope.pagetemplate.
Diffstat (limited to 'bootstrap.py')
-rw-r--r-- | bootstrap.py | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/bootstrap.py b/bootstrap.py new file mode 100644 index 0000000..e2facc9 --- /dev/null +++ b/bootstrap.py @@ -0,0 +1,52 @@ +############################################################################## +# +# 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: bootstrap.py 72703 2007-02-20 11:49:26Z jim $ +""" + +import os, shutil, sys, tempfile, urllib2 + +tmpeggs = tempfile.mkdtemp() + +ez = {} +exec urllib2.urlopen('http://peak.telecommunity.com/dist/ez_setup.py' + ).read() in ez +ez['use_setuptools'](to_dir=tmpeggs, download_delay=0) + +import pkg_resources + +cmd = 'from setuptools.command.easy_install import main; main()' +if sys.platform == 'win32': + cmd = '"%s"' % cmd # work around spawn lamosity on windows + +ws = pkg_resources.working_set +assert os.spawnle( + os.P_WAIT, sys.executable, sys.executable, + '-c', cmd, '-mqNxd', tmpeggs, 'zc.buildout', + dict(os.environ, + PYTHONPATH= + ws.find(pkg_resources.Requirement.parse('setuptools')).location + ), + ) == 0 + +ws.add_entry(tmpeggs) +ws.require('zc.buildout') +import zc.buildout.buildout +zc.buildout.buildout.main(sys.argv[1:] + ['bootstrap']) +shutil.rmtree(tmpeggs) |