Traceback (most recent call last): File "/usr/lib/python3.13/site-packages/pungi/scripts/pungi_koji.py", line 653, in cli_main main() ~~~~^^ File "/usr/lib/python3.13/site-packages/pungi/scripts/pungi_koji.py", line 352, in main run_compose( ~~~~~~~~~~~^ compose, ^^^^^^^^ ...<2 lines>... latest_link_components=latest_link_components, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/usr/lib/python3.13/site-packages/pungi/scripts/pungi_koji.py", line 470, in run_compose pkgset_phase.start() ~~~~~~~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/pungi/phases/base.py", line 66, in start self.run() ~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/pungi/phases/pkgset/__init__.py", line 36, in run self.package_sets, self.path_prefix = SourceClass(self.compose)() ~~~~~~~~~~~~~~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/pungi/phases/pkgset/sources/source_koji.py", line 196, in __call__ package_sets = get_pkgset_from_koji(self.compose, self.koji_wrapper) File "/usr/lib/python3.13/site-packages/pungi/phases/pkgset/sources/source_koji.py", line 202, in get_pkgset_from_koji return populate_global_pkgset(compose, koji_wrapper, event_info) File "/usr/lib/python3.13/site-packages/pungi/phases/pkgset/sources/source_koji.py", line 911, in populate_global_pkgset pkgset.populate( ~~~~~~~~~~~~~~~^ compose_tag, ^^^^^^^^^^^^ ...<8 lines>... include_packages=modular_packages, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/usr/lib/python3.13/site-packages/pungi/phases/pkgset/pkgsets.py", line 712, in populate result = self.read_packages(result_rpms, result_srpms) File "/usr/lib/python3.13/site-packages/pungi/phases/pkgset/pkgsets.py", line 195, in read_packages srpm_pool.stop() ~~~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/kobo/threads.py", line 120, in stop six.reraise(exc_info[0], exc_info[1], exc_info[2]) ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/six.py", line 719, in reraise raise value File "/usr/lib/python3.13/site-packages/kobo/threads.py", line 67, in run self.process(item, num) ~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pungi/phases/pkgset/pkgsets.py", line 69, in process rpm_path = self.pool.package_set.get_package_path(item) File "/usr/lib/python3.13/site-packages/pungi/phases/pkgset/pkgsets.py", line 539, in get_package_path if "getRPMChecksums" in self.koji_proxy.system.listMethods(): ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/koji/__init__.py", line 2536, in __call__ return self.__func(self.__name, args, opts) ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/koji/__init__.py", line 3120, in _renew_expired_session return func(self, *args, **kwargs) File "/usr/lib/python3.13/site-packages/koji/__init__.py", line 3146, in _callMethod return self._sendCall(handler, headers, request) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/koji/__init__.py", line 3039, in _sendCall raise e File "/usr/lib/python3.13/site-packages/koji/__init__.py", line 3035, in _sendCall return self._sendOneCall(handler, headers, request) ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/koji/__init__.py", line 3083, in _sendOneCall r.raise_for_status() ~~~~~~~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/requests/models.py", line 1024, in raise_for_status raise HTTPError(http_error_msg, response=self) requests.exceptions.HTTPError: 500 Server Error: Internal Server Error for url: https://koji.fedoraproject.org/kojihub Frame raise_for_status in /usr/lib/python3.13/site-packages/requests/models.py at line 1024 1017 1018 elif 500 <= self.status_code < 600: 1019 http_error_msg = ( 1020 f"{self.status_code} Server Error: {reason} for url: {self.url}" 1021 ) 1022 1023 if http_error_msg: --> 1024 raise HTTPError(http_error_msg, response=self) 1025 1026 def close(self): 1027 """Releases the connection back to the pool. Once this method has been 1028 called the underlying ``raw`` object must not be accessed again. 1029 1030 *Note: Should not normally need to be called explicitly.* http_error_msg = '500 Server Error: Internal Server Error for url: https://koji.fedoraproject.org/kojihub' reason = 'Internal Server Error' self = self._content = False self._content_consumed = False self._next = None self.apparent_encoding = 'ascii' self.connection = self.content = b'\n\n500 Internal Server Error\n\n

Internal Server Error

\n

The server encountered an internal error self.cookies = self.elapsed = datetime.timedelta(microseconds=16109) self.encoding = 'iso-8859-1' self.headers = {'Date': 'Mon, 10 Feb 2025 07:36:54 GMT', 'Server': 'Apache', 'Strict-Transport-Security': 'max-age=31536000; includeSubDomains; preload', 'X-Frame-Options': 'SAMEORIGIN', 'X-Xss-Protection': '1; mode self.history = [] self.is_permanent_redirect = False self.is_redirect = False self.links = {} self.next = None self.ok = False self.raw = self.reason = 'Internal Server Error' self.request = self.status_code = 500 self.text = '\n\n500 Internal Server Error\n\n

Internal Server Error

\n

The server encountered an internal error self.url = 'https://koji.fedoraproject.org/kojihub' Frame _sendOneCall in /usr/lib/python3.13/site-packages/koji/__init__.py at line 3083 3076 _val = '0x' + _val.hex() 3077 if len(_val) > 1024: 3078 _val = _val[:1024] + '...' 3079 self.logger.debug("%s: %r" % (_key, _val)) 3080 with warnings.catch_warnings(): 3081 warnings.simplefilter("ignore") 3082 r = self.rsession.post(handler, **callopts) --> 3083 r.raise_for_status() 3084 hub_version = r.headers.get('Koji-Version') 3085 if hub_version: 3086 self.__hub_version = hub_version 3087 try: 3088 ret = self._read_xmlrpc_response(r) 3089 finally: auth = None callopts = {'headers': {'User-Agent': 'koji/1', 'Content-Type': 'text/xml', 'Content-Length': '112'}, 'data': b"\n\nsystem.listMethods\n\n request = b"\n\nsystem.listMethods\n\n\n\n" self = self._ClientSession__hub_version = '1.35.1' self._apidoc = None self._calls = [] self.auth_method = None self.authtype = None self.baseurl = 'https://koji.fedoraproject.org/kojihub' self.callnum = None self.exclusive = False self.hub_version = self.hub_version_str = '1.35.1' self.logged_in = False self.logger = self.opts = {'timeout': 43200, 'max_retries': 30, 'retry_interval': 20, 'anon_retry': True, 'offline_retry': False, 'offline_retry_interval': 20, 'debug': False, 'debug_xmlrpc': False, 'serverca': '', 'use_fast_u self.retries = 82 self.rsession = self.sinfo = None timeout = 43200 verify = '' Frame _sendCall in /usr/lib/python3.13/site-packages/koji/__init__.py at line 3035 3028 exc.request.url = self._sanitize_url(exc.request.url) 3029 return exc 3030 3031 def _sendCall(self, handler, headers, request): 3032 # handle expired connections 3033 for i in (0, 1): 3034 try: --> 3035 return self._sendOneCall(handler, headers, request) 3036 except Exception as e: 3037 e = self._sanitize_connection_error(e) 3038 if i or not is_conn_error(e): 3039 raise e 3040 self.logger.debug("Connection Error: %s", e) 3041 self.new_session() handler = 'https://koji.fedoraproject.org/kojihub' headers = [('User-Agent', 'koji/1'), ('Content-Type', 'text/xml'), ('Content-Length', '112')] i = 0 request = b"\n\nsystem.listMethods\n\n\n\n" self = self._ClientSession__hub_version = '1.35.1' self._apidoc = None self._calls = [] self.auth_method = None self.authtype = None self.baseurl = 'https://koji.fedoraproject.org/kojihub' self.callnum = None self.exclusive = False self.hub_version = self.hub_version_str = '1.35.1' self.logged_in = False self.logger = self.opts = {'timeout': 43200, 'max_retries': 30, 'retry_interval': 20, 'anon_retry': True, 'offline_retry': False, 'offline_retry_interval': 20, 'debug': False, 'debug_xmlrpc': False, 'serverca': '', 'use_fast_u self.retries = 82 self.rsession = self.sinfo = None Frame _sendCall in /usr/lib/python3.13/site-packages/koji/__init__.py at line 3039 3032 # handle expired connections 3033 for i in (0, 1): 3034 try: 3035 return self._sendOneCall(handler, headers, request) 3036 except Exception as e: 3037 e = self._sanitize_connection_error(e) 3038 if i or not is_conn_error(e): --> 3039 raise e 3040 self.logger.debug("Connection Error: %s", e) 3041 self.new_session() 3042 3043 def _sendOneCall(self, handler, headers, request): 3044 headers = dict(headers) 3045 callopts = { handler = 'https://koji.fedoraproject.org/kojihub' headers = [('User-Agent', 'koji/1'), ('Content-Type', 'text/xml'), ('Content-Length', '112')] i = 0 request = b"\n\nsystem.listMethods\n\n\n\n" self = self._ClientSession__hub_version = '1.35.1' self._apidoc = None self._calls = [] self.auth_method = None self.authtype = None self.baseurl = 'https://koji.fedoraproject.org/kojihub' self.callnum = None self.exclusive = False self.hub_version = self.hub_version_str = '1.35.1' self.logged_in = False self.logger = self.opts = {'timeout': 43200, 'max_retries': 30, 'retry_interval': 20, 'anon_retry': True, 'offline_retry': False, 'offline_retry_interval': 20, 'debug': False, 'debug_xmlrpc': False, 'serverca': '', 'use_fast_u self.retries = 82 self.rsession = self.sinfo = None Frame _callMethod in /usr/lib/python3.13/site-packages/koji/__init__.py at line 3146 3139 max_retries = self.opts.get('max_retries', 30) 3140 interval = self.opts.get('retry_interval', 20) 3141 err = None 3142 while True: 3143 tries += 1 3144 self.retries += 1 3145 try: --> 3146 return self._sendCall(handler, headers, request) 3147 # basically, we want to retry on most errors, with a few exceptions 3148 # - faults (this means the call completed and failed) 3149 # - SystemExit, KeyboardInterrupt 3150 # note that, for logged-in sessions the server should tell us (via a RetryError 3151 # fault) if the call cannot be retried. For non-logged-in sessions, all calls 3152 # should be read-only and hence retryable. args = err = None handler = 'https://koji.fedoraproject.org/kojihub' headers = [('User-Agent', 'koji/1'), ('Content-Type', 'text/xml'), ('Content-Length', '112')] interval = 20 kwargs = {} max_retries = 30 name = 'system.listMethods' request = b"\n\nsystem.listMethods\n\n\n\n" retry = True self = self._ClientSession__hub_version = '1.35.1' self._apidoc = None self._calls = [] self.auth_method = None self.authtype = None self.baseurl = 'https://koji.fedoraproject.org/kojihub' self.callnum = None self.exclusive = False self.hub_version = self.hub_version_str = '1.35.1' self.logged_in = False self.logger = self.opts = {'timeout': 43200, 'max_retries': 30, 'retry_interval': 20, 'anon_retry': True, 'offline_retry': False, 'offline_retry_interval': 20, 'debug': False, 'debug_xmlrpc': False, 'serverca': '', 'use_fast_u self.retries = 82 self.rsession = self.sinfo = None tb_str = 'Traceback (most recent call last):\n File "/usr/lib/python3.13/site-packages/koji/__init__.py", line 3146, in _callMethod\n return self._sendCall(handler, headers, request)\n ~~~~~~~~~~ tries = 31 Frame _renew_expired_session in /usr/lib/python3.13/site-packages/koji/__init__.py at line 3120 3113 self.logged_in = False 3114 auth_method(*args, **kwargs) 3115 3116 def renew_expired_session(func): 3117 """Decorator to renew expirated session or subsession.""" 3118 def _renew_expired_session(self, *args, **kwargs): 3119 try: --> 3120 return func(self, *args, **kwargs) 3121 except AuthExpired: 3122 self._renew_session() 3123 return func(self, *args, **kwargs) 3124 return _renew_expired_session 3125 3126 @renew_expired_session args = func = kwargs = {} self = self._ClientSession__hub_version = '1.35.1' self._apidoc = None self._calls = [] self.auth_method = None self.authtype = None self.baseurl = 'https://koji.fedoraproject.org/kojihub' self.callnum = None self.exclusive = False self.hub_version = self.hub_version_str = '1.35.1' self.logged_in = False self.logger = self.opts = {'timeout': 43200, 'max_retries': 30, 'retry_interval': 20, 'anon_retry': True, 'offline_retry': False, 'offline_retry_interval': 20, 'debug': False, 'debug_xmlrpc': False, 'serverca': '', 'use_fast_u self.retries = 82 self.rsession = self.sinfo = None Frame __call__ in /usr/lib/python3.13/site-packages/koji/__init__.py at line 2536 2529 self.__name = name 2530 self.__session = session 2531 2532 def __getattr__(self, name): 2533 return type(self)(self.__func, "%s.%s" % (self.__name, name)) 2534 2535 def __call__(self, *args, **opts): --> 2536 return self.__func(self.__name, args, opts) 2537 2538 @property 2539 def __doc__(self): 2540 if self.__session is None: 2541 # There could be potentially session-less object 2542 return None args = opts = {} self = self._VirtualMethod__name = 'system.listMethods' self._VirtualMethod__session = None Frame get_package_path in /usr/lib/python3.13/site-packages/pungi/phases/pkgset/pkgsets.py at line 539 532 # know the path. 533 if "path_from_task" in rpm_info: 534 return self.downloader.get_file(rpm_info["path_from_task"]) 535 536 pathinfo = self.koji_wrapper.koji_module.pathinfo 537 paths = [] 538 --> 539 if "getRPMChecksums" in self.koji_proxy.system.listMethods(): 540 541 def checksum_validator(keyname, pkg_path): 542 checksums = self.koji_proxy.getRPMChecksums( 543 rpm_info["id"], checksum_types=("sha256",) 544 ) 545 if "sha256" in checksums.get(keyname, {}): build_info = {'build_id': 2416678, 'completion_time': '2024-03-07 22:35:31.887840+00:00', 'create_event': 136025463, 'creation_event_id': 127406481, 'creation_time': '2024-03-07 22:33:14.941398+00:00', 'draft': Fa pathinfo = <__koji__compose_koji.PathInfo object at 0x7f1c36108d70> paths = [] queue_item = rpm_info = {'arch': 'src', 'build_id': 2416678, 'buildroot_id': 49541696, 'buildtime': 1709850883, 'draft': False, 'epoch': None, 'extra': None, 'id': 37978732, 'metadata_only': False, 'name': 'shim-unsigned-aar self = self._allow_invalid_sigkeys = False self._invalid_sigkey_rpms = [] self._logger = self.arches = {'x86_64', 'i386', 'athlon', 'ppc64le', 's390x', 'src', 'i686', 'aarch64', 'noarch', 'i586', 'i486'} self.cache_region = self.downloader = self.extra_builds = [] self.extra_tasks = [] self.file_cache = self.invalid_sigkey_rpms = [] self.koji_proxy = self.koji_wrapper = self.name = 'f42' self.old_file_cache = self.packages = {'swayidle', 'uim', 'qmidiarp', 'linuxconsoletools', 'ipvsadm', 'libdb-devel', 'gnome-shell', 'freedink', 'PySolFC-cardsets', 'esmtp', 'xdg-desktop-portal-gtk', 'imsettings-plasma', 'gajim', 'exim', ' self.populate_only_packages = False self.reuse = None self.rpms_by_arch = {'src': [shim-15.8-3.src.rpm, golang-github-quic-0.42.0-1.fc41.src.rpm, mbedtls-2.28.8-1.fc41.src.rpm, compiler-rt17-17.0.6-6.fc41.src.rpm, fwupd-efi-1.6-1.fc41.src.rpm, mumble-1.4.287-5.fc41.src.rpm, self.sigkey_ordering = '105ef944' self.signed_packages_retries = 0 self.signed_packages_wait = 30 self.srpms_by_name = {'shim-15.8-3.src.rpm': shim-15.8-3.src.rpm, 'golang-github-quic-0.42.0-1.fc41.src.rpm': golang-github-quic-0.42.0-1.fc41.src.rpm, 'mbedtls-2.28.8-1.fc41.src.rpm': mbedtls-2.28.8-1.fc41.src.rpm, 'comp Frame process in /usr/lib/python3.13/site-packages/pungi/phases/pkgset/pkgsets.py at line 69 62 # rpm_info, build_info = item 63 64 if (num % 100 == 0) or (num == self.pool.queue_total): 65 self.pool.package_set.log_debug( 66 "Processed %s out of %s packages" % (num, self.pool.queue_total) 67 ) 68 --> 69 rpm_path = self.pool.package_set.get_package_path(item) 70 if rpm_path is None: 71 return 72 73 # In case we have old file cache data, try to reuse it. 74 if self.pool.package_set.old_file_cache: 75 # Try to find the RPM in old_file_cache and reuse it instead of item = num = 4 self = self._args = self._daemonic = False self._handle = <_thread._ThreadHandle object: ident=139758864934592> self._ident = 139758864934592 self._initialized = True self._kwargs = {} self._name = 'Thread-48' self._native_id = 1706372 self._started = self._stderr = <_io.TextIOWrapper name='' mode='w' encoding='utf-8'> self._target = None self.daemon = False self.failed = True self.get_timeout = 1 self.ident = 139758864934592 self.kill = True self.name = 'Thread-48' self.native_id = 1706372 self.pool = self.running = False Frame run in /usr/lib/python3.13/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 = 4 self = self._args = self._daemonic = False self._handle = <_thread._ThreadHandle object: ident=139758864934592> self._ident = 139758864934592 self._initialized = True self._kwargs = {} self._name = 'Thread-48' self._native_id = 1706372 self._started = self._stderr = <_io.TextIOWrapper name='' mode='w' encoding='utf-8'> self._target = None self.daemon = False self.failed = True self.get_timeout = 1 self.ident = 139758864934592 self.kill = True self.name = 'Thread-48' self.native_id = 1706372 self.pool = self.running = False Frame reraise in /usr/lib/python3.13/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.13/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 = [(, HTTPError('500 Server Error: Internal Server Error for url: https://koji.fedoraproject.org/kojihub'), ), ( self.queue = self.queue_get_lock = self.queue_processed = 105 self.queue_put_lock = self.queue_total = 24312 self.threads = [, , , Frame read_packages in /usr/lib/python3.13/site-packages/pungi/phases/pkgset/pkgsets.py at line 195 188 srpm_pool.add(ReaderThread(srpm_pool)) 189 rpm_pool.add(ReaderThread(rpm_pool)) 190 191 # process SRC and NOSRC packages first (see ReaderTread for the 192 # EXCLUDEARCH/EXCLUSIVEARCH hack for noarch packages) 193 self.log_debug("Package set: spawning %s worker threads (SRPMs)" % thread_count) 194 srpm_pool.start() --> 195 srpm_pool.stop() 196 self.log_debug("Package set: worker threads stopped (SRPMs)") 197 198 self.log_debug("Package set: spawning %s worker threads (RPMs)" % thread_count) 199 rpm_pool.start() 200 rpm_pool.stop() 201 self.log_debug("Package set: worker threads stopped (RPMs)") i = 9 rpm_pool = rpms = [({'arch': 'i686', 'build_id': 2413621, 'buildroot_id': 49400902, 'buildtime': 1709351810, 'draft': False, 'epoch': None, 'extra': None, 'id': 37931756, 'metadata_only': False, 'name': 'compiler-rt17- self = self._allow_invalid_sigkeys = False self._invalid_sigkey_rpms = [] self._logger = self.arches = {'x86_64', 'i386', 'athlon', 'ppc64le', 's390x', 'src', 'i686', 'aarch64', 'noarch', 'i586', 'i486'} self.cache_region = self.downloader = self.extra_builds = [] self.extra_tasks = [] self.file_cache = self.invalid_sigkey_rpms = [] self.koji_proxy = self.koji_wrapper = self.name = 'f42' self.old_file_cache = self.packages = {'swayidle', 'uim', 'qmidiarp', 'linuxconsoletools', 'ipvsadm', 'libdb-devel', 'gnome-shell', 'freedink', 'PySolFC-cardsets', 'esmtp', 'xdg-desktop-portal-gtk', 'imsettings-plasma', 'gajim', 'exim', ' self.populate_only_packages = False self.reuse = None self.rpms_by_arch = {'src': [shim-15.8-3.src.rpm, golang-github-quic-0.42.0-1.fc41.src.rpm, mbedtls-2.28.8-1.fc41.src.rpm, compiler-rt17-17.0.6-6.fc41.src.rpm, fwupd-efi-1.6-1.fc41.src.rpm, mumble-1.4.287-5.fc41.src.rpm, self.sigkey_ordering = '105ef944' self.signed_packages_retries = 0 self.signed_packages_wait = 30 self.srpms_by_name = {'shim-15.8-3.src.rpm': shim-15.8-3.src.rpm, 'golang-github-quic-0.42.0-1.fc41.src.rpm': golang-github-quic-0.42.0-1.fc41.src.rpm, 'mbedtls-2.28.8-1.fc41.src.rpm': mbedtls-2.28.8-1.fc41.src.rpm, 'comp srpm_pool = srpms = [({'arch': 'src', 'build_id': 2544558, 'buildroot_id': 53586711, 'buildtime': 1726122191, 'draft': False, 'epoch': None, 'extra': None, 'id': 39997138, 'metadata_only': False, 'name': 'mstflint', 'pay thread_count = 10 Frame populate in /usr/lib/python3.13/site-packages/pungi/phases/pkgset/pkgsets.py at line 712 705 706 if skipped_packages_count: 707 self.log_debug( 708 "Skipped %d packages, not marked as to be " 709 "included in a compose." % skipped_packages_count 710 ) 711 --> 712 result = self.read_packages(result_rpms, result_srpms) 713 714 # Check that after reading the packages, every package that is 715 # included in a compose has the right sigkey. 716 if self._invalid_sigkey_rpms: 717 invalid_sigkey_rpms = [ 718 rpm for rpm in self._invalid_sigkey_rpms if rpm["name"] in self.packages build_id = 1491269 build_info = {'build_id': 2406903, 'completion_time': '2024-02-20 18:13:21.575402+00:00', 'create_event': 136025464, 'creation_event_id': 126536429, 'creation_time': '2024-02-20 18:11:50.262824+00:00', 'draft': Fa build_name = 'Fedora-Astronomy_KDE-Live' builds = [{'build_id': 2655717, 'completion_time': '2025-02-10 06:39:44.806996+00:00', 'create_event': 145930681, 'creation_event_id': 145930349, 'creation_time': '2025-02-10 06:36:07.879140+00:00', 'draft': F builds_by_id = {2655717: {'build_id': 2655717, 'completion_time': '2025-02-10 06:39:44.806996+00:00', 'create_event': 145930681, 'creation_event_id': 145930349, 'creation_time': '2025-02-10 06:36:07.879140+00:00', ' event = 145930929 exclude_build_id = [] extra_builds = [] extra_builds_by_name = {} extra_rpms = [] include_packages = set() inherit = False msg = 'Getting latest RPMs (tag: f42, event: 145930929, inherit: False)' result_rpms = [({'arch': 'i686', 'build_id': 2413621, 'buildroot_id': 49400902, 'buildtime': 1709351810, 'draft': False, 'epoch': None, 'extra': None, 'id': 37931756, 'metadata_only': False, 'name': 'compiler-rt17- result_srpms = [({'arch': 'src', 'build_id': 2544558, 'buildroot_id': 53586711, 'buildtime': 1726122191, 'draft': False, 'epoch': None, 'extra': None, 'id': 39997138, 'metadata_only': False, 'name': 'mstflint', 'pay rpm_info = {'arch': 'src', 'build_id': 2406903, 'buildroot_id': 49183101, 'buildtime': 1708452765, 'draft': False, 'epoch': None, 'extra': None, 'id': 37817306, 'metadata_only': False, 'name': 'shim-unsigned-x64 rpms = [{'arch': 'src', 'build_id': 2544558, 'buildroot_id': 53586711, 'buildtime': 1726122191, 'draft': False, 'epoch': None, 'extra': None, 'id': 39997138, 'metadata_only': False, 'name': 'mstflint', 'payl self = self._allow_invalid_sigkeys = False self._invalid_sigkey_rpms = [] self._logger = self.arches = {'x86_64', 'i386', 'athlon', 'ppc64le', 's390x', 'src', 'i686', 'aarch64', 'noarch', 'i586', 'i486'} self.cache_region = self.downloader = self.extra_builds = [] self.extra_tasks = [] self.file_cache = self.invalid_sigkey_rpms = [] self.koji_proxy = self.koji_wrapper = self.name = 'f42' self.old_file_cache = self.packages = {'swayidle', 'uim', 'qmidiarp', 'linuxconsoletools', 'ipvsadm', 'libdb-devel', 'gnome-shell', 'freedink', 'PySolFC-cardsets', 'esmtp', 'xdg-desktop-portal-gtk', 'imsettings-plasma', 'gajim', 'exim', ' self.populate_only_packages = False self.reuse = None self.rpms_by_arch = {'src': [shim-15.8-3.src.rpm, golang-github-quic-0.42.0-1.fc41.src.rpm, mbedtls-2.28.8-1.fc41.src.rpm, compiler-rt17-17.0.6-6.fc41.src.rpm, fwupd-efi-1.6-1.fc41.src.rpm, mumble-1.4.287-5.fc41.src.rpm, self.sigkey_ordering = '105ef944' self.signed_packages_retries = 0 self.signed_packages_wait = 30 self.srpms_by_name = {'shim-15.8-3.src.rpm': shim-15.8-3.src.rpm, 'golang-github-quic-0.42.0-1.fc41.src.rpm': golang-github-quic-0.42.0-1.fc41.src.rpm, 'mbedtls-2.28.8-1.fc41.src.rpm': mbedtls-2.28.8-1.fc41.src.rpm, 'comp skipped_arches = [] skipped_packages_count = 0 tag = 'f42' Frame populate_global_pkgset in /usr/lib/python3.13/site-packages/pungi/phases/pkgset/sources/source_koji.py at line 911 904 compose, 905 compose_tag, 906 inherit=should_inherit, 907 include_packages=modular_packages, 908 ) 909 910 if pkgset.reuse is None: --> 911 pkgset.populate( 912 compose_tag, 913 # We care about packages as they existed on the specified 914 # event. However, modular content tags are not expected to 915 # change, so the event doesn't matter there. If an exact NSVC 916 # of a module is specified, the code above would happily find 917 # its content tag, but fail here if the content tag doesn't all_arches = {'x86_64', 'i386', 'athlon', 'ppc64le', 's390x', 'src', 'i686', 'aarch64', 'noarch', 'i586', 'i486'} allow_invalid_sigkeys = False compose = compose_tag = 'f42' compose_tags = ['f42'] comps = event = {'id': 145930929, 'ts': 1739171978.790314} exclude_module_ns = [] extra_builds = [] extra_modules = [] extra_tasks = [] group = 'i3' groups = ['fonts', 'base-graphical', 'web-server', 'miraclewm-desktop', 'kde-software-development', 'sugar-desktop', 'editors', 'smb-server', 'haproxy', 'headless-management', 'cloud-bootloader-tools', 'sound- inherit = False inherit_modules = False is_traditional = True koji_wrapper = kwargs = {'extra_builds': [], 'extra_tasks': []} modular_koji_tags = [] modular_packages = set() old_cache_path = '/mnt/koji/compose/branched/Fedora-42-20250209.n.0/work/global/pkgset_f42_file_cache.pickle' packages_to_gather = ['eclipse-nls', 'dracut.*', 'glibc-langpack-*', 'kernel*', 'hyphen-*', 'mythes-*', 'hunspell-*', 'man-pages-*', 'eclipse-nls-*', 'python3.*-debuginfo', 'autocorr-*', '*', 'kde-l10n-*', 'langpacks-*', pkgset = pkgset_koji_tags = ['f42'] pkgsets = [] populate_only_packages_to_gather = False should_inherit = False tag_to_mmd = {} variant = Variant(id="Workstation", name="Workstation", type="variant", parent=None) variant_scratch_modules = [] variant_tags = {Variant(id="Cloud", name="Cloud", type="variant", parent=None): ['f42'], Variant(id="Container", name="Container", type="variant", parent=None): ['f42'], Variant(id="Everything", name="Everything", t Frame get_pkgset_from_koji in /usr/lib/python3.13/site-packages/pungi/phases/pkgset/sources/source_koji.py at line 202 195 self.koji_wrapper = pungi.wrappers.kojiwrapper.KojiWrapper(compose) 196 package_sets = get_pkgset_from_koji(self.compose, self.koji_wrapper) 197 return (package_sets, self.compose.koji_downloader.path_prefix) 198 199 200 def get_pkgset_from_koji(compose, koji_wrapper): 201 event_info = get_koji_event_info(compose, koji_wrapper) --> 202 return populate_global_pkgset(compose, koji_wrapper, event_info) 203 204 205 def _add_module_to_variant( 206 koji_wrapper, 207 variant, 208 build, compose = event_info = {'id': 145930929, 'ts': 1739171978.790314} koji_wrapper = Frame __call__ in /usr/lib/python3.13/site-packages/pungi/phases/pkgset/sources/source_koji.py at line 196 189 return modules 190 191 192 class PkgsetSourceKoji(pungi.phases.pkgset.source.PkgsetSourceBase): 193 def __call__(self): 194 compose = self.compose 195 self.koji_wrapper = pungi.wrappers.kojiwrapper.KojiWrapper(compose) --> 196 package_sets = get_pkgset_from_koji(self.compose, self.koji_wrapper) 197 return (package_sets, self.compose.koji_downloader.path_prefix) 198 199 200 def get_pkgset_from_koji(compose, koji_wrapper): 201 event_info = get_koji_event_info(compose, koji_wrapper) 202 return populate_global_pkgset(compose, koji_wrapper, event_info) compose = self = self.compose = self.koji_wrapper = Frame run in /usr/lib/python3.13/site-packages/pungi/phases/pkgset/__init__.py at line 36 29 self.path_prefix = None 30 31 def run(self): 32 from . import sources 33 34 SourceClass = sources.ALL_SOURCES[self.compose.conf["pkgset_source"].lower()] 35 --> 36 self.package_sets, self.path_prefix = SourceClass(self.compose)() 37 38 def validate(self): 39 extra_tasks = self.compose.conf.get("pkgset_koji_scratch_tasks", None) 40 sigkeys = tuple(self.compose.conf["sigkeys"] or [None]) 41 if extra_tasks is not None and None not in sigkeys and "" not in sigkeys: 42 raise ValueError( SourceClass = self = self._skipped = False self._start_time = 1739171726.4531777 self.compose = self.finished = False self.msg = '---------- PHASE: PKGSET ----------' self.name = 'pkgset' self.package_sets = [] self.path_prefix = None self.used_patterns = None sources = Frame start in /usr/lib/python3.13/site-packages/pungi/phases/base.py at line 66 59 if self._skipped: 60 self.compose.log_warning("[SKIP ] %s" % self.msg) 61 self.finished = True 62 return 63 self._start_time = time.time() 64 self.compose.log_info("[BEGIN] %s" % self.msg) 65 self.compose.notifier.send("phase-start", phase_name=self.name) --> 66 self.run() 67 68 def get_config_block(self, variant, arch=None): 69 """In config for current phase, find a block corresponding to given 70 variant and arch. The arch should be given if and only if the config 71 uses variant/arch mapping. 72 """ self = self._skipped = False self._start_time = 1739171726.4531777 self.compose = self.finished = False self.msg = '---------- PHASE: PKGSET ----------' self.name = 'pkgset' self.package_sets = [] self.path_prefix = None self.used_patterns = None Frame run_compose in /usr/lib/python3.13/site-packages/pungi/scripts/pungi_koji.py at line 470 463 compose.log_error(i) 464 print(i) 465 raise RuntimeError("Configuration is not valid") 466 467 init_phase.start() 468 init_phase.stop() 469 --> 470 pkgset_phase.start() 471 pkgset_phase.stop() 472 473 # WEAVER phase - launches other phases which can safely run in parallel 474 essentials_schema = ( 475 buildinstall_phase, 476 (gather_phase, createrepo_phase), buildinstall_phase = compose = config_copy_path = '/mnt/koji/compose/branched/Fedora-42-20250210.n.0/logs/global/config-copy' config_dump_full = '/mnt/koji/compose/branched/Fedora-42-20250210.n.0/logs/global/config-dump.global.log' config_file = '/tmp/branched.OcXdal/pungi-fedora/multilib.conf' create_latest_link = True createiso_phase = createrepo_phase = errors = [] extra_isos_phase = extrafiles_phase = f = <_io.TextIOWrapper name='/mnt/koji/compose/branched/Fedora-42-20250210.n.0/logs/global/config-dump.global.log' mode='w' encoding='utf-8'> gather_phase = image_build_phase = image_checksum_phase = image_container_phase = init_phase = installed_pkgs_log = '/mnt/koji/compose/branched/Fedora-42-20250210.n.0/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 = Frame main in /usr/lib/python3.13/site-packages/pungi/scripts/pungi_koji.py at line 352 345 logger.error("Config validation failed with the error: %s" % error) 346 fail_to_start("Config validation failed", errors=errors) 347 sys.exit(1) 348 349 notifier.compose = compose 350 COMPOSE = compose 351 try: --> 352 run_compose( 353 compose, 354 create_latest_link=create_latest_link, 355 latest_link_status=latest_link_status, 356 latest_link_components=latest_link_components, 357 ) 358 except UnsignedPackagesError: Compose = PHASES_NAMES_MODIFIED = ['buildinstall', 'createiso', 'createrepo', 'extra_files', 'extra_isos', 'gather', 'image_build', 'image_checksum', 'image_container', 'init', 'kiwibuild', 'live_media', 'osbs', 'osbuild', 'ostree_con abort = .abort at 0x7f1c36469440> compose = compose_dir = '/mnt/koji/compose/branched/Fedora-42-20250210.n.0' compose_type = 'nightly' conf = {'variants_file': 'variants-fedora.xml', 'tree_arches': ['aarch64', 'ppc64le', 's390x', 'x86_64'], 'hashed_directories': True, 'runroot_channel': 'compose', 'runroot_tag': 'f42-build', 'pkgset_source' create_latest_link = True errors = [] fail_to_start = .fail_to_start at 0x7f1c364693a0> group = kobo = latest_link_components = -1 latest_link_status = None logger = notifier = opts = Namespace(target_dir='/mnt/koji/compose/branched', compose_dir=None, label=None, no_label=False, supported=False, old_composes=['/mnt/koji/compose/branched'], config='/tmp/branched.OcXdal/pungi-fedora 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: KIWI_ISO_VOLID_VERSION.' warnings = ['WARNING: Unrecognized config option: KIWI_ISO_VOLID_VERSION.'] Frame cli_main in /usr/lib/python3.13/site-packages/pungi/scripts/pungi_koji.py at line 653 646 647 648 def cli_main(): 649 signal.signal(signal.SIGINT, sigterm_handler) 650 signal.signal(signal.SIGTERM, sigterm_handler) 651 652 try: --> 653 main() 654 except (Exception, KeyboardInterrupt) as ex: 655 if COMPOSE: 656 COMPOSE.log_error("Compose run failed: %s" % ex) 657 COMPOSE.traceback(show_locals=getattr(ex, "show_locals", True)) 658 COMPOSE.log_critical("Compose failed: %s" % COMPOSE.topdir) 659 COMPOSE.write_status("DOOMED") ex = HTTPError('500 Server Error: Internal Server Error for url: https://koji.fedoraproject.org/kojihub')