summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGuido Günther <agx@sigxcpu.org>2010-08-12 20:09:49 +0200
committerGuido Günther <agx@sigxcpu.org>2010-08-12 20:27:46 +0200
commit595d6d8fd292e4621f465482fffdb273dd05a735 (patch)
tree5dbe591840699fbf73553a6661501bef6c542251
parent76b16df48a351cf7b8a895bdbcd09e2b8b873b08 (diff)
Add --git-pbuilder and --git-dist=<dist> options
-rw-r--r--docs/manpages/git-buildpackage.sgml20
-rw-r--r--gbp/config.py6
-rwxr-xr-xgit-buildpackage11
3 files changed, 37 insertions, 0 deletions
diff --git a/docs/manpages/git-buildpackage.sgml b/docs/manpages/git-buildpackage.sgml
index e9ad0379..7069e402 100644
--- a/docs/manpages/git-buildpackage.sgml
+++ b/docs/manpages/git-buildpackage.sgml
@@ -27,6 +27,8 @@
<arg><option>--git-ignore-branch</option></arg>
<arg><option>--git-builder=</option><replaceable>BUILD_CMD</replaceable></arg>
<arg><option>--git-cleaner=</option><replaceable>CLEAN_CMD</replaceable></arg>
+ <arg><option>--git-pbuilder=</option></arg>
+ <arg><option>--git-dist=</option><replaceable>DIST</replaceable></arg>
<arg><option>--git-[no-]sign-tags</option></arg>
<arg><option>--git-keyid=</option><replaceable>gpg-keyid</replaceable></arg>
<arg><option>--git-posttag=</option><replaceable>command</replaceable></arg>
@@ -121,6 +123,20 @@
</listitem>
</varlistentry>
<varlistentry>
+ <term><option>--git-pbuilder</option></term>
+ <listitem>
+ <para>Build package using <command>git-pbuilder</command>. Note that
+ this overwrites any <option>--git-builder</option> and
+ <option>--git-cleander</option> options.</command></para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>--git-dist=<replaceable>DIST</replaceable></option></term>
+ <listitem>
+ <para>Build for distribution <replaceable>DIST</replaceable> when using <command>--git-pbuilder</command></para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
<term><option>--git-verbose</option>
</term>
<listitem>
@@ -321,6 +337,10 @@
<refentrytitle>git-dch</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry>,
+ <citerefentry>
+ <refentrytitle>git-pbuilder</refentrytitle>
+ <manvolnum>1</manvolnum>
+ </citerefentry>,
&man.seealso.common;
</para>
</refsect1>
diff --git a/gbp/config.py b/gbp/config.py
index 10e1a5b9..530a4ddd 100644
--- a/gbp/config.py
+++ b/gbp/config.py
@@ -61,6 +61,8 @@ class GbpOptionParser(OptionParser):
'compression-level': '9',
'remote-url-pattern' : 'ssh://alioth.debian.org/git/collab-maint/%(pkg)s.git',
'multimaint-merge' : 'False',
+ 'pbuilder' : 'False',
+ 'dist' : 'sid',
}
help = {
'debian-branch':
@@ -99,6 +101,10 @@ class GbpOptionParser(OptionParser):
"Remote url pattern to create the repo at, default is '%(remote-url-pattern)s'",
'multimaint-merge':
"Merge commits by maintainer, default is '%(multimaint-merge)s'",
+ 'pbuilder':
+ "Invoke git-pbuilder for building, default is '%(pbuilder)s'",
+ 'dist':
+ "Build for this distribution when using git-pbuilder, default is '%(dist)s'",
}
config_files = [ '/etc/git-buildpackage/gbp.conf',
os.path.expanduser('~/.gbp.conf'),
diff --git a/git-buildpackage b/git-buildpackage
index 30b6c05a..1d08a778 100755
--- a/git-buildpackage
+++ b/git-buildpackage
@@ -197,6 +197,14 @@ def guess_comp_type(repo, comp_type):
return comp_type
+def setup_pbuilder(options):
+ """setup everything to use git-pbuilder"""
+ if options.use_pbuilder:
+ options.builder = 'git-pbuilder'
+ options.cleaner = '/bin/true'
+ os.environ['DIST'] = options.pbuilder_dist
+
+
def main(argv):
changelog = 'debian/changelog'
retval = 0
@@ -264,6 +272,8 @@ def main(argv):
help="hook run after a successful build, default is '%(postbuild)s'")
cmd_group.add_config_file_option(option_name="posttag", dest="posttag",
help="hook run after a successful tag operation, default is '%(posttag)s'")
+ cmd_group.add_boolean_config_file_option(option_name="pbuilder", dest="use_pbuilder")
+ cmd_group.add_config_file_option(option_name="dist", dest="pbuilder_dist")
export_group.add_config_file_option(option_name="export-dir", dest="export_dir",
help="before building the package export the source into EXPORT_DIR, default is '%(export-dir)s'")
export_group.add_config_file_option("export", dest="export",
@@ -383,6 +393,7 @@ def main(argv):
extra_env={'GBP_GIT_DIR': repo.base_dir(),
'GBP_BUILD_DIR': build_dir})(dir=build_dir)
+ setup_pbuilder(options)
# Finally build the package:
RunAtCommand(options.builder, dpkg_args, shell=True,
extra_env={'GBP_BUILD_DIR': build_dir})(dir=build_dir)