diff treepkg/packager.py @ 344:f06f707d9fda

merged branches/scratchbox into trunk #### IMPORTANT FOR ALL TREEPKGS ##### pbuilderrc config variable name changed to builderconfig
author Bjoern Ricks <bricks@intevation.de>
date Fri, 23 Apr 2010 07:43:29 +0000
parents a83a78a93fd6
children fb92f3c1b238
line wrap: on
line diff
--- a/treepkg/packager.py	Thu Apr 22 19:25:02 2010 +0000
+++ b/treepkg/packager.py	Fri Apr 23 07:43:29 2010 +0000
@@ -171,7 +171,11 @@
 
     def sign_package(self):
         """Signs the .dsc file created buy the instance"""
-        self.track.sign_file(util.listdir_abs(self.src_dir, "*.dsc")[0])
+        src_files = util.listdir_abs(self.src_dir, "*.dsc")
+        if not src_files:
+            raise RuntimeError("Could not find .dsc file in source"
+                  " directory %s" % self.src_dir)
+        self.track.sign_file(src_files[0])
 
     def package(self):
         """Creates a source package from a subversion checkout.
@@ -203,13 +207,15 @@
         self.create_tarball(origtargz, self.work_dir,
                             os.path.basename(pkgbasedir))
 
-        changemsg = self.changemsg_template % dict(revision=self.revision)
+        changemsg = self.get_change_msg()
         self.copy_debian_directory(pkgbasedir, pkgbaseversion,
                                    changemsg)
 
         self.create_source_package(pkgbasedir, origtargz)
         self.move_source_package(pkgbasename)
 
+    def get_change_msg(self):
+        return self.changemsg_template % dict(revision=self.revision)
 
 class BinaryPackager(object):
 
@@ -235,7 +241,10 @@
 
     def sign_package(self):
         """Signs the .changes file created buy the instance"""
-        self.track.sign_file(util.listdir_abs(self.binary_dir, "*.changes")[0])
+        dirs = util.listdir_abs(self.binary_dir, "*.changes")
+        if not dirs:
+            raise RuntimeError("Cannot find changes File in %r" % self.binary_dir)
+        self.track.sign_file(dirs[0])
 
 
 class RevisionPackager(object):
@@ -342,11 +351,13 @@
 
     revision_packager_cls = RevisionPackager
 
+    builder_cls = PBuilder
+
     svn_external_subdirs = []
 
     extra_config_desc = []
 
-    def __init__(self, name, base_dir, root_cmd, pbuilderrc, deb_email,
+    def __init__(self, name, base_dir, root_cmd, builderconfig, deb_email,
                  deb_fullname, svn_url="", packager_class="treepkg.packager",
                  version_template="%(revision)s",
                  pkg_revision_template="treepkg%(pkg_revision)s",
@@ -360,7 +371,7 @@
         self.pkg_basename = pkg_basename
         self.changelog_msg_template = changelog_msg_template
         self.base_dir = base_dir
-        self.builder = PBuilder(pbuilderrc, root_cmd,
+        self.builder = self.builder_cls(builderconfig, root_cmd,
                                 release_signing_keyid=signing_key_id)
         self.deb_email = deb_email
         self.deb_fullname = deb_fullname
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)