Using CPython 3.14.6 interpreter at: /usr/local/bin/python3 Creating virtual environment at: .venv Resolved 32 packages in 4.57s Building slices-monitor-test-runner @ file:///app Built slices-monitor-test-runner @ file:///app Prepared 1 package in 452ms warning: Failed to hardlink files; falling back to full copy. This may lead to degraded performance. If the cache and target directories are on different filesystems, hardlinking may not be supported. If this is intentional, set `export UV_LINK_MODE=copy` or use `--link-mode=copy` to suppress this warning. Installed 32 packages in 665ms + annotated-types==0.8.0 + anyio==4.14.2 + authlib==1.7.2 + bcrypt==5.0.0 + certifi==2026.7.22 + cffi==2.1.0 + cryptography==49.0.0 + dnspython==2.8.0 + h11==0.16.0 + httpcore==1.0.9 + httpx==0.28.1 + httpx-oauth==0.17.0 + idna==3.18 + invoke==3.0.3 + joserfc==1.7.4 + msgspec==0.21.1 + packaging==26.2 + paramiko==4.0.0 + pycparser==3.0 + pydantic==2.13.4 + pydantic-core==2.46.4 + pyjwt==2.13.0 + pynacl==1.6.2 + pytz==2026.3.post1 + pyyaml==6.0.3 + slices-clientlib-bi==5.1.2 + slices-clientlib-core==5.6.0 + slices-monitor-test-runner==0.1.dev192+gcac2d3fe6 (from file:///app) + tomli-w==1.2.0 + tomlkit==0.15.1 + typing-extensions==4.16.0 + typing-inspection==0.4.2 Run Test: slices-bi-health-check 2026-07-29 14:27:31.557040 UTC - Check DNS 2026-07-29 14:27:31.557341 UTC - Checking system DNS for API host slices-bi-devel.grid5000.fr 2026-07-29 14:27:31.557957 UTC - Resolved to 194.254.60.46 2026-07-29 14:27:31.558004 UTC - Checking direct DNS for API host slices-bi-devel.grid5000.fr using DNS server 8.8.8.8 2026-07-29 14:27:31.564607 UTC - Resolved to 194.254.60.46 2026-07-29 14:27:31.564663 UTC - Checking direct DNS for API host slices-bi-devel.grid5000.fr using DNS server 1.1.1.1 2026-07-29 14:27:31.569134 UTC - Resolved to 194.254.60.46 2026-07-29 14:27:31.569256 UTC - Check Basic Connectivity 2026-07-29 14:27:31.569300 UTC - Checking basic connectivity to BI API of infra fr-lyon1-bi-baremetal1 at https://slices-bi-devel.grid5000.fr/site/lyon 2026-07-29 14:27:31.569327 UTC - Connecting to: https://slices-bi-devel.grid5000.fr/site/lyon 2026-07-29 14:27:31.599002 UTC - Error in test step 'Check Basic Connectivity': Failed to connect to BI API endpoint for infra fr-lyon1-bi-baremetal1 ERROR:slices_monitor_test_runner.main:Test Failed with exception Traceback (most recent call last): File "/app/.venv/lib/python3.14/site-packages/httpx/_transports/default.py", line 101, in map_httpcore_exceptions yield File "/app/.venv/lib/python3.14/site-packages/httpx/_transports/default.py", line 250, in handle_request resp = self._pool.handle_request(req) File "/app/.venv/lib/python3.14/site-packages/httpcore/_sync/connection_pool.py", line 256, in handle_request raise exc from None File "/app/.venv/lib/python3.14/site-packages/httpcore/_sync/connection_pool.py", line 236, in handle_request response = connection.handle_request( pool_request.request ) File "/app/.venv/lib/python3.14/site-packages/httpcore/_sync/connection.py", line 101, in handle_request raise exc File "/app/.venv/lib/python3.14/site-packages/httpcore/_sync/connection.py", line 78, in handle_request stream = self._connect(request) File "/app/.venv/lib/python3.14/site-packages/httpcore/_sync/connection.py", line 156, in _connect stream = stream.start_tls(**kwargs) File "/app/.venv/lib/python3.14/site-packages/httpcore/_backends/sync.py", line 154, in start_tls with map_exceptions(exc_map): ~~~~~~~~~~~~~~^^^^^^^^^ File "/usr/local/lib/python3.14/contextlib.py", line 162, in __exit__ self.gen.throw(value) ~~~~~~~~~~~~~~^^^^^^^ File "/app/.venv/lib/python3.14/site-packages/httpcore/_exceptions.py", line 14, in map_exceptions raise to_exc(exc) from exc httpcore.ConnectError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1082) The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/app/src/slices_monitor_test_runner/test_runners/slices_bi_health_check.py", line 45, in _check_basic_connectivity response = self._client()._no_auth_client.get(url) File "/app/.venv/lib/python3.14/site-packages/httpx/_client.py", line 1053, in get return self.request( ~~~~~~~~~~~~^ "GET", ^^^^^^ ...<7 lines>... extensions=extensions, ^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/app/.venv/lib/python3.14/site-packages/httpx/_client.py", line 825, in request return self.send(request, auth=auth, follow_redirects=follow_redirects) ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/.venv/lib/python3.14/site-packages/httpx/_client.py", line 914, in send response = self._send_handling_auth( request, ...<2 lines>... history=[], ) File "/app/.venv/lib/python3.14/site-packages/httpx/_client.py", line 942, in _send_handling_auth response = self._send_handling_redirects( request, follow_redirects=follow_redirects, history=history, ) File "/app/.venv/lib/python3.14/site-packages/httpx/_client.py", line 979, in _send_handling_redirects response = self._send_single_request(request) File "/app/.venv/lib/python3.14/site-packages/httpx/_client.py", line 1014, in _send_single_request response = transport.handle_request(request) File "/app/.venv/lib/python3.14/site-packages/httpx/_transports/default.py", line 249, in handle_request with map_httpcore_exceptions(): ~~~~~~~~~~~~~~~~~~~~~~~^^ File "/usr/local/lib/python3.14/contextlib.py", line 162, in __exit__ self.gen.throw(value) ~~~~~~~~~~~~~~^^^^^^^ File "/app/.venv/lib/python3.14/site-packages/httpx/_transports/default.py", line 118, in map_httpcore_exceptions raise mapped_exc(message) from exc httpx.ConnectError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1082) The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/app/src/slices_monitor_test_runner/test_runners/test_runner_base.py", line 175, in step yield File "/app/src/slices_monitor_test_runner/test_runners/slices_bi_health_check.py", line 88, in run self._check_basic_connectivity() ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ File "/app/src/slices_monitor_test_runner/test_runners/slices_bi_health_check.py", line 48, in _check_basic_connectivity raise SlicesTestFailure(f"Failed to connect to BI API endpoint for infra {self.test_spec.infra_id}") from e slices_monitor_test_runner.exceptions.SlicesTestFailure: Failed to connect to BI API endpoint for infra fr-lyon1-bi-baremetal1 The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/app/src/slices_monitor_test_runner/main.py", line 76, in run_test return _get_test_by_test_spec(steps, test_dir, test_spec).run() ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ File "/app/src/slices_monitor_test_runner/test_runners/slices_bi_health_check.py", line 84, in run with self.step( ~~~~~~~~~^ "Check Basic Connectivity", ^^^^^^^^^^^^^^^^^^^^^^^^^^^ description=f"Check Basic Connectivity to BI API at {self.test_spec.infra_id}", ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ): ^ File "/usr/local/lib/python3.14/contextlib.py", line 162, in __exit__ self.gen.throw(value) ~~~~~~~~~~~~~~^^^^^^^ File "/app/src/slices_monitor_test_runner/test_runners/test_runner_base.py", line 219, in step raise SlicesTestFailure(f"Step {name!r} {retry_suffix2} failed") from e slices_monitor_test_runner.exceptions.SlicesTestFailure: Step 'Check Basic Connectivity' failed