From 256b8dd9021fdf0f9e78b2d291673e97334cf049 Mon Sep 17 00:00:00 2001 From: Fabian Vogt Date: Tue, 16 Apr 2019 11:58:55 +0200 Subject: [PATCH] Add option to release image_products into a separate repo totest_images_repo defaults to product_repo if unset. That's not exactly the same behaviour as before (following the releasetarget), but should cover all current projects. --- ttm/publisher.py | 5 +++++ ttm/releaser.py | 8 +++++++- ttm/totest.py | 6 ++++++ 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/ttm/publisher.py b/ttm/publisher.py index efde23ea..3c7d9a80 100644 --- a/ttm/publisher.py +++ b/ttm/publisher.py @@ -321,3 +321,8 @@ class ToTestPublisher(ToTestManager): self.api.switch_flag_in_prj( self.project.test_project, flag='publish', state='enable', repository=self.project.product_repo) + + if self.project.totest_images_repo != self.project.product_repo: + self.logger.info('Publish test project content (image_products)') + self.api.switch_flag_in_prj(self.project.test_project, flag='publish', state='enable', + repository=self.project.totest_images_repo) diff --git a/ttm/releaser.py b/ttm/releaser.py index a2d6d290..6eeb0a34 100644 --- a/ttm/releaser.py +++ b/ttm/releaser.py @@ -220,7 +220,9 @@ class ToTestReleaser(ToTestManager): for image in self.project.image_products: self.release_package(self.project.name, image.package, set_release=set_release, - repository=self.project.product_repo) + repository=self.project.product_repo, + target_project=self.project.test_project, + target_repository=self.project.totest_images_repo) def update_totest(self, snapshot=None): # omit snapshot, we don't want to rename on release @@ -232,4 +234,8 @@ class ToTestReleaser(ToTestManager): self.api.switch_flag_in_prj(self.project.test_project, flag='publish', state='disable', repository=self.project.product_repo) + if self.project.totest_images_repo != self.project.product_repo: + self.api.switch_flag_in_prj(self.project.test_project, flag='publish', state='disable', + repository=self.project.totest_images_repo) + self._release(set_release=release) diff --git a/ttm/totest.py b/ttm/totest.py index cb9503ac..f17f2f83 100755 --- a/ttm/totest.py +++ b/ttm/totest.py @@ -37,6 +37,8 @@ class ToTest(object): self.product_arch = 'local' self.livecd_repo = 'images' self.totest_container_repo = 'containers' + # Repo for image_products. If not set, uses product_repo. + self.totest_images_repo = None self.main_products = [] self.ftp_products = [] @@ -59,6 +61,10 @@ class ToTest(object): else: setattr(self, key, value) + # Set default for totest_images_repo + if self.totest_images_repo is None: + self.totest_images_repo = self.product_repo + def parse_images(self, products): parsed = [] for package in products: