[Piuparts-commits] [SCM] piuparts git repository branch, develop, updated. 0.49-60-g87e23c3

Andreas Beckmann anbe at debian.org
Thu Feb 21 09:40:47 UTC 2013


The following commit has been merged in the develop branch:
commit f0f27877199e9b4f3dc7fa1342e6212d144b5b84
Author: Andreas Beckmann <anbe at debian.org>
Date:   Tue Feb 5 10:56:07 2013 +0100

    p: allow --testdebs-repo argument to be an URL or local path
    
    automatically build a valid deb line:
    URL:   deb $URL ./
    path:  deb file://$path ./
    
    Signed-off-by: Andreas Beckmann <anbe at debian.org>

diff --git a/debian/changelog b/debian/changelog
index 7422aa6..c7fa9f6 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -6,6 +6,8 @@ piuparts (0.50) UNRELEASED; urgency=low
       + /var/lib/dpkg/arch
     - Call dpkg-deb with --nocheck to allow bad version numbers.
     - Pass unqualified package names to apt-cache show for lenny support.
+    - Support plain URLs or local paths as --testdebs-repo argument and
+      prepend/append "deb", "file://", and "./" as needed.
   * piuparts.conf:
     - New global setting slave-directory.
   * piupartslib/conf.py:
diff --git a/piuparts.1.txt b/piuparts.1.txt
index 2bb257c..456b48c 100644
--- a/piuparts.1.txt
+++ b/piuparts.1.txt
@@ -192,9 +192,11 @@ Note that file: addresses works if the directories are made accessible from with
   Skip testing the output from the logrotate files left in the system after remove a package.
 
 *--testdebs-repo='deb-line'::
-  Provide an additional (unparsed) line to be appended to sources.list, e.g.
+  Provide an additional line to be appended to sources.list, e.g.
     'deb <URL> <distrib> <components>' or
     'deb file:// </bind/mount> ./'
+  If only an URL or local path is given as argument, "deb", "file://", and
+  "./" will be prepended/appended as needed.
   The "testdebs" repository provides the packages to be tested (and some
   additional dependencies, if needed, e.g. all packages built from the same
   source package as the (binary) package being tested) and can be used for
diff --git a/piuparts.py b/piuparts.py
index ad6ad1e..3e20f30 100644
--- a/piuparts.py
+++ b/piuparts.py
@@ -921,8 +921,14 @@ class Chroot:
 
     def enable_testdebs_repo(self, update=True):
         if settings.testdebs_repo:
-            logging.debug("enabling testdebs repository '%s'" % settings.testdebs_repo)
-            create_file(self.relative("etc/apt/sources.list.d/piuparts-testdebs-repo.list"), settings.testdebs_repo + "\n")
+            if settings.testdebs_repo.startswith("deb"):
+                debline = settings.testdebs_repo
+            elif settings.testdebs_repo.startswith("/"):
+                debline = "deb file://%s ./" % settings.testdebs_repo
+            else:
+                debline = "deb %s ./" % settings.testdebs_repo
+            logging.debug("enabling testdebs repository '%s'" % debline)
+            create_file(self.relative("etc/apt/sources.list.d/piuparts-testdebs-repo.list"), debline + "\n")
             if update:
                 self.run(["apt-get", "update"])
 
@@ -2570,7 +2576,8 @@ def parse_command_line():
 
     parser.add_option("--testdebs-repo",
                       help="A repository that contains the packages to be tested, e.g. " +
-                      "'deb <URL> <distrib> <components>...' or 'deb file://</bind/mount> ./'")
+                      "'deb <URL> <distrib> <components>...' or 'deb file://</bind/mount> ./'," +
+                      "plain URLs or local paths are permitted, too.")
 
     parser.add_option("--no-diversions", action="store_true",
                       default=False,

-- 
piuparts git repository



More information about the Piuparts-commits mailing list