[Checkins] SVN: grokproject/trunk/ Removed code that was factored out into z3c.recipe.eggbasket and

Maurits van Rees m.van.rees at zestsoftware.nl
Wed Jul 2 16:45:48 EDT 2008


Log message for revision 87934:
  Removed code that was factored out into z3c.recipe.eggbasket and
  already gets invoked by grokproject by doing a "buildout bootstrap".
  

Changed:
  U   grokproject/trunk/CHANGES.txt
  U   grokproject/trunk/grokproject/templates.py
  U   grokproject/trunk/grokproject/utils.py

-=-
Modified: grokproject/trunk/CHANGES.txt
===================================================================
--- grokproject/trunk/CHANGES.txt	2008-07-02 19:25:20 UTC (rev 87933)
+++ grokproject/trunk/CHANGES.txt	2008-07-02 20:45:44 UTC (rev 87934)
@@ -4,6 +4,9 @@
 0.8 (unreleased)
 ------------------
 
+* Removed code that was factored out into z3c.recipe.eggbasket and
+  already gets invoked by grokproject by doing a "buildout bootstrap".
+
 * Pinned the required PasteScript version in setup.py of grokproject.
   Refs https://bugs.launchpad.net/grok/+bug/242370
 

Modified: grokproject/trunk/grokproject/templates.py
===================================================================
--- grokproject/trunk/grokproject/templates.py	2008-07-02 19:25:20 UTC (rev 87933)
+++ grokproject/trunk/grokproject/templates.py	2008-07-02 20:45:44 UTC (rev 87934)
@@ -2,24 +2,19 @@
 import os
 import urllib
 import urlparse
-import shutil
-import tempfile
 import xml.sax.saxutils
-import tarfile
 from paste.script import templates
 from paste.script.templates import NoDefault
 from grokproject.utils import run_buildout
-from grokproject.utils import get_buildout_default_eggs_dir
 from grokproject.utils import ask_var
 from grokproject.utils import get_boolean_value_for_option
 from grokproject.utils import create_buildout_default_file
 from grokproject.utils import exist_buildout_default_file
 from grokproject.utils import required_grok_version
-from grokproject.utils import is_grok_installed
-from grokproject.utils import install_grok
 
 GROK_RELEASE_URL = 'http://grok.zope.org/releaseinfo/'
 
+
 class GrokProject(templates.Template):
     _template_dir = 'template'
     summary = "A grok project"
@@ -98,47 +93,4 @@
         if not vars['run_buildout']:
             return
         os.chdir(vars['project'])
-        eggs_dir = vars.get('explicit_eggs_dir',
-                            get_buildout_default_eggs_dir())
-        if not os.path.isdir(eggs_dir):
-            os.mkdir(eggs_dir)
-
-        version = required_grok_version(vars['version_info_file_contents'])
-        if not is_grok_installed(target_dir=eggs_dir, version=version):
-            print "Grok is not installed. A grok tarball will be downloaded."
-
-            tarball_name = 'grok-eggs-%s.tgz' % version
-            url = GROK_RELEASE_URL + tarball_name
-            print "Downloading %s ..." % url
-
-            try:
-                extraction_dir = tempfile.mkdtemp()
-                filenum, temp_tarball_name = tempfile.mkstemp()
-                tarball = open(temp_tarball_name, 'w')
-                tarball.write(urllib.urlopen(url).read())
-                tarball.close()
-                print "Finished downloading."
-                print "Installing eggs to %s ..." % eggs_dir
-
-                try:
-                    tf = tarfile.open(temp_tarball_name,
-                                      'r:gz')
-                except tarfile.ReadError, e:
-                    print "ReadError: %s.  Not using tarball." % e
-                else:
-                    links = []
-                    for name in tf.getnames():
-                        tf.extract(name, extraction_dir)
-                        links.append(os.path.join(extraction_dir, name))
-                    tf.close()
-
-                    result = install_grok(target_dir=eggs_dir, version=version,
-                                          links=links)
-                    if result is False:
-                        print "Failed to install Grok with the tar ball."
-                        print "Continuing with buildout instead."
-            finally:
-                shutil.rmtree(extraction_dir)
-                os.unlink(temp_tarball_name)
-
         run_buildout(command.options.verbose)

Modified: grokproject/trunk/grokproject/utils.py
===================================================================
--- grokproject/trunk/grokproject/utils.py	2008-07-02 19:25:20 UTC (rev 87933)
+++ grokproject/trunk/grokproject/utils.py	2008-07-02 20:45:44 UTC (rev 87934)
@@ -4,7 +4,6 @@
 import tempfile
 import pkg_resources
 from paste.script.templates import var
-from ConfigParser import ConfigParser
 
 HOME = os.path.expanduser('~')
 
@@ -73,17 +72,6 @@
     return value
 
 
-def get_buildout_default_eggs_dir():
-    default_cfg = os.path.join(HOME, '.buildout', 'default.cfg')
-    if os.path.isfile(default_cfg):
-        cfg = ConfigParser()
-        cfg.read(default_cfg)
-        if cfg.has_option('buildout', 'eggs-directory'):
-            eggs_dir = cfg.get('buildout', 'eggs-directory').strip()
-            if eggs_dir:
-                return os.path.expanduser(eggs_dir)
-
-
 def exist_buildout_default_file():
     default_cfg = os.path.join(HOME, '.buildout', 'default.cfg')
     return os.path.isfile(default_cfg)
@@ -136,32 +124,3 @@
     for line in versionfile.split('\n'):
         if line.startswith('grok ='):
             return line.split(' ')[-1]
-
-
-def install_grok(target_dir=None, version=None, links=None):
-    from zc.buildout.easy_install import install
-    from zc.buildout.easy_install import MissingDistribution
-    try:
-        empty_index = tempfile.mkdtemp()
-
-        try:
-            install(['grok'], target_dir, newest=False,
-                    versions={'grok': version}, links=links,
-                    index='file://' + empty_index)
-        except MissingDistribution:
-            result = False
-        else:
-            result = True
-    finally:
-        shutil.rmtree(empty_index)
-    return result
-
-
-def is_grok_installed(target_dir=None, version=None):
-    # Check if the required grok version is installed.  We do this
-    # by trying to install grok in the target dir and letting
-    # easy_install only look inside that same eggs dir while doing
-    # that.
-    result = install_grok(target_dir=target_dir, version=version,
-                          links=[target_dir])
-    return result



More information about the Checkins mailing list