summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGuido Guenther <agx@sigxcpu.org>2006-09-27 12:16:32 +0200
committerGuido Guenther <agx@bogon.sigxcpu.org>2006-09-27 12:16:32 +0200
commitdd148ea08bfc61b8a3f01e86b45f68913495520c (patch)
treea3fa0adabc096efb9a1930dff69dc40554672eab
parentaadce8574d2be33ea48570a16f3b44600c4a4c49 (diff)
git-buildpackage: git-buildpackage: use helpers from git_buildpackage
-rw-r--r--debian/changelog4
-rwxr-xr-xgit-buildpackage47
-rw-r--r--git_buildpackage/__init__.py1
3 files changed, 23 insertions, 29 deletions
diff --git a/debian/changelog b/debian/changelog
index dde4c5f9..a2cd2513 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,10 +1,10 @@
git-buildpackage (0.2.1) git-buildpackage; urgency=low
- * UNRELEASED
* git-import-orig: don't try import new upstream versions when there
are uncommitted changes
+ * git-buildpackage: use helpers from git_buildpackage
- -- Guido Guenther <agx@sigxcpu.org> Wed, 27 Sep 2006 12:00:03 +0200
+ -- Guido Guenther <agx@sigxcpu.org> Wed, 27 Sep 2006 12:15:47 +0200
git-buildpackage (0.2) git-buildpackage; urgency=low
diff --git a/git-buildpackage b/git-buildpackage
index c6abe999..b4027aff 100755
--- a/git-buildpackage
+++ b/git-buildpackage
@@ -19,6 +19,7 @@
import sys,os,commands,re
import optparse
+from git_buildpackage import GitTag, Command, CommandExecFailed
from git_buildpackage.utils import is_repository_clean
build_cmd='debuild'
@@ -31,15 +32,6 @@ def get_version():
if m:
return m.group('version')
-def exec_command(cmd):
- print "Running:", cmd
- ret=os.system(cmd)
- if ret:
- print >>sys.stderr,"%s failed" % cmd
- return False, ret
- else:
- return True, 0
-
def main(argv):
args = [ arg for arg in argv[1:] if arg.find('--git-') == 0 ]
dpkg_args = [ arg for arg in argv[1:] if arg.find('--git-') == -1 ]
@@ -53,24 +45,25 @@ def main(argv):
help="command to build the package e.g. default is 'debuild'")
(options, args) = parser.parse_args(args)
- clean_cmd='%s clean' % options.build_cmd
- if not options.ignore_new:
- if not exec_command(clean_cmd)[0]: return 1
- (ret, out) = is_repository_clean('.')
- if not ret:
- print >>sys.stderr, "You have uncommitted changes in your source tree:"
- print >>sys.stderr, out
- print >>sys.stderr, "Use --git-ignore_new to ignore."
- return 1
- cmd=options.build_cmd+' -i.git '+" ".join(dpkg_args)
- if not exec_command(cmd)[0]: return 1
- if options.tag:
- version=get_version()
- if version:
- print "Tagging", version
- if not exec_command('git-tag %s' % version)[0]: return 1
- else:
- print >>sys.stderr,"Can't parse version from changes file"
+ try:
+ if not options.ignore_new:
+ Command(options.build_cmd,['clean'])()
+ (ret, out) = is_repository_clean('.')
+ if not ret:
+ print >>sys.stderr, "You have uncommitted changes in your source tree:"
+ print >>sys.stderr, out
+ print >>sys.stderr, "Use --git-ignore_new to ignore."
+ return 1
+ Command(options.build_cmd,['-i.git']+dpkg_args)()
+ if options.tag:
+ version=get_version()
+ if version:
+ print "Tagging", version
+ if not GitTag()(version): return 1
+ else:
+ print >>sys.stderr,"Can't parse version from changes file"
+ except CommandExecFailed:
+ return 1
if __name__ == '__main__':
sys.exit(main(sys.argv))
diff --git a/git_buildpackage/__init__.py b/git_buildpackage/__init__.py
index d046c7f6..1fd958ac 100644
--- a/git_buildpackage/__init__.py
+++ b/git_buildpackage/__init__.py
@@ -13,6 +13,7 @@ class Command(object):
def __init__(self, cmd, args=[]):
self.cmd=cmd
self.args=args
+ self.run_error="Couldn't run '%s %s'" % (cmd," ".join(args))
def __run(self, args):
try: