]> git.decadent.org.uk Git - dak.git/blobdiff - daklib/utils.py
Merge commit 'djpig/djpig' into merge
[dak.git] / daklib / utils.py
index cfee2c7eb148bcd67b292b3e0fed3166e6ee175a..40410fbb0c8583dca03ce139c3006dddcfcce836 100755 (executable)
@@ -39,6 +39,7 @@ import time
 import re
 import string
 import email as modemail
+import subprocess
 
 from dbconn import DBConn, get_architecture, get_component, get_suite
 from dak_exceptions import *
@@ -63,6 +64,20 @@ key_uid_email_cache = {}  #: Cache for email addresses from gpg key uids
 known_hashes = [("sha1", apt_pkg.sha1sum, (1, 8)),
                 ("sha256", apt_pkg.sha256sum, (1, 8))] #: hashes we accept for entries in .changes/.dsc
 
+import commands
+def dak_getstatusoutput(cmd):
+    pipe = subprocess.Popen(cmd, shell=True, universal_newlines=True,
+        stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
+
+    output = str.join("", pipe.stdout.readlines())
+
+    ret = pipe.wait()
+    if ret is None:
+        ret = 0
+
+    return ret, output
+commands.getstatusoutput = dak_getstatusoutput
+
 ################################################################################
 
 def html_escape(s):
@@ -366,13 +381,13 @@ def check_dsc_files(dsc_filename, dsc=None, dsc_files=None):
     has = defaultdict(lambda: 0)
 
     ftype_lookup = (
-        (r'orig.tar.gz',                    ('orig_tar_gz', 'orig_tar')),
-        (r'diff.gz',                        ('debian_diff',)),
-        (r'tar.gz',                         ('native_tar_gz', 'native_tar')),
-        (r'debian\.tar\.(gz|bz2|lzma)',     ('debian_tar',)),
-        (r'orig\.tar\.(gz|bz2|lzma)',       ('orig_tar',)),
-        (r'tar\.(gz|bz2|lzma)',             ('native_tar',)),
-        (r'orig-.+\.tar\.(gz|bz2|lzma)',    ('more_orig_tar',)),
+        (r'orig.tar.gz',               ('orig_tar_gz', 'orig_tar')),
+        (r'diff.gz',                   ('debian_diff',)),
+        (r'tar.gz',                    ('native_tar_gz', 'native_tar')),
+        (r'debian\.tar\.(gz|bz2)',     ('debian_tar',)),
+        (r'orig\.tar\.(gz|bz2)',       ('orig_tar',)),
+        (r'tar\.(gz|bz2)',             ('native_tar',)),
+        (r'orig-.+\.tar\.(gz|bz2)',    ('more_orig_tar',)),
     )
 
     for f in dsc_files.keys():