From: Markus Lehtonen Date: Wed, 19 Nov 2014 15:19:20 +0000 (+0200) Subject: buildpackage-rpm: look for remote upstream branches X-Git-Tag: debian/0.6.26~4 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a7a9620bcf43c5c14e0205b3fd9ee190df5c0439;p=tools%2Fgit-buildpackage.git buildpackage-rpm: look for remote upstream branches Consider remote branches, too, while looking for the upstream branch when trying to guess if a package is native or not. Change-Id: I3dbbb49816d1d294d81209ea5ab5870e053fd66a Signed-off-by: Markus Lehtonen --- diff --git a/gbp/scripts/buildpackage_rpm.py b/gbp/scripts/buildpackage_rpm.py index 7e10c463..56db5e13 100755 --- a/gbp/scripts/buildpackage_rpm.py +++ b/gbp/scripts/buildpackage_rpm.py @@ -288,7 +288,17 @@ def export_patches(repo, spec, export_treeish, options): def is_native(repo, options): """Determine whether a package is native or non-native""" if options.native.is_auto(): - return not repo.has_branch(options.upstream_branch) + if repo.has_branch(options.upstream_branch): + return False + # Check remotes, too + for remote_branch in repo.get_remote_branches(): + remote, branch = remote_branch.split('/', 1) + if branch == options.upstream_branch: + gbp.log.debug("Found upstream branch '%s' from remote '%s'" % + (remote, branch)) + return False + return True + return options.native.is_on() diff --git a/tests/component/rpm/test_buildpackage_rpm.py b/tests/component/rpm/test_buildpackage_rpm.py index 3060f84b..88a66fc0 100644 --- a/tests/component/rpm/test_buildpackage_rpm.py +++ b/tests/component/rpm/test_buildpackage_rpm.py @@ -139,10 +139,16 @@ class TestGbpRpm(RpmRepoTestBase): def test_non_native_build(self): """Basic test of non-native pkg""" - self.init_test_repo('gbp-test') + repo = self.init_test_repo('gbp-test') eq_(mock_gbp([]), 0) self.check_rpms('../rpmbuild/RPMS/*') + # Test nativity guessing from remote branches by creating a dummy + # remote branch + repo.update_ref('refs/remotes/fooremote/foobranch', + 'srcdata/gbp-test/upstream') + eq_(mock_gbp(['--git-upstream-branch=foobranch']), 0) + def test_option_native(self): """Test the --git-native option""" self.init_test_repo('gbp-test2')