From 150f5f0cb6bfdc2840164a033b54d2e7bd7ff90f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lubom=C3=ADr=20Sedl=C3=A1=C5=99?= Date: Wed, 18 Sep 2019 13:54:18 +0200 Subject: [PATCH] Fix crash when pkgset phase is skipped MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit JIRA: COMPOSE-3832 Signed-off-by: Lubomír Sedlář --- pungi/phases/createrepo.py | 6 ++++-- pungi/phases/pkgset/__init__.py | 4 ++++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/pungi/phases/createrepo.py b/pungi/phases/createrepo.py index 591db069..64553594 100644 --- a/pungi/phases/createrepo.py +++ b/pungi/phases/createrepo.py @@ -70,7 +70,7 @@ class CreaterepoPhase(PhaseBase): def run(self): get_productids_from_scm(self.compose) reference_pkgset = None - if self.pkgset_phase: + if self.pkgset_phase and self.pkgset_phase.package_sets: reference_pkgset = self.pkgset_phase.package_sets[-1] for i in range(self.compose.conf['createrepo_num_threads']): self.pool.add( @@ -109,7 +109,9 @@ def create_variant_repo(compose, arch, variant, pkg_type, pkgset, modules_metada createrepo_c = compose.conf["createrepo_c"] createrepo_checksum = compose.conf["createrepo_checksum"] repo = CreaterepoWrapper(createrepo_c=createrepo_c) - repo_dir_arch = pkgset.paths["global" if pkg_type == "srpm" else arch] + repo_dir_arch = None + if pkgset: + repo_dir_arch = pkgset.paths["global" if pkg_type == "srpm" else arch] try: repo_dir = types[pkg_type][1]() diff --git a/pungi/phases/pkgset/__init__.py b/pungi/phases/pkgset/__init__.py index cf01ff97..80b44428 100644 --- a/pungi/phases/pkgset/__init__.py +++ b/pungi/phases/pkgset/__init__.py @@ -21,6 +21,10 @@ class PkgsetPhase(PhaseBase): """PKGSET""" name = "pkgset" + def __init__(self, *args, **kwargs): + super(PkgsetPhase, self).__init__(*args, **kwargs) + self.package_sets = [] + def run(self): pkgset_source = "PkgsetSource%s" % self.compose.conf["pkgset_source"] from .source import PkgsetSourceContainer