def pre_rebase(self, destination): # Get the stored configs is any patches_branch = 'patches/' + destination config = self.load_original_config(patches_branch) if config is not None: set_patch_config(patches_branch, config) # Remove back to the base remove_patches()
def _test_unary_package_repository(release_dir, version, directory=None): print("Testing in {0} at version {1}".format(release_dir, version)) with change_directory(release_dir): ### ### Import upstream ### user('git-bloom-import-upstream --quiet') # does the upstream branch exist? assert branch_exists('upstream', local_only=True), "no upstream branch" # does the upstrea/<version> tag exist? ret, out, err = user('git tag', return_io=True) assert out.count('upstream/' + version) == 1, "no upstream tag created" # Is the package.xml from upstream in the upstream branch now? with inbranch('upstream'): assert os.path.exists('package.xml'), \ "upstream did not import: '" + os.getcwd() + "': " + \ str(os.listdir(os.getcwd())) with open('package.xml') as f: package_xml = f.read() assert package_xml.count(version), "not right file" ### ### Release generator ### with bloom_answer(bloom_answer.ASSERT_NO_QUESTION): ret = user('git-bloom-generate -y release -s upstream --quiet') # patch import should have reported OK assert ret == code.OK, "actually returned ({0})".format(ret) # do the proper branches exist? assert branch_exists('release/foo'), "no release/foo branch" assert branch_exists('patches/release/foo'), \ "no patches/release/foo branch" # was the release tag created? ret, out, err = user('git tag', return_io=True) assert out.count('release/foo/' + version) == 1, \ "no release tag created" ### ### Make patch ### with inbranch('release/foo'): if os.path.exists('include/foo.h'): user('git rm include/foo.h') else: if not os.path.exists('include'): os.makedirs('include') user('touch include/foo.h') user('git add include/foo.h') user('git commit -m "A release patch"') ### ### Test import and export ### with inbranch('release/foo'): export_cmd.export_patches() remove_cmd.remove_patches() import_cmd.import_patches() ### ### Release generator, again ### with bloom_answer(bloom_answer.ASSERT_NO_QUESTION): ret = user('git-bloom-generate -y release -s upstream --quiet') # patch import should have reported OK assert ret == code.OK, "actually returned ({0})".format(ret) # do the proper branches exist? assert branch_exists('release/foo'), "no release/foo branch" assert branch_exists('patches/release/foo'), \ "no patches/release/foo branch" # was the release tag created? ret, out, err = user('git tag', return_io=True) assert out.count('release/foo/' + version) == 1, \ "no release tag created"