[Checkins] SVN: zope.z2release/trunk/zope/z2release/cli.py Final refactoring

Hanno Schlichting hannosch at hannosch.eu
Tue Jul 13 06:08:37 EDT 2010


Log message for revision 114686:
  Final refactoring
  

Changed:
  U   zope.z2release/trunk/zope/z2release/cli.py

-=-
Modified: zope.z2release/trunk/zope/z2release/cli.py
===================================================================
--- zope.z2release/trunk/zope/z2release/cli.py	2010-07-13 10:00:41 UTC (rev 114685)
+++ zope.z2release/trunk/zope/z2release/cli.py	2010-07-13 10:08:37 UTC (rev 114686)
@@ -25,14 +25,23 @@
     file(version_file, 'w').write(data)
 
 
-def write_versions(CP, server, dirname):
+def write_versions(version_file, server, dirname):
+    CP = CasePreservingConfigParser()
+    CP.read(version_file)
     for package in CP.options('versions'):
         version = CP.get('versions', package)
         if '#' in version:
             version = version.split('#')[0].strip()
         write_index(server, package, version, dirname)
+    return CP
 
 
+def build_version_file(name, dirname, url, server):
+    version_file = os.path.join(dirname, name)
+    fetch_cfg(url, version_file)
+    return write_versions(version_file, server, dirname)
+
+
 def main():
     if len(sys.argv) != 3:
         print 'Usage: z2_kgs <tag-name> <destination-dirname>'
@@ -47,25 +56,16 @@
 
     server = Server('http://pypi.python.org/pypi')
 
-    versions_url = 'http://svn.zope.org/*checkout*/Zope/%s/versions.cfg' % tag
-    version_file = os.path.join(dirname, 'versions.cfg')
-    fetch_cfg(versions_url, version_file)
+    url = 'http://svn.zope.org/*checkout*/Zope/%s/versions.cfg' % tag
+    CP = build_version_file('versions.cfg', dirname, url, server)
 
-    CP = CasePreservingConfigParser()
-    CP.read(version_file)
-    write_versions(CP, server, dirname)
-
     buildout = CP.options('buildout')
     if 'extends' in buildout:
-        extends = CP.get('buildout', 'extends')
-        if 'http' in extends and extends.endswith('ztk-versions.cfg'):
-            ztk_version_file = os.path.join(dirname, 'ztk-versions.cfg')
-            fetch_cfg(extends, ztk_version_file)
+        url = CP.get('buildout', 'extends')
+        name = 'ztk-versions.cfg'
+        if 'http' in url and not '\n' in url and url.endswith(name):
+            build_version_file(name, dirname, url, server)
 
-            CP2 = CasePreservingConfigParser()
-            CP2.read(ztk_version_file)
-            write_versions(CP2, server, dirname)
 
-
 if __name__ == '__main__':
     main()



More information about the checkins mailing list