Traceback (most recent call last): File "/usr/lib/python3.6/site-packages/urllib3/connection.py", line 162, in _new_conn (self._dns_host, self.port), self.timeout, **extra_kw) File "/usr/lib/python3.6/site-packages/urllib3/util/connection.py", line 80, in create_connection raise err File "/usr/lib/python3.6/site-packages/urllib3/util/connection.py", line 70, in create_connection sock.connect(sa) TimeoutError: [Errno 110] Connection timed out During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.6/site-packages/urllib3/connectionpool.py", line 600, in urlopen chunked=chunked) File "/usr/lib/python3.6/site-packages/urllib3/connectionpool.py", line 343, in _make_request self._validate_conn(conn) File "/usr/lib/python3.6/site-packages/urllib3/connectionpool.py", line 839, in _validate_conn conn.connect() File "/usr/lib/python3.6/site-packages/urllib3/connection.py", line 315, in connect conn = self._new_conn() File "/usr/lib/python3.6/site-packages/urllib3/connection.py", line 171, in _new_conn self, "Failed to establish a new connection: %s" % e) urllib3.exceptions.NewConnectionError: : Failed to establish a new connection: [Errno 110] Connection timed out During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.6/site-packages/requests/adapters.py", line 449, in send timeout=timeout File "/usr/lib/python3.6/site-packages/urllib3/connectionpool.py", line 638, in urlopen _stacktrace=sys.exc_info()[2]) File "/usr/lib/python3.6/site-packages/urllib3/util/retry.py", line 399, in increment raise MaxRetryError(_pool, url, error or ResponseError(cause)) urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='build.opencloudos.tech', port=443): Max retries exceeded with url: /kojihub (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 110] Connection timed out',)) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.6/site-packages/pungi/scripts/pungi_koji.py", line 654, in cli_main main() File "/usr/lib/python3.6/site-packages/pungi/scripts/pungi_koji.py", line 343, in main latest_link_components=latest_link_components, File "/usr/lib/python3.6/site-packages/pungi/scripts/pungi_koji.py", line 500, in run_compose pkgset_phase.start() File "/usr/lib/python3.6/site-packages/pungi/phases/base.py", line 63, in start self.run() File "/usr/lib/python3.6/site-packages/pungi/phases/pkgset/__init__.py", line 36, in run self.package_sets, self.path_prefix = SourceClass(self.compose)() File "/usr/lib/python3.6/site-packages/pungi/phases/pkgset/sources/source_koji.py", line 194, in __call__ self.compose, self.koji_wrapper, path_prefix File "/usr/lib/python3.6/site-packages/pungi/phases/pkgset/sources/source_koji.py", line 201, in get_pkgset_from_koji return populate_global_pkgset(compose, koji_wrapper, path_prefix, event_info) File "/usr/lib/python3.6/site-packages/pungi/phases/pkgset/sources/source_koji.py", line 862, in populate_global_pkgset include_packages=modular_packages, File "/usr/lib/python3.6/site-packages/pungi/phases/pkgset/pkgsets.py", line 752, in try_to_reuse afterEvent=old_koji_event, File "/usr/lib/python3.6/site-packages/koji/__init__.py", line 2350, in __call__ return self.__func(self.__name, args, opts) File "/usr/lib/python3.6/site-packages/koji/__init__.py", line 2829, in _callMethod return self._sendCall(handler, headers, request) File "/usr/lib/python3.6/site-packages/koji/__init__.py", line 2747, in _sendCall raise e File "/usr/lib/python3.6/site-packages/koji/__init__.py", line 2743, in _sendCall return self._sendOneCall(handler, headers, request) File "/usr/lib/python3.6/site-packages/koji/__init__.py", line 2790, in _sendOneCall r = self.rsession.post(handler, **callopts) File "/usr/lib/python3.6/site-packages/requests/sessions.py", line 581, in post return self.request('POST', url, data=data, json=json, **kwargs) File "/usr/lib/python3.6/site-packages/requests/sessions.py", line 533, in request resp = self.send(prep, **send_kwargs) File "/usr/lib/python3.6/site-packages/requests/sessions.py", line 646, in send r = adapter.send(request, **kwargs) File "/usr/lib/python3.6/site-packages/requests/adapters.py", line 516, in send raise ConnectionError(e, request=request) requests.exceptions.ConnectionError: HTTPSConnectionPool(host='build.opencloudos.tech', port=443): Max retries exceeded with url: /kojihub (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 110] Connection timed out',)) Frame send in /usr/lib/python3.6/site-packages/requests/adapters.py at line 516 509 if isinstance(e.reason, _ProxyError): 510 raise ProxyError(e, request=request) 511 512 if isinstance(e.reason, _SSLError): 513 # This branch is for urllib3 v1.22 and later. 514 raise SSLError(e, request=request) 515 --> 516 raise ConnectionError(e, request=request) 517 518 except ClosedPoolError as e: 519 raise ConnectionError(e, request=request) 520 521 except _ProxyError as e: 522 raise ProxyError(e) cert = None chunked = False conn = proxies = OrderedDict() request = self = self._pool_block = False self._pool_connections = 10 self._pool_maxsize = 10 self.config = {} self.max_retries = Retry(total=0, connect=None, read=False, redirect=None, status=None) self.poolmanager = self.proxy_manager = {} stream = True timeout = url = '/kojihub' verify = True Frame send in /usr/lib/python3.6/site-packages/requests/sessions.py at line 646 639 # Get the appropriate adapter to use 640 adapter = self.get_adapter(url=request.url) 641 642 # Start time (approximately) of the request 643 start = preferred_clock() 644 645 # Send the request --> 646 r = adapter.send(request, **kwargs) 647 648 # Total elapsed time of the request (approximately) 649 elapsed = preferred_clock() - start 650 r.elapsed = timedelta(seconds=elapsed) 651 652 # Response manipulation hooks adapter = allow_redirects = True hooks = {'response': []} kwargs = {'timeout': 43200, 'verify': True, 'proxies': OrderedDict(), 'stream': True, 'cert': None} request = self = self.adapters = OrderedDict([('https://', ), ('http://', )]) self.auth = None self.cert = None self.cookies = self.headers = {'User-Agent': 'python-requests/2.22.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} self.hooks = {'response': []} self.max_redirects = 30 self.params = {} self.proxies = {} self.stream = False self.trust_env = True self.verify = True start = 1748363494.7025027 stream = True Frame request in /usr/lib/python3.6/site-packages/requests/sessions.py at line 533 526 527 # Send the request. 528 send_kwargs = { 529 'timeout': timeout, 530 'allow_redirects': allow_redirects, 531 } 532 send_kwargs.update(settings) --> 533 resp = self.send(prep, **send_kwargs) 534 535 return resp 536 537 def get(self, url, **kwargs): 538 r"""Sends a GET request. Returns :class:`Response` object. 539 allow_redirects = True auth = None cert = None cookies = None data = b"\n\nqueryHistory\n\n\n\n\ntables\n\ntag_listing proxies = {} req = self = self.adapters = OrderedDict([('https://', ), ('http://', )]) self.auth = None self.cert = None self.cookies = self.headers = {'User-Agent': 'python-requests/2.22.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} self.hooks = {'response': []} self.max_redirects = 30 self.params = {} self.proxies = {} self.stream = False self.trust_env = True self.verify = True send_kwargs = {'timeout': 43200, 'allow_redirects': True, 'verify': True, 'proxies': OrderedDict(), 'stream': True, 'cert': None} settings = {'verify': True, 'proxies': OrderedDict(), 'stream': True, 'cert': None} stream = True timeout = 43200 url = 'https://build.opencloudos.tech/kojihub' verify = None Frame post in /usr/lib/python3.6/site-packages/requests/sessions.py at line 581 574 :param data: (optional) Dictionary, list of tuples, bytes, or file-like 575 object to send in the body of the :class:`Request`. 576 :param json: (optional) json to send in the body of the :class:`Request`. 577 :param \*\*kwargs: Optional arguments that ``request`` takes. 578 :rtype: requests.Response 579 """ 580 --> 581 return self.request('POST', url, data=data, json=json, **kwargs) 582 583 def put(self, url, data=None, **kwargs): 584 r"""Sends a PUT request. Returns :class:`Response` object. 585 586 :param url: URL for the new :class:`Request` object. 587 :param data: (optional) Dictionary, list of tuples, bytes, or file-like data = b"\n\nqueryHistory\n\n\n\n\ntables\n\ntag_listing self.adapters = OrderedDict([('https://', ), ('http://', )]) self.auth = None self.cert = None self.cookies = self.headers = {'User-Agent': 'python-requests/2.22.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} self.hooks = {'response': []} self.max_redirects = 30 self.params = {} self.proxies = {} self.stream = False self.trust_env = True self.verify = True url = 'https://build.opencloudos.tech/kojihub' Frame _sendOneCall in /usr/lib/python3.6/site-packages/koji/__init__.py at line 2790 2783 # convert to hex-string 2784 _val = '0x' + _val.hex() 2785 if len(_val) > 1024: 2786 _val = _val[:1024] + '...' 2787 self.logger.debug("%s: %r" % (_key, _val)) 2788 with warnings.catch_warnings(): 2789 warnings.simplefilter("ignore") --> 2790 r = self.rsession.post(handler, **callopts) 2791 r.raise_for_status() 2792 try: 2793 ret = self._read_xmlrpc_response(r) 2794 finally: 2795 r.close() 2796 return ret auth = None callopts = {'headers': {'User-Agent': 'koji/1', 'Content-Type': 'text/xml', 'Content-Length': '608'}, 'data': b"\n\nqueryHistory\n\n\n\n\nqueryHistory\n\n\n\n\ntables\n\ntag_listing self._apidoc = None self._calls = [] self.authtype = None self.baseurl = 'https://build.opencloudos.tech/kojihub' self.callnum = None self.logged_in = False 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': '', 'use_fast_ self.retries = 1 self.rsession = self.sinfo = None timeout = 43200 verify = '' Frame _sendCall in /usr/lib/python3.6/site-packages/koji/__init__.py at line 2743 2736 exc.request.url = self._sanitize_url(exc.request.url) 2737 return exc 2738 2739 def _sendCall(self, handler, headers, request): 2740 # handle expired connections 2741 for i in (0, 1): 2742 try: --> 2743 return self._sendOneCall(handler, headers, request) 2744 except Exception as e: 2745 e = self._sanitize_connection_error(e) 2746 if i or not is_conn_error(e): 2747 raise e 2748 self.logger.debug("Connection Error: %s", e) 2749 self.new_session() handler = 'https://build.opencloudos.tech/kojihub' headers = [('User-Agent', 'koji/1'), ('Content-Type', 'text/xml'), ('Content-Length', '608')] i = 1 request = b"\n\nqueryHistory\n\n\n\n\ntables\n\ntag_listing self._apidoc = None self._calls = [] self.authtype = None self.baseurl = 'https://build.opencloudos.tech/kojihub' self.callnum = None self.logged_in = False 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': '', 'use_fast_ self.retries = 1 self.rsession = self.sinfo = None Frame _sendCall in /usr/lib/python3.6/site-packages/koji/__init__.py at line 2747 2740 # handle expired connections 2741 for i in (0, 1): 2742 try: 2743 return self._sendOneCall(handler, headers, request) 2744 except Exception as e: 2745 e = self._sanitize_connection_error(e) 2746 if i or not is_conn_error(e): --> 2747 raise e 2748 self.logger.debug("Connection Error: %s", e) 2749 self.new_session() 2750 2751 def _sendOneCall(self, handler, headers, request): 2752 headers = dict(headers) 2753 callopts = { handler = 'https://build.opencloudos.tech/kojihub' headers = [('User-Agent', 'koji/1'), ('Content-Type', 'text/xml'), ('Content-Length', '608')] i = 1 request = b"\n\nqueryHistory\n\n\n\n\ntables\n\ntag_listing self._apidoc = None self._calls = [] self.authtype = None self.baseurl = 'https://build.opencloudos.tech/kojihub' self.callnum = None self.logged_in = False 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': '', 'use_fast_ self.retries = 1 self.rsession = self.sinfo = None Frame _callMethod in /usr/lib/python3.6/site-packages/koji/__init__.py at line 2829 2822 self.retries = 0 2823 max_retries = self.opts.get('max_retries', 30) 2824 interval = self.opts.get('retry_interval', 20) 2825 while True: 2826 tries += 1 2827 self.retries += 1 2828 try: --> 2829 return self._sendCall(handler, headers, request) 2830 # basically, we want to retry on most errors, with a few exceptions 2831 # - faults (this means the call completed and failed) 2832 # - SystemExit, KeyboardInterrupt 2833 # note that, for logged-in sessions the server should tell us (via a RetryError 2834 # fault) if the call cannot be retried. For non-logged-in sessions, all calls 2835 # should be read-only and hence retryable. args = handler = 'https://build.opencloudos.tech/kojihub' headers = [('User-Agent', 'koji/1'), ('Content-Type', 'text/xml'), ('Content-Length', '608')] interval = 20 kwargs = {'tables': ['tag_listing', 'tag_inheritance'], 'tag': 'module-subversion-1.14-8060020221210043629-ed5bdeb0', 'afterEvent': 608117} max_retries = 30 name = 'queryHistory' request = b"\n\nqueryHistory\n\n\n\n\ntables\n\ntag_listing self._apidoc = None self._calls = [] self.authtype = None self.baseurl = 'https://build.opencloudos.tech/kojihub' self.callnum = None self.logged_in = False 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': '', 'use_fast_ self.retries = 1 self.rsession = self.sinfo = None tb_str = 'Traceback (most recent call last):\n File "/usr/lib/python3.6/site-packages/urllib3/connection.py", line 162, in _new_conn\n (self._dns_host, self.port), self.timeout, **extra_kw)\n File "/usr/l tries = 1 Frame __call__ in /usr/lib/python3.6/site-packages/koji/__init__.py at line 2350 2343 self.__name = name 2344 self.__session = session 2345 2346 def __getattr__(self, name): 2347 return type(self)(self.__func, "%s.%s" % (self.__name, name)) 2348 2349 def __call__(self, *args, **opts): --> 2350 return self.__func(self.__name, args, opts) 2351 2352 @property 2353 def __doc__(self): 2354 if self.__session is None: 2355 # There could be potentially session-less object 2356 return None args = opts = {'tables': ['tag_listing', 'tag_inheritance'], 'tag': 'module-subversion-1.14-8060020221210043629-ed5bdeb0', 'afterEvent': 608117} self = self._VirtualMethod__name = 'queryHistory' self._VirtualMethod__session = Frame try_to_reuse in /usr/lib/python3.6/site-packages/pungi/phases/pkgset/pkgsets.py at line 752 745 self.log_debug( 746 "Koji event doesn't match, querying changes between event %d and %d" 747 % (old_koji_event, koji_event) 748 ) 749 changed = self.koji_proxy.queryHistory( 750 tables=["tag_listing", "tag_inheritance"], 751 tag=tag, --> 752 afterEvent=old_koji_event, 753 ) 754 if changed["tag_listing"]: 755 self.log_debug("Builds under tag %s changed. Can't reuse." % tag) 756 return False 757 if changed["tag_inheritance"]: 758 self.log_debug("Tag inheritance %s changed. Can't reuse." % tag) compose = event_file = '/mnt/koji/compose/8/8.10/OpenCloudOS-8.10-updates-20250528.0/work/global/koji-event' include_packages = {('subversion', 'src'), ('libserf-debugsource', 'aarch64'), ('libserf', 'src'), ('subversion-debuginfo', 'aarch64'), ('libserf', 'x86_64'), ('subversion-gnome-debuginfo', 'aarch64'), ('subversion-libs inherit = False koji_event = 608604 old_event_file = '/mnt/koji/compose/8/8.10/OpenCloudOS-8.10-updates-20250525.0/work/global/koji-event' old_koji_event = 608117 self = self._allow_invalid_sigkeys = False self._invalid_sigkey_rpms = [] self._logger = self.arches = {'i486', 'i386', 'i686', 'i586', 'aarch64', 'noarch', 'src', 'athlon', 'x86_64'} self.cache_region = self.extra_builds = [] self.extra_tasks = [] self.file_cache = self.invalid_sigkey_rpms = [] self.koji_proxy = self.koji_wrapper = self.name = 'module-subversion-1.14-8060020221210043629-ed5bdeb0' self.old_file_cache = self.packages = {'binutils', 'libnl3-devel', 'mpfr-devel', 'libepubgen-devel', 'google-noto-sans-ethiopic-fonts', 'iptables-libs', 'tmpwatch', 'libusbx', 'mingw32-zlib-static', 'boost-mpich', 'srp_daemon', 'python3-j self.populate_only_packages = False self.reuse = None self.rpms_by_arch = {} self.sigkey_ordering = '56DBBAE9' self.signed_packages_retries = 1 self.signed_packages_wait = 30 self.srpms_by_name = {} tag = 'module-subversion-1.14-8060020221210043629-ed5bdeb0' Frame populate_global_pkgset in /usr/lib/python3.6/site-packages/pungi/phases/pkgset/sources/source_koji.py at line 862 855 nevra = parse_nvra(rpm_nevra) 856 modular_packages.add((nevra["name"], nevra["arch"])) 857 858 pkgset.try_to_reuse( 859 compose, 860 compose_tag, 861 inherit=should_inherit, --> 862 include_packages=modular_packages, 863 ) 864 865 if pkgset.reuse is None: 866 pkgset.populate( 867 compose_tag, 868 event, all_arches = {'i486', 'i386', 'i686', 'i586', 'aarch64', 'noarch', 'src', 'athlon', 'x86_64'} allow_invalid_sigkeys = False arch_modules = {'virt:rhel:8100020240925032509:2a16b704': , 'varnish:6:8080020240409032207:47be25e3': compose_tag = 'module-subversion-1.14-8060020221210043629-ed5bdeb0' compose_tags = ['module-virt-rhel-8100020240925032509-2a16b704', 'module-varnish-6-8080020240409032207-47be25e3', 'module-swig-4.1-8080020230714085744-47be25e3', 'module-swig-4.0-8050020220620021003-c7643c7d', 'modu comps = event = {'id': 608604, 'ts': 1748352726.531384} exclude_module_ns = [] extra_builds = [] extra_modules = [] extra_tasks = [] group = 'postgresql-client' groups = ['headless-management', 'office-suite', 'fonts', 'gnome-desktop', 'hardware-support', 'web-server', 'standard', 'graphical-admin-tools', 'dial-up', 'file-server', 'virtualization-client', 'platform-vm inherit = True inherit_modules = False is_traditional = False koji_tag = 'module-389-ds-1.4-8100020240911035438-e445c0ec' koji_wrapper = modular_koji_tags = [] modular_packages = {('subversion', 'src'), ('libserf-debugsource', 'aarch64'), ('libserf', 'src'), ('subversion-debuginfo', 'aarch64'), ('libserf', 'x86_64'), ('subversion-gnome-debuginfo', 'aarch64'), ('subversion-libs modular_tag = 'module-javapackages-tools-201801-8050020220618102520-cb5037f2' module = nevra = {'name': 'utf8proc-debugsource', 'version': '2.6.1', 'release': '3.module+oc8.6.0+385+a9ba4d99', 'epoch': '0', 'arch': 'x86_64', 'src': False} nsvc = 'javapackages-tools:201801:8050020220618102520:cb5037f2' old_cache_path = '/mnt/koji/compose/8/8.10/OpenCloudOS-8.10-updates-20250525.0/work/global/pkgset_module-subversion-1.14-8060020221210043629-ed5bdeb0_file_cache.pickle' packages_to_gather = ['binutils', 'libnl3-devel', 'hyphen-el', 'authselect-compat', 'elfutils-default-yama-scope', 'numatop', 'mpfr-devel', 'google-noto-sans-bengali-ui-fonts', 'google-noto-sans-syriac-western-fonts', 'li path_prefix = '/mnt/koji/' pkgset = pkgset_koji_tags = ['dist-oc8-compose'] pkgsets = [, , , Frame get_pkgset_from_koji in /usr/lib/python3.6/site-packages/pungi/phases/pkgset/sources/source_koji.py at line 201 194 self.compose, self.koji_wrapper, path_prefix 195 ) 196 return (package_sets, path_prefix) 197 198 199 def get_pkgset_from_koji(compose, koji_wrapper, path_prefix): 200 event_info = get_koji_event_info(compose, koji_wrapper) --> 201 return populate_global_pkgset(compose, koji_wrapper, path_prefix, event_info) 202 203 204 def _add_module_to_variant( 205 koji_wrapper, 206 variant, 207 build, compose = event_info = {'id': 608604, 'ts': 1748352726.531384} koji_wrapper = path_prefix = '/mnt/koji/' Frame __call__ in /usr/lib/python3.6/site-packages/pungi/phases/pkgset/sources/source_koji.py at line 194 187 def __call__(self): 188 compose = self.compose 189 koji_profile = compose.conf["koji_profile"] 190 self.koji_wrapper = pungi.wrappers.kojiwrapper.KojiWrapper(koji_profile) 191 # path prefix must contain trailing '/' 192 path_prefix = self.koji_wrapper.koji_module.config.topdir.rstrip("/") + "/" 193 package_sets = get_pkgset_from_koji( --> 194 self.compose, self.koji_wrapper, path_prefix 195 ) 196 return (package_sets, path_prefix) 197 198 199 def get_pkgset_from_koji(compose, koji_wrapper, path_prefix): 200 event_info = get_koji_event_info(compose, koji_wrapper) compose = koji_profile = 'koji' path_prefix = '/mnt/koji/' self = self.compose = self.koji_wrapper = Frame run in /usr/lib/python3.6/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.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.6/site-packages/pungi/phases/base.py at line 63 56 self._skipped = self.skip() 57 if self._skipped: 58 self.compose.log_warning("[SKIP ] %s" % self.msg) 59 self.finished = True 60 return 61 self.compose.log_info("[BEGIN] %s" % self.msg) 62 self.compose.notifier.send("phase-start", phase_name=self.name) --> 63 self.run() 64 65 def get_config_block(self, variant, arch=None): 66 """In config for current phase, find a block corresponding to given 67 variant and arch. The arch should be given if and only if the config 68 uses variant/arch mapping. 69 """ self = self._skipped = False 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.6/site-packages/pungi/scripts/pungi_koji.py at line 500 493 break 494 else: 495 print("Not in RV_SPECAIL") 496 497 init_phase.start() 498 init_phase.stop() 499 --> 500 pkgset_phase.start() 501 pkgset_phase.stop() 502 503 # WEAVER phase - launches other phases which can safely run in parallel 504 essentials_schema = ( 505 buildinstall_phase, 506 (gather_phase, createrepo_phase), buildinstall_phase = compose = config_copy_path = '/mnt/koji/compose/8/8.10/OpenCloudOS-8.10-updates-20250528.0/logs/global/config-copy' config_dump_full = '/mnt/koji/compose/8/8.10/OpenCloudOS-8.10-updates-20250528.0/logs/global/config-dump.global.log' config_file = '/root/opencloudos/compose/8/pungi-opencloudos-8.10-origin/opencloudos/override.conf' create_latest_link = True createiso_phase = createrepo_phase = distro = 'NewDistro' errors = [] extra_isos_phase = extrafiles_phase = f = <_io.TextIOWrapper name='/mnt/koji/compose/8/8.10/OpenCloudOS-8.10-updates-20250528.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 = latest_link_components = -1 latest_link_status = None liveimages_phase = livemedia_phase = major_ver = '7' major_version = '8' osbs_phase = osbuild_phase = ostree_installer_phase = ostree_phase = phase = pkgset_phase = pungi = release_name = 'OpenCloudOS' release_version = '8.10' repoclosure_phase = test_phase = Frame main in /usr/lib/python3.6/site-packages/pungi/scripts/pungi_koji.py at line 343 336 notifier.compose = compose 337 COMPOSE = compose 338 try: 339 run_compose( 340 compose, 341 create_latest_link=create_latest_link, 342 latest_link_status=latest_link_status, --> 343 latest_link_components=latest_link_components, 344 ) 345 except UnsignedPackagesError: 346 # There was an unsigned package somewhere. It is not safe to reuse any 347 # package set from this compose (since we could leak the unsigned 348 # package). Let's make sure all reuse files are deleted. 349 for fp in glob.glob(compose.paths.work.pkgset_reuse_file("*")): Compose = PHASES_NAMES_MODIFIED = ['buildinstall', 'createiso', 'createrepo', 'extra_files', 'extra_isos', 'gather', 'image_build', 'image_checksum', 'image_container', 'init', 'live_images', 'live_media', 'osbs', 'osbuild', 'ostree', abort = .abort at 0x7f6079e90048> compose = compose_dir = '/mnt/koji/compose/8/8.10/OpenCloudOS-8.10-updates-20250528.0' compose_type = 'production' conf = {'RELEASE_NAME': 'OpenCloudOS', 'RELEASE_SHORT': 'OpenCloudOS', 'RELEASE_VERSION': '8.10', 'PKGSET_KOJI_TAG': 'dist-oc8-compose', 'PKGSET_KOJI_MODULE_TAG': 'dist-oc8-module-compose', 'RUNROOT_CHANNEL' create_latest_link = True errors = [] fail_to_start = .fail_to_start at 0x7f6079e86f28> group = kobo = latest_link_components = -1 latest_link_status = None logger = notifier = opts = Namespace(compose_dir=None, compose_type='production', config='/root/opencloudos/compose/8/pungi-opencloudos-8.10-origin/oc-updates.conf', just_phase=[], koji_event=None, label='RC-8.10', latest_link_ parser = ArgumentParser(prog='pungi-koji', usage=None, description=None, formatter_class=, conflict_handler='error', add_help=True) productmd = pungi = warning = 'WARNING: Unrecognized config option: VERSION.' warnings = ["WARNING: Config option runroot was removed and has no effect; remove it. Please specify 'runroot_method' if you want to enable runroot, otherwise run things locally.", 'WARNING: Config option bootab Frame cli_main in /usr/lib/python3.6/site-packages/pungi/scripts/pungi_koji.py at line 654 647 648 649 def cli_main(): 650 signal.signal(signal.SIGINT, sigterm_handler) 651 signal.signal(signal.SIGTERM, sigterm_handler) 652 653 try: --> 654 main() 655 except (Exception, KeyboardInterrupt) as ex: 656 if COMPOSE: 657 tb_path = COMPOSE.paths.log.log_file("global", "traceback") 658 COMPOSE.log_error("Compose run failed: %s" % ex) 659 COMPOSE.log_error("Extended traceback in: %s" % tb_path) 660 COMPOSE.log_critical("Compose failed: %s" % COMPOSE.topdir) ex = ConnectionError(MaxRetryError("HTTPSConnectionPool(host='build.opencloudos.tech', port=443): Max retries exceeded with url: /kojihub (Caused by NewConnectionError(' kobo = tb_path = '/mnt/koji/compose/8/8.10/OpenCloudOS-8.10-updates-20250528.0/logs/global/traceback.global.log'