Skip to content

Commit

Permalink
Keep zc.buildout in 1.x branch
Browse files Browse the repository at this point in the history
  • Loading branch information
hvelarde committed Oct 29, 2013
1 parent 844349c commit 2d0668b
Showing 1 changed file with 22 additions and 7 deletions.
29 changes: 22 additions & 7 deletions bootstrap.py
Expand Up @@ -136,10 +136,6 @@ def normalize_to_url(option, opt_str, value, parser):

options, args = parser.parse_args()

# if -c was provided, we push it back into args for buildout's main function
if options.config_file is not None:
args += ['-c', options.config_file]

if options.eggs:
eggs_dir = os.path.abspath(os.path.expanduser(options.eggs))
else:
Expand All @@ -152,8 +148,7 @@ def normalize_to_url(option, opt_str, value, parser):
options.setup_source = setuptools_source

if options.accept_buildout_test_releases:
args.append('buildout:accept-buildout-test-releases=true')
args.append('bootstrap')
args.insert(0, 'buildout:accept-buildout-test-releases=true')

try:
import pkg_resources
Expand All @@ -170,6 +165,8 @@ def normalize_to_url(option, opt_str, value, parser):
setup_args['download_base'] = options.download_base
if options.use_distribute:
setup_args['no_fake'] = True
if sys.version_info[:2] == (2, 4):
setup_args['version'] = '0.6.32'
ez['use_setuptools'](**setup_args)
if 'pkg_resources' in sys.modules:
reload(sys.modules['pkg_resources'])
Expand All @@ -192,6 +189,8 @@ def normalize_to_url(option, opt_str, value, parser):
find_links = options.download_base
if not find_links:
find_links = os.environ.get('bootstrap-testing-find-links')
if not find_links and options.accept_buildout_test_releases:
find_links = 'http://downloads.buildout.org/'
if find_links:
cmd.extend(['-f', quote(find_links)])

Expand Down Expand Up @@ -228,6 +227,8 @@ def _final_version(parsed_version):
bestv = None
for dist in index[req.project_name]:
distv = dist.parsed_version
if distv >= pkg_resources.parse_version('2dev'):
continue
if _final_version(distv):
if bestv is None or distv > bestv:
best = [dist]
Expand All @@ -237,8 +238,12 @@ def _final_version(parsed_version):
if best:
best.sort()
version = best[-1].version

if version:
requirement = '=='.join((requirement, version))
requirement += '=='+version
else:
requirement += '<2dev'

cmd.append(requirement)

if is_jython:
Expand All @@ -257,6 +262,16 @@ def _final_version(parsed_version):
ws.add_entry(eggs_dir)
ws.require(requirement)
import zc.buildout.buildout

# If there isn't already a command in the args, add bootstrap
if not [a for a in args if '=' not in a]:
args.append('bootstrap')


# if -c was provided, we push it back into args for buildout's main function
if options.config_file is not None:
args[0:0] = ['-c', options.config_file]

zc.buildout.buildout.main(args)
if not options.eggs: # clean up temporary egg directory
shutil.rmtree(eggs_dir)

0 comments on commit 2d0668b

Please sign in to comment.