From a831d65c40150578461ad11951d62d90d66f5c33 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lubom=C3=ADr=20Sedl=C3=A1=C5=99?= Date: Fri, 14 Jul 2017 14:25:47 +0200 Subject: [PATCH] createrepo: Don't use existing metadata with deltas MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When creating the final repo, we reuse metadata from arch repo used for depsolving. This however breaks creating deltas with createrepo_c. Signed-off-by: Lubomír Sedlář --- pungi/phases/createrepo.py | 5 +++++ tests/test_createrepophase.py | 8 ++++---- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/pungi/phases/createrepo.py b/pungi/phases/createrepo.py index ac769b67..5ff3fe2a 100644 --- a/pungi/phases/createrepo.py +++ b/pungi/phases/createrepo.py @@ -145,6 +145,11 @@ def create_variant_repo(compose, arch, variant, pkg_type): f.write("%s\n" % rel_path) old_package_dirs = _get_old_package_dirs(compose, repo_dir) + if old_package_dirs: + # If we are creating deltas, we can not reuse existing metadata, as + # that would stop deltas from being created. + # This seems to only affect createrepo_c though. + repo_dir_arch = None comps_path = None if compose.has_comps and pkg_type == "rpm": diff --git a/tests/test_createrepophase.py b/tests/test_createrepophase.py index ea101256..2f65df1d 100644 --- a/tests/test_createrepophase.py +++ b/tests/test_createrepophase.py @@ -308,7 +308,7 @@ class TestCreateVariantRepo(PungiTestCase): database=True, groupfile=None, workers=3, outputdir=self.topdir + '/compose/Server/x86_64/os', pkglist=list_file, skip_stat=True, update=True, - update_md_path=self.topdir + '/work/x86_64/repo', deltas=True, + update_md_path=None, deltas=True, oldpackagedirs=self.topdir + '/old/test-1.0-20151203.0/compose/Server/x86_64/os/Packages', use_xz=False)]) self.assertItemsEqual( @@ -348,7 +348,7 @@ class TestCreateVariantRepo(PungiTestCase): database=True, groupfile=None, workers=3, outputdir=self.topdir + '/compose/Server/x86_64/os', pkglist=list_file, skip_stat=True, update=True, - update_md_path=self.topdir + '/work/x86_64/repo', deltas=True, + update_md_path=None, deltas=True, oldpackagedirs=[ self.topdir + '/old/test-1.0-20151203.0/compose/Server/x86_64/os/Packages/a', self.topdir + '/old/test-1.0-20151203.0/compose/Server/x86_64/os/Packages/b', @@ -423,7 +423,7 @@ class TestCreateVariantRepo(PungiTestCase): database=True, groupfile=None, workers=3, outputdir=self.topdir + '/compose/Server/source/tree', pkglist=list_file, skip_stat=True, update=True, - update_md_path=self.topdir + '/work/global/repo', deltas=True, + update_md_path=None, deltas=True, oldpackagedirs=self.topdir + '/old/test-1.0-20151203.0/compose/Server/source/tree/Packages', use_xz=False)]) self.assertItemsEqual( @@ -460,7 +460,7 @@ class TestCreateVariantRepo(PungiTestCase): database=True, groupfile=None, workers=3, outputdir=self.topdir + '/compose/Server/x86_64/debug/tree', pkglist=list_file, skip_stat=True, update=True, - update_md_path=self.topdir + '/work/x86_64/repo', deltas=True, + update_md_path=None, deltas=True, oldpackagedirs=self.topdir + '/old/test-1.0-20151203.0/compose/Server/x86_64/debug/tree/Packages', use_xz=False)]) self.assertItemsEqual(