summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGuido Guenther <agx@sigxcpu.org>2008-10-02 11:29:02 +0200
committerGuido Guenther <agx@sigxcpu.org>2008-10-02 12:26:37 +0200
commitfb6187fa70c142d928c632802ead98bf9421795a (patch)
tree39811de366ab9681676f80555db5d453e862d5fb
parentbbd9946d244699ecd9dafa54d91d55d4a48ccb66 (diff)
silence parse_dsc and move sanity checks into DscFile
makes git-import-dsc{,s} less chatty
-rw-r--r--gbp/deb_utils.py25
-rwxr-xr-xgit-import-dsc13
2 files changed, 24 insertions, 14 deletions
diff --git a/gbp/deb_utils.py b/gbp/deb_utils.py
index a39ec9cd..1c3d95f2 100644
--- a/gbp/deb_utils.py
+++ b/gbp/deb_utils.py
@@ -37,8 +37,11 @@ class DscFile(object):
self.pkg = ""
self.tgz = ""
self.diff = ""
+ self.debian_version = ""
self.upstream_version = ""
+ self.native = False
self.dscfile = os.path.abspath(dscfile)
+
f = file(self.dscfile)
fromdir = os.path.dirname(os.path.abspath(dscfile))
for line in f:
@@ -69,10 +72,15 @@ class DscFile(object):
self.diff = os.path.join(fromdir, m.group('diff'))
continue
f.close()
+
if not self.pkg:
- raise GbpError, "Cannot parse package name from %s" % self.dscfile
+ raise GbpError, "Cannot parse package name from '%s'" % self.dscfile
elif not self.tgz:
- raise GbpError, "Cannot parse archive name from %s" % self.dscfile
+ raise GbpError, "Cannot parse archive name from '%s'" % self.dscfile
+ if not self.upstream_version:
+ raise GbpError, "Cannot parse version number from '%s'" % self.dscfile
+ if not self.native and not self.debian_version:
+ raise GbpError, "Cannot parse Debian version number from '%s'" % self.dscfile
def _get_version(self):
version = [ "", self.epoch + ":" ][len(self.epoch) > 0]
@@ -94,18 +102,7 @@ def parse_dsc(dscfile):
dsc = DscFile(dscfile)
except IOError, err:
raise GbpError, "Error reading dsc file: %s" % err
- else:
- try:
- if dsc.native:
- print "Debian Native Package"
- print "Version:", dsc.upstream_version
- else:
- print "Upstream version:", dsc.upstream_version
- print "Debian version:", dsc.debian_version
- if dsc.epoch:
- print "Epoch: %s" % dsc.epoch
- except AttributeError:
- raise GbpError, "Error parsing dsc file %s" % dscfile
+
return dsc
diff --git a/git-import-dsc b/git-import-dsc
index 4755efdb..0f5e8548 100755
--- a/git-import-dsc
+++ b/git-import-dsc
@@ -123,6 +123,17 @@ def create_debian_branch(debian_branch, dirs):
os.chdir(dirs['top'])
+def print_dsc(dsc):
+ if dsc.native:
+ print "Debian Native Package"
+ print "Version:", dsc.upstream_version
+ else:
+ print "Upstream version:", dsc.upstream_version
+ print "Debian version:", dsc.debian_version
+ if dsc.epoch:
+ print "Epoch: %s" % dsc.epoch
+
+
def main(argv):
dirs = {'top': os.path.abspath(os.curdir)}
ret = 0
@@ -164,6 +175,8 @@ def main(argv):
raise GbpError
else:
src = parse_dsc(args[0])
+ if options.verbose:
+ print_dsc(src)
try:
repo = GitRepository('.')