From de4d64e38c0d48e9181a490573cb91e1097b30fd Mon Sep 17 00:00:00 2001 From: Markus Lehtonen Date: Wed, 30 May 2012 09:23:46 +0300 Subject: buildpackage-rpm: add option --git-ignore-untracked Adds a new commandline option to ignore untracked files, when running git-buildpackage-rpm. When this option is given, the git-buildpackage-rpm command fails if there are changes to tracked files, but, succeeds if there are untracked files present. Normally it fails in either case. Signed-off-by: Markus Lehtonen --- gbp/config.py | 4 ++++ gbp/scripts/buildpackage_rpm.py | 5 +++-- 2 files changed, 7 insertions(+), 2 deletions(-) (limited to 'gbp') diff --git a/gbp/config.py b/gbp/config.py index 62b8dd2c..db92037d 100644 --- a/gbp/config.py +++ b/gbp/config.py @@ -601,6 +601,7 @@ class GbpOptionParserRpm(GbpOptionParser): 'builder' : 'rpmbuild', 'cleaner' : '/bin/true', 'export-dir' : '../rpmbuild', + 'ignore-untracked' : 'False', 'rpmbuild-builddir' : 'BUILD', 'rpmbuild-rpmdir' : 'RPMS', 'rpmbuild-sourcedir' : 'SOURCES', @@ -636,6 +637,9 @@ class GbpOptionParserRpm(GbpOptionParser): "Spec file to use, 'auto' makes gbp to guess, other values " "make the packaging-dir option to be ignored, default is " "'%(spec-file)s'", + 'ignore-untracked': + "build with untracked files in the source tree, default is " + "'%(ignore-untracked)s'", 'patch-export': "Create patches between upstream and export-treeish, default " "is '%(patch-export)s'", diff --git a/gbp/scripts/buildpackage_rpm.py b/gbp/scripts/buildpackage_rpm.py index 786228f7..724922cf 100755 --- a/gbp/scripts/buildpackage_rpm.py +++ b/gbp/scripts/buildpackage_rpm.py @@ -245,6 +245,7 @@ def parse_args(argv, prefix): parser.add_option_group(cmd_group) parser.add_option_group(export_group) + parser.add_boolean_config_file_option(option_name = "ignore-untracked", dest="ignore_untracked") parser.add_boolean_config_file_option(option_name = "ignore-new", dest="ignore_new") parser.add_option("--git-verbose", action="store_true", dest="verbose", default=False, help="verbose command execution") @@ -350,11 +351,11 @@ def main(argv): if not options.export_only: Command(options.cleaner, shell=True)() if not options.ignore_new: - (ret, out) = repo.is_clean() + (ret, out) = repo.is_clean(options.ignore_untracked) if not ret: gbp.log.err("You have uncommitted changes in your source tree:") gbp.log.err(out) - raise GbpError, "Use --git-ignore-new to ignore." + raise GbpError, "Use --git-ignore-new or --git-ignore-untracked to ignore." if not options.ignore_new and not options.ignore_branch: if branch != options.packaging_branch: -- cgit v1.2.3