Traceback (most recent call last): File "/usr/lib/python3.12/site-packages/pungi/scripts/pungi_koji.py", line 658, in cli_main main() File "/usr/lib/python3.12/site-packages/pungi/scripts/pungi_koji.py", line 353, in main run_compose( File "/usr/lib/python3.12/site-packages/pungi/scripts/pungi_koji.py", line 524, in run_compose extra_phase.stop() File "/usr/lib/python3.12/site-packages/pungi/phases/weaver.py", line 59, in stop self.pool.stop() File "/usr/lib/python3.12/site-packages/kobo/threads.py", line 120, in stop six.reraise(exc_info[0], exc_info[1], exc_info[2]) File "/usr/lib/python3.12/site-packages/six.py", line 719, in reraise raise value File "/usr/lib/python3.12/site-packages/kobo/threads.py", line 67, in run self.process(item, num) File "/usr/lib/python3.12/site-packages/pungi/phases/weaver.py", line 81, in process phase.stop() File "/usr/lib/python3.12/site-packages/pungi/phases/weaver.py", line 59, in stop self.pool.stop() File "/usr/lib/python3.12/site-packages/kobo/threads.py", line 120, in stop six.reraise(exc_info[0], exc_info[1], exc_info[2]) File "/usr/lib/python3.12/site-packages/six.py", line 719, in reraise raise value File "/usr/lib/python3.12/site-packages/kobo/threads.py", line 67, in run self.process(item, num) File "/usr/lib/python3.12/site-packages/pungi/phases/weaver.py", line 81, in process phase.stop() File "/usr/lib/python3.12/site-packages/pungi/phases/base.py", line 111, in stop self.pool.stop() File "/usr/lib/python3.12/site-packages/kobo/threads.py", line 120, in stop six.reraise(exc_info[0], exc_info[1], exc_info[2]) File "/usr/lib/python3.12/site-packages/six.py", line 719, in reraise raise value File "/usr/lib/python3.12/site-packages/kobo/threads.py", line 67, in run self.process(item, num) File "/usr/lib/python3.12/site-packages/pungi/phases/osbuild.py", line 151, in process self.worker( File "/usr/lib/python3.12/site-packages/pungi/phases/osbuild.py", line 184, in worker task_id = koji.koji_proxy.osbuildImage( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/koji/__init__.py", line 2541, in __call__ return self.__func(self.__name, args, opts) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/koji/__init__.py", line 3125, in _renew_expired_session return func(self, *args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/koji/__init__.py", line 3204, in _callMethod raise err koji.GenericError: Invalid method: osbuildImage Frame _callMethod in /usr/lib/python3.12/site-packages/koji/__init__.py at line 3204 3197 # otherwise keep retrying 3198 if self.logger.isEnabledFor(logging.DEBUG): 3199 self.logger.debug(tb_str) 3200 self.logger.info("Try #%s for call %s (%s) failed: %s", 3201 tries, self.callnum, name, e) 3202 if err: 3203 # raise the converted fault from above --> 3204 raise err 3205 if tries > 1: 3206 # first retry is immediate, after that we honor retry_interval 3207 time.sleep(interval) 3208 # not reached 3209 3210 def multiCall(self, strict=False, batch=None): args = err = GenericError('Invalid method: osbuildImage') handler = 'https://kojihub.stream.rdu2.redhat.com/kojihub' headers = [('Koji-Session-Id', '9503756'), ('Koji-Session-Key', '1-dbEphb9O4OHj4usqbYb'), ('Koji-Session-Callnum', '0'), ('User-Agent', 'koji/1'), ('Content-Type', 'text/xml'), ('Content-Length', '1291')] interval = 20 kwargs = {'opts': {'repo': ['http://composefiles.stream.rdu2.redhat.com/pungi/20260415-164113/compose/BaseOS/$arch/os', 'http://composefiles.stream.rdu2.redhat.com/pungi/20260415-164113/compose/AppStream/$arch max_retries = 30 name = 'osbuildImage' request = b"\n\nosbuildImage\n\n\nCentOS-Stream-GenericCloud\n\n\n10 self._ClientSession__hub_version = '1.36.0' self._apidoc = None self._calls = [] self.auth_method = {'method': 'gssapi_login', 'kwargs': {'principal': 'centos-stream@IPA.REDHAT.COM', 'keytab': '/home/composer/centos-stream.keytab', 'ccache': None, 'proxyuser': None, 'proxyauthtype': None}} self.authtype = 3 self.baseurl = 'https://kojihub.stream.rdu2.redhat.com/kojihub' self.callnum = 1 self.exclusive = False self.hub_version = self.hub_version_str = '1.36.0' self.logged_in = True self.logger = self.opts = {'timeout': 43200, 'max_retries': 30, 'retry_interval': 20, 'anon_retry': False, 'offline_retry': False, 'offline_retry_interval': 20, 'debug': False, 'debug_xmlrpc': False, 'serverca': '/etc/pki/ca-t self.retries = 1 self.rsession = self.sinfo = {'session-id': 9503756, 'session-key': '1-dbEphb9O4OHj4usqbYb', 'header-auth': True} tries = 1 Frame _renew_expired_session in /usr/lib/python3.12/site-packages/koji/__init__.py at line 3125 3118 self.logged_in = False 3119 auth_method(*args, **kwargs) 3120 3121 def renew_expired_session(func): 3122 """Decorator to renew expirated session or subsession.""" 3123 def _renew_expired_session(self, *args, **kwargs): 3124 try: --> 3125 return func(self, *args, **kwargs) 3126 except AuthExpired: 3127 self._renew_session() 3128 return func(self, *args, **kwargs) 3129 return _renew_expired_session 3130 3131 @renew_expired_session args = func = kwargs = {} self = self._ClientSession__hub_version = '1.36.0' self._apidoc = None self._calls = [] self.auth_method = {'method': 'gssapi_login', 'kwargs': {'principal': 'centos-stream@IPA.REDHAT.COM', 'keytab': '/home/composer/centos-stream.keytab', 'ccache': None, 'proxyuser': None, 'proxyauthtype': None}} self.authtype = 3 self.baseurl = 'https://kojihub.stream.rdu2.redhat.com/kojihub' self.callnum = 1 self.exclusive = False self.hub_version = self.hub_version_str = '1.36.0' self.logged_in = True self.logger = self.opts = {'timeout': 43200, 'max_retries': 30, 'retry_interval': 20, 'anon_retry': False, 'offline_retry': False, 'offline_retry_interval': 20, 'debug': False, 'debug_xmlrpc': False, 'serverca': '/etc/pki/ca-t self.retries = 1 self.rsession = self.sinfo = {'session-id': 9503756, 'session-key': '1-dbEphb9O4OHj4usqbYb', 'header-auth': True} Frame __call__ in /usr/lib/python3.12/site-packages/koji/__init__.py at line 2541 2534 self.__name = name 2535 self.__session = session 2536 2537 def __getattr__(self, name): 2538 return type(self)(self.__func, "%s.%s" % (self.__name, name)) 2539 2540 def __call__(self, *args, **opts): --> 2541 return self.__func(self.__name, args, opts) 2542 2543 @property 2544 def __doc__(self): 2545 if self.__session is None: 2546 # There could be potentially session-less object 2547 return None args = opts = {'opts': {'repo': ['http://composefiles.stream.rdu2.redhat.com/pungi/20260415-164113/compose/BaseOS/$arch/os', 'http://composefiles.stream.rdu2.redhat.com/pungi/20260415-164113/compose/AppStream/$arch self = self._VirtualMethod__name = 'osbuildImage' self._VirtualMethod__session = Frame worker in /usr/lib/python3.12/site-packages/pungi/phases/osbuild.py at line 184 177 178 customizations = config.get("customizations") 179 if customizations: 180 opts["customizations"] = customizations 181 182 if release: 183 opts["release"] = release --> 184 task_id = koji.koji_proxy.osbuildImage( 185 config["name"], 186 version, 187 config["distro"], 188 config["image_types"], 189 target, 190 arches, arches = ['aarch64', 'ppc64le', 's390x', 'x86_64'] compose = config = {'name': 'CentOS-Stream-GenericCloud', 'version': '10', 'distro': 'centos-stream-10', 'image_types': ['qcow2'], 'target': 'centos-10', 'arches': ['aarch64', 'ppc64le', 's390x', 'x86_64'], 'repo': ['Ba customizations = None koji = msg = 'OSBuild task for variant BaseOS' opts = {'repo': ['http://composefiles.stream.rdu2.redhat.com/pungi/20260415-164113/compose/BaseOS/$arch/os', 'http://composefiles.stream.rdu2.redhat.com/pungi/20260415-164113/compose/AppStream/$arch/os'], 'r ostree = {} release = '20260415.t.0' repo = ['http://composefiles.stream.rdu2.redhat.com/pungi/20260415-164113/compose/BaseOS/$arch/os', 'http://composefiles.stream.rdu2.redhat.com/pungi/20260415-164113/compose/AppStream/$arch/os'] self = self._args = self._daemonic = False self._ident = 140222878709440 self._initialized = True self._is_stopped = True self._kwargs = {} self._name = 'Thread-425' self._native_id = 1980027 self._started = self._stderr = <_io.TextIOWrapper name='' mode='w' encoding='utf-8'> self._target = None self._tstate_lock = None self.can_fail = [] self.daemon = False self.failed = True self.get_timeout = 1 self.ident = 140222878709440 self.kill = True self.name = 'Thread-425' self.native_id = 1980027 self.num = 1 self.pool = self.running = False self.traceparent = None target = 'centos-10' upload_options = None variant = Variant(id="BaseOS", name="BaseOS", type="variant", parent=None) version = '10' Frame process in /usr/lib/python3.12/site-packages/pungi/phases/osbuild.py at line 151 144 compose, 145 can_fail, 146 variant, 147 "*", 148 "osbuild", 149 logger=self.pool._logger, 150 ): --> 151 self.worker( 152 compose, variant, config, arches, version, release, target, repo 153 ) 154 155 def worker(self, compose, variant, config, arches, version, release, target, repo): 156 msg = "OSBuild task for variant %s" % variant.uid 157 self.pool.log_info("[BEGIN] %s" % msg) arches = ['aarch64', 'ppc64le', 's390x', 'x86_64'] can_fail = [] compose = config = {'name': 'CentOS-Stream-GenericCloud', 'version': '10', 'distro': 'centos-stream-10', 'image_types': ['qcow2'], 'target': 'centos-10', 'arches': ['aarch64', 'ppc64le', 's390x', 'x86_64'], 'repo': ['Ba item = num = 1 release = '20260415.t.0' repo = ['http://composefiles.stream.rdu2.redhat.com/pungi/20260415-164113/compose/BaseOS/$arch/os', 'http://composefiles.stream.rdu2.redhat.com/pungi/20260415-164113/compose/AppStream/$arch/os'] self = self._args = self._daemonic = False self._ident = 140222878709440 self._initialized = True self._is_stopped = True self._kwargs = {} self._name = 'Thread-425' self._native_id = 1980027 self._started = self._stderr = <_io.TextIOWrapper name='' mode='w' encoding='utf-8'> self._target = None self._tstate_lock = None self.can_fail = [] self.daemon = False self.failed = True self.get_timeout = 1 self.ident = 140222878709440 self.kill = True self.name = 'Thread-425' self.native_id = 1980027 self.num = 1 self.pool = self.running = False self.traceparent = None target = 'centos-10' variant = Variant(id="BaseOS", name="BaseOS", type="variant", parent=None) version = '10' Frame run in /usr/lib/python3.12/site-packages/kobo/threads.py at line 67 60 61 self.pool.queue_get_lock.acquire() 62 self.pool.queue_processed += 1 63 num = self.pool.queue_processed 64 self.pool.queue_get_lock.release() 65 66 try: --> 67 self.process(item, num) 68 except: 69 self.failed = True 70 self.pool.exceptions.append(sys.exc_info()) 71 self.pool.kill() 72 73 def process(self, item, num): item = num = 1 self = self._args = self._daemonic = False self._ident = 140222878709440 self._initialized = True self._is_stopped = True self._kwargs = {} self._name = 'Thread-425' self._native_id = 1980027 self._started = self._stderr = <_io.TextIOWrapper name='' mode='w' encoding='utf-8'> self._target = None self._tstate_lock = None self.can_fail = [] self.daemon = False self.failed = True self.get_timeout = 1 self.ident = 140222878709440 self.kill = True self.name = 'Thread-425' self.native_id = 1980027 self.num = 1 self.pool = self.running = False self.traceparent = None Frame reraise in /usr/lib/python3.12/site-packages/six.py at line 719 712 713 def reraise(tp, value, tb=None): 714 try: 715 if value is None: 716 value = tp() 717 if value.__traceback__ is not tb: 718 raise value.with_traceback(tb) --> 719 raise value 720 finally: 721 value = None 722 tb = None 723 724 else: 725 def exec_(_code_, _globs_=None, _locs_=None): tb = None tp = value = None Frame stop in /usr/lib/python3.12/site-packages/kobo/threads.py at line 120 113 """ 114 for i in self.threads: 115 i.running = False 116 for i in self.threads: 117 i.join() 118 if self.exceptions: 119 exc_info = self.exceptions[0] --> 120 six.reraise(exc_info[0], exc_info[1], exc_info[2]) 121 122 def kill(self): 123 for i in self.threads: 124 i.kill = True 125 i.running = False 126 exc_info = i = self = self._logger = self.exceptions = [(, GenericError('Invalid method: osbuildImage'), )] self.queue = self.queue_get_lock = self.queue_processed = 2 self.queue_put_lock = self.queue_total = 2 self.threads = [, ] Frame stop in /usr/lib/python3.12/site-packages/pungi/phases/base.py at line 111 104 "Note that variants can be excluded in configuration file" 105 ) 106 107 def stop(self): 108 if self.finished: 109 return 110 if hasattr(self, "pool"): --> 111 self.pool.stop() 112 self.finished = True 113 self.compose.log_info("[DONE ] %s" % self.msg) 114 115 if hasattr(self, "_start_time"): 116 self.compose.log_info( 117 "PHASE %s took %d seconds" self = self._skipped = False self._start_time = 1776272020.2185898 self.compose = self.finished = False self.logger = self.msg = '---------- PHASE: OSBUILD ----------' self.name = 'osbuild' self.pool = self.used_patterns = {'^BaseOS$'} Frame process in /usr/lib/python3.12/site-packages/pungi/phases/weaver.py at line 81 74 self.pool.queue_total, 75 phases_names, 76 ) 77 self.pool.log_info("[BEGIN] %s" % (msg,)) 78 79 for phase in pipeline: 80 phase.start() --> 81 phase.stop() 82 83 self.pool.log_info("[DONE ] %s" % (msg,)) item = [] msg = 'Running pipeline (5/7). Phases: osbuild' num = 5 phase = phases_names = 'osbuild' pipeline = [] self = self._args = self._daemonic = False self._ident = 140223277364928 self._initialized = True self._is_stopped = True self._kwargs = {} self._name = 'Thread-418' self._native_id = 1980023 self._started = self._stderr = <_io.TextIOWrapper name='' mode='w' encoding='utf-8'> self._target = None self._tstate_lock = None self.daemon = False self.failed = True self.get_timeout = 1 self.ident = 140223277364928 self.kill = True self.name = 'Thread-418' self.native_id = 1980023 self.pool = self.running = False self.traceparent = None Frame run in /usr/lib/python3.12/site-packages/kobo/threads.py at line 67 60 61 self.pool.queue_get_lock.acquire() 62 self.pool.queue_processed += 1 63 num = self.pool.queue_processed 64 self.pool.queue_get_lock.release() 65 66 try: --> 67 self.process(item, num) 68 except: 69 self.failed = True 70 self.pool.exceptions.append(sys.exc_info()) 71 self.pool.kill() 72 73 def process(self, item, num): item = [] num = 5 self = self._args = self._daemonic = False self._ident = 140223277364928 self._initialized = True self._is_stopped = True self._kwargs = {} self._name = 'Thread-418' self._native_id = 1980023 self._started = self._stderr = <_io.TextIOWrapper name='' mode='w' encoding='utf-8'> self._target = None self._tstate_lock = None self.daemon = False self.failed = True self.get_timeout = 1 self.ident = 140223277364928 self.kill = True self.name = 'Thread-418' self.native_id = 1980023 self.pool = self.running = False self.traceparent = None Frame reraise in /usr/lib/python3.12/site-packages/six.py at line 719 712 713 def reraise(tp, value, tb=None): 714 try: 715 if value is None: 716 value = tp() 717 if value.__traceback__ is not tb: 718 raise value.with_traceback(tb) --> 719 raise value 720 finally: 721 value = None 722 tb = None 723 724 else: 725 def exec_(_code_, _globs_=None, _locs_=None): tb = None tp = value = None Frame stop in /usr/lib/python3.12/site-packages/kobo/threads.py at line 120 113 """ 114 for i in self.threads: 115 i.running = False 116 for i in self.threads: 117 i.join() 118 if self.exceptions: 119 exc_info = self.exceptions[0] --> 120 six.reraise(exc_info[0], exc_info[1], exc_info[2]) 121 122 def kill(self): 123 for i in self.threads: 124 i.kill = True 125 i.running = False 126 exc_info = i = self = self._logger = self.exceptions = [(, GenericError('Invalid method: osbuildImage'), )] self.queue = self.queue_get_lock = self.queue_processed = 7 self.queue_put_lock = self.queue_total = 7 self.threads = [, , , Frame stop in /usr/lib/python3.12/site-packages/pungi/phases/weaver.py at line 59 52 53 self.pool.start() 54 55 def stop(self): 56 if self.finished: 57 return 58 if hasattr(self, "pool"): --> 59 self.pool.stop() 60 self.finished = True 61 self.compose.log_info("[DONE ] %s" % self.msg) 62 63 64 class PipelineThread(WorkerThread): 65 """ self = self._phases_schema = self.compose = self.finished = False self.msg = '---------- PHASE: WEAVER ----------' self.name = 'weaver' self.pool = Frame process in /usr/lib/python3.12/site-packages/pungi/phases/weaver.py at line 81 74 self.pool.queue_total, 75 phases_names, 76 ) 77 self.pool.log_info("[BEGIN] %s" % (msg,)) 78 79 for phase in pipeline: 80 phase.start() --> 81 phase.stop() 82 83 self.pool.log_info("[DONE ] %s" % (msg,)) item = [, ] msg = 'Running pipeline (1/4). Phases: weaver, image_container' num = 1 phase = phases_names = 'weaver, image_container' pipeline = [, ] self = self._args = self._daemonic = False self._ident = 140223568672448 self._initialized = True self._is_stopped = True self._kwargs = {} self._name = 'Thread-410' self._native_id = 1980015 self._started = self._stderr = <_io.TextIOWrapper name='' mode='w' encoding='utf-8'> self._target = None self._tstate_lock = None self.daemon = False self.failed = True self.get_timeout = 1 self.ident = 140223568672448 self.kill = True self.name = 'Thread-410' self.native_id = 1980015 self.pool = self.running = False self.traceparent = None Frame run in /usr/lib/python3.12/site-packages/kobo/threads.py at line 67 60 61 self.pool.queue_get_lock.acquire() 62 self.pool.queue_processed += 1 63 num = self.pool.queue_processed 64 self.pool.queue_get_lock.release() 65 66 try: --> 67 self.process(item, num) 68 except: 69 self.failed = True 70 self.pool.exceptions.append(sys.exc_info()) 71 self.pool.kill() 72 73 def process(self, item, num): item = [, ] num = 1 self = self._args = self._daemonic = False self._ident = 140223568672448 self._initialized = True self._is_stopped = True self._kwargs = {} self._name = 'Thread-410' self._native_id = 1980015 self._started = self._stderr = <_io.TextIOWrapper name='' mode='w' encoding='utf-8'> self._target = None self._tstate_lock = None self.daemon = False self.failed = True self.get_timeout = 1 self.ident = 140223568672448 self.kill = True self.name = 'Thread-410' self.native_id = 1980015 self.pool = self.running = False self.traceparent = None Frame reraise in /usr/lib/python3.12/site-packages/six.py at line 719 712 713 def reraise(tp, value, tb=None): 714 try: 715 if value is None: 716 value = tp() 717 if value.__traceback__ is not tb: 718 raise value.with_traceback(tb) --> 719 raise value 720 finally: 721 value = None 722 tb = None 723 724 else: 725 def exec_(_code_, _globs_=None, _locs_=None): tb = None tp = value = None Frame stop in /usr/lib/python3.12/site-packages/kobo/threads.py at line 120 113 """ 114 for i in self.threads: 115 i.running = False 116 for i in self.threads: 117 i.join() 118 if self.exceptions: 119 exc_info = self.exceptions[0] --> 120 six.reraise(exc_info[0], exc_info[1], exc_info[2]) 121 122 def kill(self): 123 for i in self.threads: 124 i.kill = True 125 i.running = False 126 exc_info = i = self = self._logger = self.exceptions = [(, GenericError('Invalid method: osbuildImage'), )] self.queue = self.queue_get_lock = self.queue_processed = 4 self.queue_put_lock = self.queue_total = 4 self.threads = [, , , Frame stop in /usr/lib/python3.12/site-packages/pungi/phases/weaver.py at line 59 52 53 self.pool.start() 54 55 def stop(self): 56 if self.finished: 57 return 58 if hasattr(self, "pool"): --> 59 self.pool.stop() 60 self.finished = True 61 self.compose.log_info("[DONE ] %s" % self.msg) 62 63 64 class PipelineThread(WorkerThread): 65 """ self = self._phases_schema = self.compose = self.finished = False self.msg = '---------- PHASE: WEAVER ----------' self.name = 'weaver' self.pool = Frame run_compose in /usr/lib/python3.12/site-packages/pungi/scripts/pungi_koji.py at line 524 517 ostree_installer_phase, 518 osbs_phase, 519 repoclosure_phase, 520 ) 521 extra_phase = pungi.phases.WeaverPhase(compose, extra_phase_schema) 522 523 extra_phase.start() --> 524 extra_phase.stop() 525 finally: 526 # wait for ostree container phase here too - it can happily run in parallel with 527 # all of the other stuff, but we must ensure it always gets stopped 528 ostree_container_phase.stop() 529 530 # now we do checksums as all images are done arch = 'src' buildinstall_phase = compose = compose_images_phase = compose_images_schema = config_copy_path = '/mnt/centos/composes/pungi/20260415-164113/logs/global/config-copy' config_dump_full = '/mnt/centos/composes/pungi/20260415-164113/logs/global/config-dump.global.log' config_file = '/home/composer/jenkins/workspace/stream10-gen2-compose@2/pungi-centos/centos/variables.conf' create_latest_link = True createiso_phase = createrepo_phase = errors = [] essentials_phase = essentials_schema = extra_isos_phase = extra_phase = extra_phase_schema = extrafiles_phase = f = <_io.TextIOWrapper name='/mnt/centos/composes/pungi/20260415-164113/logs/global/config-dump.global.log' mode='w' encoding='UTF-8'> gather_phase = image_build_phase = image_checksum_phase = image_container_phase = imagebuilder_phase = init_phase = installed_pkgs_log = '/mnt/centos/composes/pungi/20260415-164113/logs/global/installed-pkgs.global.log' kiwibuild_phase = latest_link_components = -1 latest_link_status = None livemedia_phase = osbs_phase = osbuild_phase = ostree_container_phase = ostree_installer_phase = ostree_phase = phase = pkgset_phase = pungi = repoclosure_phase = test_phase = timestamp = '1776272020.213351' variant = Variant(id="SAPHANA", name="SAP Solutions", type="variant", parent=None) Frame main in /usr/lib/python3.12/site-packages/pungi/scripts/pungi_koji.py at line 353 346 logger.error("Config validation failed with the error: %s" % error) 347 fail_to_start("Config validation failed", errors=errors) 348 sys.exit(1) 349 350 notifier.compose = compose 351 COMPOSE = compose 352 try: --> 353 run_compose( 354 compose, 355 create_latest_link=create_latest_link, 356 latest_link_status=latest_link_status, 357 latest_link_components=latest_link_components, 358 ) 359 except UnsignedPackagesError: Compose = PHASES_NAMES_MODIFIED = ['buildinstall', 'createiso', 'createrepo', 'extra_files', 'extra_isos', 'gather', 'image_build', 'imagebuilder', 'image_checksum', 'image_container', 'init', 'kiwibuild', 'live_media', 'osbs', 'osbui abort = .abort at 0x7f8886734ae0> ci = ci_path = '/mnt/centos/composes/pungi/20260415-164113/work/global/composeinfo-base.json' compose = compose_dir = '/mnt/centos/composes/pungi/20260415-164113' compose_type = 'test' conf = {'RELEASE_NAME': 'CentOS Stream', 'RELEASE_SHORT': 'CentOS-Stream', 'RELEASE_VERSION': '10', 'PKGSET_KOJI_TAG': 'c10s-compose', 'RUNROOT_CHANNEL': 'runroot', 'RUNROOT_TAG': 'c10s-build', 'RELEASE_VERS create_latest_link = True errors = [] fail_to_start = .fail_to_start at 0x7f88867349a0> group = kobo = latest_link_components = -1 latest_link_status = None logger = notifier = opts = Namespace(target_dir=None, compose_dir='/mnt/centos/composes/pungi/20260415-164113', label=None, no_label=True, supported=False, old_composes=[], config='/home/composer/jenkins/workspace/stream10-gen2 parser = ArgumentParser(prog='pungi-koji', usage=None, description=None, formatter_class=, conflict_handler='error', add_help=True) productmd = pungi = rv = None warning = 'WARNING: Unrecognized config option: VARIANTS_BRANCH.' warnings = ["WARNING: Config option release_is_layered was removed and has no effect; remove it. It's layered if there's configuration for base product.", "WARNING: Config option runroot was removed and has no e Frame cli_main in /usr/lib/python3.12/site-packages/pungi/scripts/pungi_koji.py at line 658 651 signal.signal(signal.SIGINT, sigterm_handler) 652 signal.signal(signal.SIGTERM, sigterm_handler) 653 654 tracing.setup() 655 656 with tracing.span("run-compose"): 657 try: --> 658 main() 659 except (Exception, KeyboardInterrupt) as ex: 660 tracing.record_exception(ex) 661 if COMPOSE: 662 COMPOSE.log_error("Compose run failed: %s" % ex) 663 COMPOSE.traceback(show_locals=getattr(ex, "show_locals", True)) 664 COMPOSE.log_critical("Compose failed: %s" % COMPOSE.topdir) ex = GenericError('Invalid method: osbuildImage')