01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:12] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:12] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:12] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:12] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:12] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:12] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:14:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:14:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:14:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:14:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:14:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:12] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:14:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:14:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:14:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:14:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:14:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:15:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:15:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:12] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:14:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:14:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:14:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:14:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:14:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:15:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:15:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:34 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:35 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:35 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:35 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:35 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:02] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:06 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:12] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:14:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:14:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:14:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:14:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:14:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:15:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:15:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:34 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:35 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:35 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:35 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:35 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:02] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:06 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:08 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:10 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:10 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:10 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:10 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:36] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:40 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:12] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:14:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:14:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:14:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:14:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:14:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:15:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:15:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:34 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:35 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:35 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:35 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:35 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:02] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:06 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:08 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:10 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:10 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:10 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:10 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:36] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:40 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:11] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:12] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:14:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:14:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:14:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:14:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:14:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:15:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:15:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:34 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:35 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:35 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:35 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:35 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:02] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:06 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:08 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:10 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:10 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:10 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:10 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:36] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:40 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:11] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:12] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:14:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:14:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:14:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:14:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:14:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:15:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:15:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:34 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:35 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:35 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:35 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:35 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:02] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:06 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:08 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:10 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:10 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:10 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:10 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:36] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:40 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:11] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:18:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:18:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:12] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:14:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:14:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:14:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:14:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:14:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:15:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:15:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:34 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:35 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:35 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:35 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:35 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:02] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:06 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:08 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:10 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:10 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:10 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:10 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:36] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:40 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:11] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:18:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:18:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:18:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:18:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:18:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:18:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:18:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:18:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:18:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:18:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:18:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:12] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:14:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:14:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:14:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:14:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:14:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:15:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:15:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:34 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:35 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:35 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:35 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:35 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:02] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:06 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:08 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:10 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:10 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:10 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:10 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:36] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:40 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:11] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:18:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:18:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:18:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:18:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:18:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:18:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:18:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:18:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:18:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:18:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:18:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:18:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:18:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:18:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:18:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:18:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:18:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:18:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:19:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:19:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:12] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:14:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:14:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:14:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:14:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:14:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:15:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:15:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:34 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:35 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:35 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:35 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:35 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:02] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:06 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:08 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:10 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:10 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:10 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:10 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:36] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:40 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:11] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:18:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:18:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:18:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:18:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:18:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:18:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:18:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:18:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:18:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:18:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:18:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:18:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:18:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:18:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:18:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:18:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:18:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:18:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:19:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:19:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:19:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:19:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:19:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:19:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:19:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:19:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:19:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:19:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:19:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:12] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:14:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:14:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:14:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:14:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:14:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:15:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:15:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:34 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:35 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:35 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:35 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:35 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:02] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:06 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:08 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:10 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:10 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:10 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:10 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:36] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:40 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:11] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:18:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:18:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:18:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:18:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:18:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:18:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:18:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:18:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:18:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:18:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:18:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:18:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:18:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:18:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:18:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:18:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:18:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:18:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:19:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:19:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:19:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:19:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:19:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:19:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:19:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:19:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:19:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:19:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:19:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:20:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:20:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:20:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:20:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:20:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:20:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:20:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:20:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:20:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:12] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:14:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:14:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:14:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:14:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:14:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:15:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:15:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:34 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:35 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:35 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:35 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:35 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:02] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:06 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:08 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:10 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:10 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:10 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:10 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:36] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:40 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:11] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:18:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:18:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:18:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:18:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:18:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:18:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:18:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:18:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:18:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:18:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:18:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:18:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:18:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:18:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:18:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:18:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:18:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:18:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:19:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:19:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:19:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:19:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:19:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:19:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:19:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:19:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:19:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:19:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:19:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:20:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:20:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:20:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:20:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:20:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:20:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:20:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:20:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:20:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:20:34 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:20:34 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:34 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:20:34 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:34 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:34 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:35 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:20:35 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:20:35 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:20:35 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:20:35 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:21:02] "GET /health HTTP/1.1" 200 - 01/12/2026 10:21:05 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:12] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:14:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:14:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:14:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:14:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:14:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:15:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:15:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:34 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:35 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:35 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:35 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:35 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:02] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:06 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:08 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:10 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:10 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:10 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:10 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:36] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:40 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:11] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:18:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:18:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:18:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:18:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:18:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:18:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:18:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:18:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:18:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:18:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:18:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:18:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:18:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:18:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:18:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:18:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:18:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:18:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:19:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:19:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:19:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:19:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:19:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:19:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:19:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:19:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:19:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:19:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:19:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:20:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:20:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:20:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:20:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:20:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:20:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:20:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:20:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:20:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:20:34 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:20:34 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:34 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:20:34 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:34 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:34 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:35 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:20:35 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:20:35 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:20:35 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:20:35 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:21:02] "GET /health HTTP/1.1" 200 - 01/12/2026 10:21:05 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:21:07 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:21:07 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:07 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:21:07 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:07 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:07 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:08 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:21:08 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:21:08 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:21:08 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:21:08 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:21:35] "GET /health HTTP/1.1" 200 - 01/12/2026 10:21:38 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:12] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:14:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:14:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:14:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:14:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:14:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:15:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:15:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:34 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:35 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:35 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:35 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:35 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:02] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:06 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:08 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:10 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:10 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:10 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:10 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:36] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:40 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:11] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:18:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:18:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:18:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:18:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:18:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:18:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:18:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:18:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:18:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:18:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:18:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:18:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:18:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:18:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:18:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:18:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:18:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:18:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:19:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:19:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:19:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:19:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:19:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:19:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:19:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:19:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:19:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:19:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:19:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:20:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:20:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:20:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:20:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:20:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:20:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:20:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:20:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:20:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:20:34 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:20:34 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:34 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:20:34 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:34 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:34 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:35 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:20:35 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:20:35 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:20:35 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:20:35 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:21:02] "GET /health HTTP/1.1" 200 - 01/12/2026 10:21:05 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:21:07 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:21:07 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:07 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:21:07 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:07 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:07 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:08 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:21:08 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:21:08 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:21:08 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:21:08 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:21:35] "GET /health HTTP/1.1" 200 - 01/12/2026 10:21:38 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:21:40 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:21:40 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:40 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:21:40 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:40 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:40 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:21:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:21:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:21:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:21:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:22:08] "GET /health HTTP/1.1" 200 - 01/12/2026 10:22:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:12] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:14:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:14:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:14:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:14:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:14:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:15:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:15:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:34 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:35 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:35 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:35 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:35 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:02] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:06 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:08 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:10 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:10 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:10 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:10 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:36] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:40 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:11] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:18:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:18:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:18:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:18:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:18:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:18:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:18:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:18:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:18:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:18:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:18:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:18:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:18:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:18:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:18:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:18:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:18:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:18:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:19:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:19:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:19:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:19:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:19:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:19:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:19:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:19:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:19:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:19:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:19:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:20:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:20:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:20:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:20:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:20:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:20:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:20:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:20:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:20:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:20:34 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:20:34 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:34 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:20:34 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:34 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:34 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:35 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:20:35 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:20:35 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:20:35 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:20:35 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:21:02] "GET /health HTTP/1.1" 200 - 01/12/2026 10:21:05 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:21:07 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:21:07 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:07 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:21:07 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:07 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:07 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:08 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:21:08 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:21:08 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:21:08 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:21:08 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:21:35] "GET /health HTTP/1.1" 200 - 01/12/2026 10:21:38 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:21:40 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:21:40 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:40 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:21:40 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:40 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:40 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:21:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:21:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:21:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:21:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:22:08] "GET /health HTTP/1.1" 200 - 01/12/2026 10:22:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:22:13 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:22:13 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:22:13 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:22:13 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:22:13 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:22:13 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:22:14 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:22:14 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:22:14 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:22:14 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:22:14 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:22:41] "GET /health HTTP/1.1" 200 - 01/12/2026 10:22:44 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:12] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:14:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:14:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:14:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:14:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:14:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:15:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:15:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:34 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:35 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:35 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:35 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:35 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:02] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:06 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:08 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:10 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:10 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:10 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:10 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:36] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:40 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:11] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:18:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:18:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:18:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:18:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:18:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:18:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:18:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:18:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:18:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:18:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:18:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:18:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:18:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:18:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:18:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:18:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:18:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:18:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:19:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:19:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:19:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:19:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:19:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:19:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:19:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:19:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:19:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:19:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:19:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:20:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:20:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:20:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:20:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:20:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:20:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:20:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:20:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:20:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:20:34 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:20:34 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:34 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:20:34 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:34 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:34 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:35 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:20:35 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:20:35 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:20:35 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:20:35 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:21:02] "GET /health HTTP/1.1" 200 - 01/12/2026 10:21:05 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:21:07 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:21:07 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:07 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:21:07 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:07 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:07 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:08 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:21:08 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:21:08 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:21:08 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:21:08 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:21:35] "GET /health HTTP/1.1" 200 - 01/12/2026 10:21:38 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:21:40 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:21:40 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:40 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:21:40 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:40 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:40 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:21:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:21:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:21:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:21:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:22:08] "GET /health HTTP/1.1" 200 - 01/12/2026 10:22:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:22:13 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:22:13 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:22:13 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:22:13 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:22:13 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:22:13 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:22:14 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:22:14 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:22:14 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:22:14 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:22:14 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:22:41] "GET /health HTTP/1.1" 200 - 01/12/2026 10:22:44 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:22:45 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:22:46 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:22:46 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:22:46 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:22:46 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:22:46 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:22:47 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:22:47 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:22:47 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:22:47 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:22:47 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:23:14] "GET /health HTTP/1.1" 200 - 01/12/2026 10:23:17 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:06:39 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:06:41 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:06:41 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:06:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:06:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:06:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:06:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:03] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:15 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:16 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:16 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:16 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:16 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:16 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:16 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:07:42] "GET /health HTTP/1.1" 200 - 01/12/2026 10:07:46 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:07:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:07:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:07:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:07:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:07:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:07:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:07:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:17] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:24 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:24 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:24 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:24 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:25 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:25 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:25 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:25 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:08:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:08:55 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:08:57 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:08:57 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:08:57 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:57 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:08:58 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:08:58 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:08:58 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:08:58 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:25] "GET /health HTTP/1.1" 200 - 01/12/2026 10:09:28 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:09:30 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:09:31 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:09:31 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:09:31 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:09:31 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:09:31 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:09:31 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:09:59] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:01 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:04 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:04 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:04 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:04 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:05 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:05 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:05 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:05 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:10:32] "GET /health HTTP/1.1" 200 - 01/12/2026 10:10:35 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:10:37 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:10:38 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:10:38 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:10:38 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:10:38 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:10:38 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:10:38 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:05] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:08 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:10 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:11 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:11 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:11 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:11 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:11 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:11 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:11:39] "GET /health HTTP/1.1" 200 - 01/12/2026 10:11:41 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:11:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:11:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:11:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:11:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:11:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:11:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:11:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:12] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:12:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:12:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:12:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:12:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:12:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:12:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:12:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:12:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:12:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:13:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:13:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:13:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:13:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:13:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:13:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:13:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:13:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:13:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:14:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:14:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:14:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:14:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:14:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:14:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:14:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:14:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:14:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:15:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:15:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:15:34 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:15:35 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:15:35 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:15:35 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:15:35 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:15:35 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:15:35 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:02] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:06 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:08 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:10 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:10 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:10 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:10 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:10 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:10 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:16:36] "GET /health HTTP/1.1" 200 - 01/12/2026 10:16:40 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:16:43 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:16:44 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:16:44 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:16:44 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:16:44 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:16:44 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:16:44 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:11] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:14 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:16 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:17 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:17 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:17 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:17 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:17 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:17 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:17:45] "GET /health HTTP/1.1" 200 - 01/12/2026 10:17:47 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:17:49 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:17:50 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:17:50 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:17:50 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:17:50 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:17:50 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:17:50 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:17:50 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:18:18] "GET /health HTTP/1.1" 200 - 01/12/2026 10:18:20 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:18:22 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:18:23 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:18:23 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:23 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:18:23 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:18:23 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:18:23 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:18:23 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:18:51] "GET /health HTTP/1.1" 200 - 01/12/2026 10:18:53 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:18:55 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:18:56 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:18:56 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:18:56 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:18:56 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:18:56 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:18:56 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:18:56 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:19:24] "GET /health HTTP/1.1" 200 - 01/12/2026 10:19:26 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:19:28 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:19:28 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:19:28 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:28 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:19:29 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:19:29 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:19:29 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:19:29 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:19:29 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:19:57] "GET /health HTTP/1.1" 200 - 01/12/2026 10:19:59 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:20:01 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:20:01 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:01 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:20:01 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:01 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:01 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:02 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:20:02 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:20:02 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:20:02 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:20:02 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:20:29] "GET /health HTTP/1.1" 200 - 01/12/2026 10:20:32 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:20:34 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:20:34 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:34 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:20:34 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:34 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:34 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:20:35 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:20:35 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:20:35 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:20:35 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:20:35 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:21:02] "GET /health HTTP/1.1" 200 - 01/12/2026 10:21:05 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:21:07 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:21:07 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:07 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:21:07 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:07 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:07 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:08 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:21:08 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:21:08 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:21:08 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:21:08 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:21:35] "GET /health HTTP/1.1" 200 - 01/12/2026 10:21:38 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:21:40 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:21:40 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:40 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:21:40 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:40 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:40 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:21:41 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:21:41 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:21:41 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:21:41 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:21:41 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:22:08] "GET /health HTTP/1.1" 200 - 01/12/2026 10:22:11 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:22:13 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:22:13 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:22:13 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:22:13 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:22:13 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:22:13 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:22:14 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:22:14 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:22:14 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:22:14 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:22:14 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:22:41] "GET /health HTTP/1.1" 200 - 01/12/2026 10:22:44 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:22:45 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:22:46 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:22:46 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:22:46 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:22:46 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:22:46 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:22:47 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:22:47 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:22:47 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:22:47 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:22:47 AM UTC [INFO] Watchdog started with 600s timeout 127.0.0.1 - - [12/Jan/2026 10:23:14] "GET /health HTTP/1.1" 200 - 01/12/2026 10:23:17 AM UTC [ERROR] urllib3.exceptions.ResponseError: too many 502 error responses The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 644, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 942, in urlopen return self.urlopen( ^^^^^^^^^^^^^ [Previous line repeated 2 more times] File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 932, in urlopen retries = retries.increment(method, url, response=response, _pool=self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/kernelci/pipeline/src/base.py", line 69, in run context = self._setup(args) ^^^^^^^^^^^^^^^^^ File "/home/kernelci/pipeline/./src/scheduler.py", line 259, in _setup node_sub_id = self._api.subscribe('node') ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/latest.py", line 157, in subscribe resp = self._post(f'subscribe/{channel}', params=params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/kernelci/api/__init__.py", line 134, in _post resp = session.post( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 668, in send raise RetryError(e, request=request) requests.exceptions.RetryError: HTTPSConnectionPool(host='staging.kernelci.org', port=9000): Max retries exceeded with url: /latest/subscribe/node (Caused by ResponseError('too many 502 error responses')) 01/12/2026 10:23:20 AM UTC [INFO] Job backup disabled (set BACKUP_FILE_LIFETIME env var to enable) 01/12/2026 10:23:21 AM UTC [INFO] Runtimes from KContext: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:23:21 AM UTC [INFO] Runtime types from KContext: [] 01/12/2026 10:23:21 AM UTC [INFO] Initializing runtimes: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:23:21 AM UTC [INFO] Filtering runtimes by name: ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:23:21 AM UTC [INFO] Selected 2 runtime(s): ['k8s-gke-eu-west4', 'k8s-all'] 01/12/2026 10:23:21 AM UTC [INFO] Default storage config from KContext: kci-storage 01/12/2026 10:23:21 AM UTC [INFO] Attempting to initialize storage config: kci-storage 01/12/2026 10:23:21 AM UTC [INFO] KContext get_storage_config returned: True 01/12/2026 10:23:21 AM UTC [INFO] KContext storage initialization successful: True 01/12/2026 10:23:21 AM UTC [INFO] Watchdog started with 600s timeout 01/12/2026 10:23:39 AM UTC [INFO] Stopping.