[03/10/26 15:34:53] DEBUG DEBUG:asyncio:Using selector: EpollSelector selector_events.py:64
DEBUG DEBUG:jumpstarter.common.grpc:Resolved grpc.jumpstarter.10.0.2.2.nip.io to 1 IP(s): 10.0.2.2 grpc.py:74
DEBUG DEBUG:jumpstarter.common.grpc:Attempting TLS connection to 10.0.2.2:8082 (timeout=5s) grpc.py:28
DEBUG DEBUG:jumpstarter.common.grpc:Successfully connected to 10.0.2.2:8082 grpc.py:33
DEBUG DEBUG:jumpstarter.common.grpc:Successfully extracted 1 certificate(s) from 10.0.2.2:8082 grpc.py:40
DEBUG DEBUG:jumpstarter.common.grpc:Using certificates from 10.0.2.2:8082 grpc.py:105
DEBUG DEBUG:grpc._cython.cygrpc:[_cygrpc] Loaded running loop: id(loop)=140049467442912 _channel.py:369
DEBUG DEBUG:grpc._cython.cygrpc:Using AsyncIOEngine.POLLER as I/O engine _channel.py:370
DEBUG DEBUG:grpc._cython.cygrpc:[_cygrpc] Loaded running loop: id(loop)=140049467442912 _channel.py:370
DEBUG DEBUG:jumpstarter.client.lease:Creating lease request for selector hooks=none for duration 0:30:00 lease.py:65
DEBUG DEBUG:grpc._cython.cygrpc:[_cygrpc] Loaded running loop: id(loop)=140049467442912 _call.py:569
INFO INFO:jumpstarter.client.lease:Acquiring lease 019cd863-037c-7c60-a00c-44088a2f48a9 for selector hooks=none for duration 0:30:00 lease.py:73
DEBUG DEBUG:jumpstarter.client.lease:Polling Lease 019cd863-037c-7c60-a00c-44088a2f48a9 lease.py:138
DEBUG DEBUG:grpc._cython.cygrpc:[_cygrpc] Loaded running loop: id(loop)=140049467442912 _call.py:569
DEBUG DEBUG:jumpstarter.client.lease:Lease 019cd863-037c-7c60-a00c-44088a2f48a9 acquired lease.py:143
DEBUG DEBUG:jumpstarter.client.lease:Serving Unix socket at /run/user/1000/jumpstarter-dfihxjla/socket lease.py:220
INFO INFO:jumpstarter.client.lease:Waiting for ready connection at /run/user/1000/jumpstarter-dfihxjla/socket lease.py:227
DEBUG DEBUG:grpc._cython.cygrpc:[_cygrpc] Loaded running loop: id(loop)=140049467442912 _channel.py:369
DEBUG DEBUG:grpc._cython.cygrpc:[_cygrpc] Loaded running loop: id(loop)=140049467442912 _channel.py:370
DEBUG DEBUG:grpc._cython.cygrpc:[_cygrpc] Loaded running loop: id(loop)=140049467442912 _call.py:569
DEBUG DEBUG:jumpstarter.client.lease:Connecting to Lease with name 019cd863-037c-7c60-a00c-44088a2f48a9 lease.py:210
DEBUG DEBUG:grpc._cython.cygrpc:[_cygrpc] Loaded running loop: id(loop)=140049467442912 _call.py:569
INFO INFO:jumpstarter.client.lease:Releasing Lease 019cd863-037c-7c60-a00c-44088a2f48a9 lease.py:193
DEBUG DEBUG:grpc._cython.cygrpc:[_cygrpc] Loaded running loop: id(loop)=140049467442912 _call.py:569
╭─────────────────────────────── Traceback (most recent call last) ────────────────────────────────╮
│ /home/fedora/.local/jumpstarter/bin/jmp:8 in <module> │
│ │
│ 5 from jumpstarter_cli.jmp import jmp │
│ 6 if __name__ == '__main__': │
│ 7 │ sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) │
│ ❱ 8 │ sys.exit(jmp()) │
│ 9 │
│ │
│ /home/fedora/.local/jumpstarter/venv/lib64/python3.13/site-packages/click/core.py:1462 in │
│ __call__ │
│ │
│ 1459 │ │
│ 1460 │ def __call__(self, *args: t.Any, **kwargs: t.Any) -> t.Any: │
│ 1461 │ │ """Alias for :meth:`main`.""" │
│ ❱ 1462 │ │ return self.main(*args, **kwargs) │
│ 1463 │
│ 1464 │
│ 1465 class _FakeSubclassCheck(type): │
│ │
│ /home/fedora/.local/jumpstarter/venv/lib64/python3.13/site-packages/click/core.py:1383 in main │
│ │
│ 1380 │ │ try: │
│ 1381 │ │ │ try: │
│ │ │ /usr/lib64/python3.13/concurrent/futures/_base.py:456 in result │ │ │
│ │ │ │ │ │
│ │ │ 453 │ │ │ │ if self._state in [CANCELLED, CANCELLED_AND_NOTIFIED]: │ │ │
│ │ │ 454 │ │ │ │ │ raise CancelledError() │ │ │
│ │ │ 455 │ │ │ │ elif self._state == FINISHED: │ │ │
│ │ │ ❱ 456 │ │ │ │ │ return self.__get_result() │ │ │
│ │ │ 457 │ │ │ │ else: │ │ │
│ │ │ 458 │ │ │ │ │ raise TimeoutError() │ │ │
│ │ │ 459 │ │ finally: │ │ │
│ │ │ │ │ │
│ │ │ /usr/lib64/python3.13/concurrent/futures/_base.py:401 in __get_result │ │ │
│ │ │ │ │ │
│ │ │ 398 │ def __get_result(self): │ │ │
│ │ │ 399 │ │ if self._exception is not None: │ │ │
│ │ │ 400 │ │ │ try: │ │ │
│ │ │ ❱ 401 │ │ │ │ raise self._exception │ │ │
│ │ │ 402 │ │ │ finally: │ │ │
│ │ │ 403 │ │ │ │ # Break a reference cycle with the exception in self._exception │ │ │
│ │ │ 404 │ │ │ │ self = None │ │ │
│ │ │ │ │ │
│ │ │ /home/fedora/.local/jumpstarter/venv/lib64/python3.13/site-packages/anyio/from_thread.py │ │ │
│ │ │ :252 in _call_func │ │ │
│ │ │ │ │ │
│ │ │ 249 │ │ │ │ │ else: │ │ │
│ │ │ 250 │ │ │ │ │ │ future.add_done_callback(callback) │ │ │
│ │ │ 251 │ │ │ │ │ │ │ │
│ │ │ ❱ 252 │ │ │ │ │ retval = await retval_or_awaitable │ │ │
│ │ │ 253 │ │ │ else: │ │ │
│ │ │ 254 │ │ │ │ retval = retval_or_awaitable │ │ │
│ │ │ 255 │ │ except self._cancelled_exc_class: │ │ │
│ │ │ │ │ │
│ │ │ /home/fedora/.local/jumpstarter/venv/lib64/python3.13/site-packages/anyio/from_thread.py │ │ │
│ │ │ :131 in run_async_cm │ │ │
│ │ │ │ │ │
│ │ │ 128 │ async def run_async_cm(self) -> bool | None: │ │ │
│ │ │ 129 │ │ try: │ │ │
│ │ │ 130 │ │ │ self._exit_event = Event() │ │ │
│ │ │ ❱ 131 │ │ │ value = await self._async_cm.__aenter__() │ │ │
│ │ │ 132 │ │ except BaseException as exc: │ │ │
│ │ │ 133 │ │ │ self._enter_future.set_exception(exc) │ │ │
│ │ │ 134 │ │ │ raise │ │ │
│ │ │ │ │ │
│ │ │ /usr/lib64/python3.13/contextlib.py:214 in __aenter__ │ │ │
│ │ │ │ │ │
│ │ │ 211 │ │ # they are only needed for recreation, which is not possible anymore │ │ │
│ │ │ 212 │ │ del self.args, self.kwds, self.func │ │ │
│ │ │ 213 │ │ try: │ │ │
│ │ │ ❱ 214 │ │ │ return await anext(self.gen) │ │ │
│ │ │ 215 │ │ except StopAsyncIteration: │ │ │
│ │ │ 216 │ │ │ raise RuntimeError("generator didn't yield") from None │ │ │
│ │ │ 217 │ │ │
│ │ │ │ │ │
│ │ │ /home/fedora/.local/jumpstarter/venv/lib64/python3.13/site-packages/jumpstarter/client/l │ │ │
│ │ │ ease.py:219 in serve_unix_async │ │ │
│ │ │ │ │ │
│ │ │ 216 │ │ │ │
│ │ │ 217 │ @asynccontextmanager │ │ │
│ │ │ 218 │ async def serve_unix_async(self): │ │ │
│ │ │ ❱ 219 │ │ async with TemporaryUnixListener(self.handle_async) as path: │ │ │
│ │ │ 220 │ │ │ logger.debug("Serving Unix socket at %s", path) │ │ │
│ │ │ 221 │ │ │ await self._wait_for_ready_connection(path) │ │ │
│ │ │ 222 │ │ │ # TODO: talk to the exporter to make sure it's ready.... (once we have │ │ │
│ │ │ │ │ │
│ │ │ /usr/lib64/python3.13/contextlib.py:235 in __aexit__ │ │ │
│ │ │ │ │ │
│ │ │ 232 │ │ │ │ # tell if we get the same exception back │ │ │
│ │ │ 233 │ │ │ │ value = typ() │ │ │
│ │ │ 234 │ │ │ try: │ │ │
│ │ │ ❱ 235 │ │ │ │ await self.gen.athrow(value) │ │ │
│ │ │ 236 │ │ │ except StopAsyncIteration as exc: │ │ │
│ │ │ 237 │ │ │ │ # Suppress StopIteration *unless* it's the same exception that │ │ │
│ │ │ 238 │ │ │ │ # was passed to throw(). This prevents a StopIteration │ │ │
│ │ │ │ │ │
│ │ │ /home/fedora/.local/jumpstarter/venv/lib64/python3.13/site-packages/jumpstarter/common/t │ │ │
│ │ │ empfile.py:27 in TemporaryUnixListener │ │ │
│ │ │ │ │ │
│ │ │ 24 │ │ │ │
│ │ │ 25 │ with cm as path: │ │ │
│ │ │ 26 │ │ async with await create_unix_listener(path) as listener: │ │ │
│ │ │ ❱ 27 │ │ │ async with create_task_group() as tg: │ │ │
│ │ │ 28 │ │ │ │ tg.start_soon(listener.serve, handler, tg) │ │ │
│ │ │ 29 │ │ │ │ try: │ │ │
│ │ │ 30 │ │ │ │ │ yield path │ │ │
│ │ │ │ │ │
│ │ │ /home/fedora/.local/jumpstarter/venv/lib64/python3.13/site-packages/anyio/_backends/_asy │ │ │
│ │ │ ncio.py:781 in __aexit__ │ │ │
│ │ │ │ │ │
│ │ │ 778 │ │ │ │ │ # added to self._exceptions so it's ok to break exception │ │ │
│ │ │ 779 │ │ │ │ │ # chaining and avoid adding a "During handling of above..." │ │ │
│ │ │ 780 │ │ │ │ │ # for each nesting level. │ │ │
│ │ │ ❱ 781 │ │ │ │ │ raise BaseExceptionGroup( │ │ │
│ │ │ 782 │ │ │ │ │ │ "unhandled errors in a TaskGroup", self._exceptions │ │ │
│ │ │ 783 │ │ │ │ │ ) from None │ │ │
│ │ │ 784 │ │ │ │ elif exc_val: │ │ │
│ │ ╰──────────────────────────────────────────────────────────────────────────────────────────╯ │ │
│ │ ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception) │ │
│ │ │ │
│ │ ╭──────────────────────────────────── Sub-exception #1 ────────────────────────────────────╮ │ │
│ │ │ ╭───────────────────────── Traceback (most recent call last) ──────────────────────────╮ │ │ │
│ │ │ │ /home/fedora/.local/jumpstarter/venv/lib64/python3.13/site-packages/jumpstarter/clie │ │ │ │
│ │ │ │ nt/lease.py:211 in handle_async │ │ │ │
│ │ │ │ │ │ │ │
│ │ │ │ 208 │ │ │ │ │
│ │ │ │ 209 │ async def handle_async(self, stream): │ │ │ │
│ │ │ │ 210 │ │ logger.debug("Connecting to Lease with name %s", self.name) │ │ │ │
│ │ │ │ ❱ 211 │ │ response = await self.controller.Dial(jumpstarter_pb2.DialRequest(leas │ │ │ │
│ │ │ │ 212 │ │ async with connect_router_stream( │ │ │ │
│ │ │ │ 213 │ │ │ response.router_endpoint, response.router_token, stream, self.tls_ │ │ │ │
│ │ │ │ 214 │ │ ): │ │ │ │
│ │ │ │ │ │ │ │
│ │ │ │ /home/fedora/.local/jumpstarter/venv/lib64/python3.13/site-packages/grpc/aio/_call.p │ │ │ │
│ │ │ │ y:330 in __await__ │ │ │ │
│ │ │ │ │ │ │ │
│ │ │ │ 327 │ │ │ if self._cython_call.is_locally_cancelled(): │ │ │ │
│ │ │ │ 328 │ │ │ │ raise asyncio.CancelledError() │ │ │ │
│ │ │ │ 329 │ │ │ else: │ │ │ │
│ │ │ │ ❱ 330 │ │ │ │ raise _create_rpc_error( │ │ │ │
│ │ │ │ 331 │ │ │ │ │ self._cython_call._initial_metadata, │ │ │ │
│ │ │ │ 332 │ │ │ │ │ self._cython_call._status, │ │ │ │
│ │ │ │ 333 │ │ │ │ ) │ │ │ │
│ │ │ ╰──────────────────────────────────────────────────────────────────────────────────────╯ │ │ │
│ │ │ AioRpcError: <AioRpcError of RPC that terminated with: │ │ │
│ │ │ status = StatusCode.FAILED_PRECONDITION │ │ │
│ │ │ details = "exporter is not ready (status: Available)" │ │ │
│ │ │ debug_error_string = "UNKNOWN:Error received from peer ipv4:10.0.2.2:8082 │ │ │
│ │ │ {grpc_message:"exporter is not ready (status: Available)", grpc_status:9}" │ │ │
│ │ │ > │ │ │
│ │ ╰──────────────────────────────────────────────────────────────────────────────────────────╯ │ │
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯