[Treepkg-commits] r31 - in trunk: bin enterprise treepkg

scm-commit@wald.intevation.org scm-commit at wald.intevation.org
Tue Mar 4 15:31:29 CET 2008


Author: bh
Date: 2008-03-04 15:31:28 +0100 (Tue, 04 Mar 2008)
New Revision: 31

Added:
   trunk/bin/inittreepkg.py
Modified:
   trunk/enterprise/kdei18n.py
   trunk/treepkg/packager.py
Log:
Add bin/inittreepkg.py, a script to automate some of the installation
and some support code for in in the packager classes.


Added: trunk/bin/inittreepkg.py
===================================================================
--- trunk/bin/inittreepkg.py	2008-03-04 14:18:56 UTC (rev 30)
+++ trunk/bin/inittreepkg.py	2008-03-04 14:31:28 UTC (rev 31)
@@ -0,0 +1,44 @@
+#! /usr/bin/python2.4
+# Copyright (C) 2007, 2008 by Intevation GmbH
+# Authors:
+# Bernhard Herzog <bh at intevation.de>
+#
+# This program is free software under the GPL (>=v2)
+# Read the file COPYING coming with the software for details.
+
+"""Script to partially initialize the tree packager
+
+The script assumes that the config file for the tree packager already
+contains the settings for the individual packagers.  This script will at
+least create the base directory for all packagers configured in the
+configuration file and perhaps do other checks and initializations
+depending on the packager classes used.  The output indicates what has
+been done and what still needs to be done manually.
+"""
+
+
+import treepkgcmd
+from treepkg.options import create_parser
+from treepkg.packager import create_package_track, PackagerGroup
+from treepkg.readconfig import read_config
+
+
+def init_treepkg(config_file):
+    treepkg_opts, packager_opts = read_config(config_file)
+    group = PackagerGroup([create_package_track(**opts)
+                           for opts in packager_opts],
+                          **treepkg_opts)
+    for track in group.get_package_tracks():
+        track.init_treepkg()
+
+
+def parse_commandline():
+    parser = create_parser()
+    return parser.parse_args()
+
+
+def main():
+    options, args = parse_commandline()
+    init_treepkg(options.config_file)
+
+main()


Property changes on: trunk/bin/inittreepkg.py
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + native

Modified: trunk/enterprise/kdei18n.py
===================================================================
--- trunk/enterprise/kdei18n.py	2008-03-04 14:18:56 UTC (rev 30)
+++ trunk/enterprise/kdei18n.py	2008-03-04 14:31:28 UTC (rev 31)
@@ -137,3 +137,8 @@
         self.orig_tarball = kw.pop("orig_tarball")
         super(PackageTrack, self).__init__(*args, **kw)
 
+    def init_treepkg(self):
+        super(PackageTrack, self).init_treepkg()
+        if not os.path.exists(self.orig_tarball):
+            print ("TODO: The orig_tarball %s still has to be created"
+                   % (self.orig_tarball,))

Modified: trunk/treepkg/packager.py
===================================================================
--- trunk/treepkg/packager.py	2008-03-04 14:18:56 UTC (rev 30)
+++ trunk/treepkg/packager.py	2008-03-04 14:31:28 UTC (rev 31)
@@ -304,6 +304,15 @@
     debian_dir = _filenameproperty("debian")
     pkg_dir = _filenameproperty("pkg")
 
+    def init_treepkg(self):
+        print "Initializing", self.name
+        if not os.path.exists(self.base_dir):
+            print "creating %s" % (self.base_dir,)
+            util.ensure_directory(self.base_dir)
+        if not os.path.exists(self.debian_dir):
+            print ("TODO: the debian directory %s still has to be created"
+                   % (self.debian_dir,))
+
     def pkg_dir_for_revision(self, revision, increment):
         return os.path.join(self.pkg_dir,
                             self.pkg_dir_template % locals())



More information about the Treepkg-commits mailing list