===== app-contract-nightly-staging-lrznr-archive-logs-pod.log ===== [pod/app-contract-nightly-staging-lrznr-archive-logs-pod/step-collect-logs] 2026-08-02T21:47:43.395040850-05:00 ==> collecting pod logs for PipelineRun=app-contract-nightly-staging-lrznr [pod/app-contract-nightly-staging-lrznr-archive-logs-pod/prepare] 2026-08-02T21:47:38.157158969-05:00 2026/08/03 02:47:38 Entrypoint initialization [pod/app-contract-nightly-staging-lrznr-archive-logs-pod/place-scripts] 2026-08-02T21:47:38.893299505-05:00 2026/08/03 02:47:38 Decoded script /tekton/scripts/script-0-p5c65 [pod/app-contract-nightly-staging-lrznr-archive-logs-pod/place-scripts] 2026-08-02T21:47:38.912568487-05:00 2026/08/03 02:47:38 Decoded script /tekton/scripts/script-1-zz8t2 ===== app-contract-nightly-staging-lrznr-contract-pod.log ===== [pod/app-contract-nightly-staging-lrznr-contract-pod/prepare] 2026-08-02T21:47:06.013313235-05:00 2026/08/03 02:47:06 Entrypoint initialization [pod/app-contract-nightly-staging-lrznr-contract-pod/place-scripts] 2026-08-02T21:47:06.394189305-05:00 2026/08/03 02:47:06 Decoded script /tekton/scripts/script-0-7kgt9 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:09.820712970-05:00 resolved deployed image: registry.storeminder.ai/storeminder/app:ee7cf4cd9cd61ed4ab4e7538ef34cddf96caed8c [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:09.900755542-05:00 job.batch/app-contract-20260803-024709 created [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.752750290-05:00 ----- contract Job logs (app-contract-20260803-024709) ----- [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852226500-05:00 Installing pytest (runtime image has no test deps)… [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852241110-05:00 Running LIVE read-only contract + parity suite: tests/contract [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852247440-05:00 ============================= test session starts ============================== [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852251310-05:00 platform linux -- Python 3.12.7, pytest-9.1.1, pluggy-1.6.0 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852255270-05:00 django: version: 5.2.16, settings: config.settings (from env) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852258970-05:00 rootdir: /app [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852262840-05:00 configfile: pytest.ini [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852266690-05:00 plugins: django-4.12.0, cov-7.1.0, anyio-4.14.2 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852270370-05:00 collected 31 items [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852273850-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852277620-05:00 tests/contract/test_fixture_parity.py .FFsss [ 19%] [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852281660-05:00 tests/contract/test_grafana_contract.py sss [ 29%] [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852298640-05:00 tests/contract/test_headscale_contract.py ... [ 38%] [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852306010-05:00 tests/contract/test_mender_contract.py ssss [ 51%] [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852310650-05:00 tests/contract/test_rundeck_contract.py FFF [ 61%] [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852314640-05:00 tests/contract/test_shape_selfcheck.py ............ [100%] [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852318260-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852322000-05:00 =================================== FAILURES =================================== [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852325800-05:00 ________________________ test_parity_rundeck_execution _________________________ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852329450-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852333150-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852336810-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852340480-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852344180-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852347830-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852351580-05:00 try: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852355229-05:00 > yield [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852358799-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852362359-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852366069-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852369929-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852373569-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852377139-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852380819-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852384519-05:00 raise exc from None [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852388249-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852391869-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852395439-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852399079-05:00 raise exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852402879-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852418209-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852422479-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852425019-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852427539-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852430079-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852432549-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852435029-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852437459-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852439969-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852442429-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852444949-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852447329-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852449979-05:00 map = {: , : } [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852453849-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852456349-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852458859-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852461329-05:00 try: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852463769-05:00 yield [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852466219-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852468659-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852471129-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852473639-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852476169-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852478519-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852481169-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852483519-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852485979-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852488349-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852490789-05:00 self = [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852494339-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852496809-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852499149-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852501569-05:00 def _request( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852504029-05:00 self, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852506479-05:00 method: str, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852508949-05:00 path: str, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852511409-05:00 *, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852513949-05:00 retry: bool = True, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852516359-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852518779-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852521239-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852523699-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852526199-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852528809-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852531269-05:00 try: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852533759-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852536168-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852559098-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852565428-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852573748-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852576488-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852579038-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852582118-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852584598-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852587028-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852589748-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852592588-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852595138-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852597748-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852600208-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852602698-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852605188-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852607618-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852610158-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852613128-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852615638-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852618108-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852620568-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852623308-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852625678-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852628328-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852631798-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852634578-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852637308-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852639828-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852642278-05:00 try: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852644748-05:00 yield [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852647278-05:00 except Exception as exc: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852649738-05:00 mapped_exc = None [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852652278-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852654768-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852657248-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852660148-05:00 continue [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852662698-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852665198-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852667748-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852670388-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852672808-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852675578-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852678048-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852685188-05:00 raise [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852687818-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852690278-05:00 message = str(exc) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852692788-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852695248-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852697608-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852700148-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852702528-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852705058-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852707388-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852710587-05:00 def test_parity_rundeck_execution(): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852713037-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852715637-05:00 ver = rc.config.extra.get("api_version", "48") [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852718077-05:00 proj = rc.config.extra.get("project", "storeminder") [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852720707-05:00 > execs = (_live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) or {}).get("executions") or [] [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852723257-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852725667-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852728087-05:00 tests/contract/test_fixture_parity.py:73: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852730637-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852733977-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852736437-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852738957-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852741977-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852744427-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852746897-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852749437-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852751797-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852754227-05:00 self = [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852756727-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852759257-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852761617-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852764037-05:00 def _request( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852766677-05:00 self, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852769157-05:00 method: str, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852771607-05:00 path: str, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852774157-05:00 *, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852776627-05:00 retry: bool = True, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852779097-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852781587-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852784137-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852786727-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852789217-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852791737-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852794277-05:00 try: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852796727-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852799237-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852801747-05:00 last_exc = exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852808387-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852814077-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852816677-05:00 continue [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852819887-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852822447-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852825737-05:00 ) from exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852828677-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852831087-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852833677-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852836197-05:00 __________________________ test_parity_rundeck_output __________________________ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852838527-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852841017-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852843597-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852846587-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852849817-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852852377-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852854987-05:00 try: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852857487-05:00 > yield [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852859887-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852863307-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852865737-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852868217-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852870747-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852873297-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852875947-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852878657-05:00 raise exc from None [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852881177-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852883696-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852886536-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852888986-05:00 raise exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852891506-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852894006-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852896566-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852899006-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852901446-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852903856-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852906306-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852908736-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852911156-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852913566-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852916096-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852918576-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852920916-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852928066-05:00 map = {: , : } [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852930476-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852932886-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852935426-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852937906-05:00 try: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852940416-05:00 yield [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852942856-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852945276-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852947686-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852950156-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852952736-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852955076-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852957586-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852960066-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852962556-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852964926-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852967336-05:00 self = [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852969766-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852972216-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852974576-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852976996-05:00 def _request( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852979506-05:00 self, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852981936-05:00 method: str, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852984366-05:00 path: str, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852986796-05:00 *, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852989216-05:00 retry: bool = True, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852991656-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852994046-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852996496-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.852999026-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853001516-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853004006-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853006436-05:00 try: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853008926-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853011346-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853013666-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853016036-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853018596-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853021136-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853023646-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853026146-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853028636-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853031076-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853033486-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853035936-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853041096-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853043656-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853050186-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853052766-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853055256-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853057735-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853060245-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853062715-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853065185-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853067715-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853070145-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853072625-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853074975-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853077455-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853079905-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853082365-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853084905-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853087375-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853089825-05:00 try: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853092265-05:00 yield [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853094745-05:00 except Exception as exc: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853097355-05:00 mapped_exc = None [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853099915-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853102455-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853104995-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853107505-05:00 continue [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853110005-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853112515-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853114995-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853117535-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853119975-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853122445-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853124995-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853127445-05:00 raise [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853129885-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853132385-05:00 message = str(exc) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853134835-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853137325-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853139665-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853142205-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853144575-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853147385-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853149725-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853152285-05:00 def test_parity_rundeck_output(): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853154755-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853157245-05:00 ver = rc.config.extra.get("api_version", "48") [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853159795-05:00 proj = rc.config.extra.get("project", "storeminder") [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853162355-05:00 > execs = (_live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) or {}).get("executions") or [] [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853169435-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853171815-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853174265-05:00 tests/contract/test_fixture_parity.py:90: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853177095-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853179575-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853182515-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853184925-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853187335-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853189735-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853192235-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853194665-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853197055-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853200005-05:00 self = [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853202465-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853204905-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853207275-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853209685-05:00 def _request( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853212145-05:00 self, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853214585-05:00 method: str, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853216975-05:00 path: str, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853219435-05:00 *, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853221835-05:00 retry: bool = True, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853224265-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853226725-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853229135-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853231595-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853234084-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853236524-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853238944-05:00 try: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853241354-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853243764-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853246294-05:00 last_exc = exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853248714-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853251124-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853253554-05:00 continue [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853255954-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853258424-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853260844-05:00 ) from exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853263374-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853265774-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853268764-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853271264-05:00 ____________________________ test_rundeck_reachable ____________________________ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853273644-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853276764-05:00 def test_rundeck_reachable(): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853282064-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853284624-05:00 health = rc.healthcheck() # GET /api/{v}/system/info [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853291094-05:00 > assert health.reachable, f"rundeck unreachable: {health.detail}" [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853293754-05:00 E AssertionError: rundeck unreachable: rundeck: GET /api/48/system/info failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853296184-05:00 E assert False [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853301304-05:00 E + where False = .reachable [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853303694-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853306114-05:00 tests/contract/test_rundeck_contract.py:37: AssertionError [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853308584-05:00 _________________________ test_rundeck_execution_shape _________________________ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853310964-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853313444-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853315884-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853318304-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853320774-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853323214-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853325634-05:00 try: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853328044-05:00 > yield [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853330384-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853332814-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853336994-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853340244-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853342714-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853345174-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853347664-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853350124-05:00 raise exc from None [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853352844-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853355664-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853358304-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853360964-05:00 raise exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853408223-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853412683-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853416423-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853420183-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853424143-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853428283-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853433603-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853442443-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853446193-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853449793-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853453393-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853457113-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853460833-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853465003-05:00 map = {: , : } [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853473363-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853475863-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853478303-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853480793-05:00 try: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853483283-05:00 yield [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853485713-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853488153-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853490643-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853493083-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853495583-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853497943-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853500413-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853502783-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853505213-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853507553-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853510063-05:00 self = [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853512513-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853515003-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853517343-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853519763-05:00 def _request( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853522233-05:00 self, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853524673-05:00 method: str, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853527143-05:00 path: str, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853529643-05:00 *, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853532143-05:00 retry: bool = True, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853534573-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853537013-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853539513-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853552483-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853556563-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853559073-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853561573-05:00 try: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853564043-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853566513-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853568863-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853571253-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853573713-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853576183-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853578623-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853581083-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853583502-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853585942-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853588412-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853590932-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853597902-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853600492-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853603002-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853610792-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853613282-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853615712-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853618142-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853620582-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853622992-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853625482-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853628712-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853631282-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853633632-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853636042-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853638512-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853640952-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853643472-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853645922-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853648392-05:00 try: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853650862-05:00 yield [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853653322-05:00 except Exception as exc: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853655762-05:00 mapped_exc = None [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853658222-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853660692-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853663152-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853665692-05:00 continue [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853668222-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853670722-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853673232-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853675732-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853678212-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853680652-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853683152-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853685622-05:00 raise [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853688142-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853691092-05:00 message = str(exc) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853693582-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853696102-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853698452-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853700902-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853703252-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853705712-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853708142-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853710622-05:00 def test_rundeck_execution_shape(): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853713052-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853715502-05:00 > ex = _recent_execution(rc) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853717992-05:00 ^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853720332-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853722812-05:00 tests/contract/test_rundeck_contract.py:42: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853725312-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853732432-05:00 tests/contract/test_rundeck_contract.py:24: in _recent_execution [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853734952-05:00 data = _live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853737492-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853740002-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853742392-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853744902-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853748092-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853750622-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853753152-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853755572-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853757982-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853762042-05:00 self = [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853764681-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853767151-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853769511-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853771911-05:00 def _request( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853774531-05:00 self, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853776981-05:00 method: str, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853779421-05:00 path: str, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853781941-05:00 *, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853784431-05:00 retry: bool = True, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853786861-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853789341-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853791871-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853794411-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853796841-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853799391-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853801901-05:00 try: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853804321-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853806811-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853809281-05:00 last_exc = exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853811701-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853814181-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853816611-05:00 continue [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853819091-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853821581-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853824021-05:00 ) from exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853826641-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853829021-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853831411-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853834251-05:00 __________________________ test_rundeck_output_shape ___________________________ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853836621-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853839091-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853844261-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853846781-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853849301-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853851761-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853859171-05:00 try: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853861611-05:00 > yield [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853863951-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853866411-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853868851-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853871341-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853873791-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853877111-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853879701-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853882281-05:00 raise exc from None [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853884811-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853887261-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853889901-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853892361-05:00 raise exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853894841-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853897391-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853899891-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853902341-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853904861-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853907601-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853910121-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853912691-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853915111-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853917571-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853920171-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853922701-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853925041-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853927571-05:00 map = {: , : } [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853929931-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853932341-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853934821-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853937291-05:00 try: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853939731-05:00 yield [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853942801-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853945230-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853947630-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853950080-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853952580-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853954930-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853957420-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853959840-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853962350-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853964690-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853971180-05:00 self = [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853973630-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853976170-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853978490-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853980910-05:00 def _request( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853983410-05:00 self, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853985850-05:00 method: str, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853988480-05:00 path: str, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853991480-05:00 *, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853993910-05:00 retry: bool = True, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853996320-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.853998730-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854001170-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854003660-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854006190-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854008640-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854011090-05:00 try: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854013560-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854015990-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854018340-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854020760-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854023250-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854025690-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854028680-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854031170-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854033690-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854036150-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854039130-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854041590-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854044070-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854046580-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854049040-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854051500-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854053980-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854056450-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854059830-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854062260-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854064800-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854069890-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854072460-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854075510-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854077880-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854080310-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854082750-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854085660-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854088130-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854095480-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854097970-05:00 try: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854100430-05:00 yield [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854102860-05:00 except Exception as exc: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854105340-05:00 mapped_exc = None [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854107780-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854110260-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854112780-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854115240-05:00 continue [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854117730-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854120170-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854122690-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854125139-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854127599-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854130099-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854132659-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854135149-05:00 raise [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854137599-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854140149-05:00 message = str(exc) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854142599-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854145039-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854147359-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854149889-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854152259-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854154649-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854156979-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854159429-05:00 def test_rundeck_output_shape(): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854161889-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854164749-05:00 > ex = _recent_execution(rc) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854167189-05:00 ^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854169539-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854171949-05:00 tests/contract/test_rundeck_contract.py:59: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854174409-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854176849-05:00 tests/contract/test_rundeck_contract.py:24: in _recent_execution [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854179299-05:00 data = _live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854181779-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854184259-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854186749-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854189269-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854191749-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854194169-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854196579-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854199009-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854201359-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854203759-05:00 self = [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854206249-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854216249-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854218609-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854221029-05:00 def _request( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854223499-05:00 self, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854225929-05:00 method: str, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854228339-05:00 path: str, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854230759-05:00 *, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854233209-05:00 retry: bool = True, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854235679-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854238269-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854240689-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854243119-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854245529-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854247969-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854250379-05:00 try: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854252829-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854255299-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854257719-05:00 last_exc = exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854260149-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854262559-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854264959-05:00 continue [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854267379-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854269799-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854272229-05:00 ) from exc [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854274849-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854277229-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854279649-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854282179-05:00 ================================ tests coverage ================================ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854284709-05:00 _______________ coverage: platform linux, python 3.12.7-final-0 ________________ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854287029-05:00 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854289479-05:00 Name Stmts Miss Branch BrPart Cover Missing [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854291919-05:00 ----------------------------------------------------------------------------------------------- [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854294519-05:00 config/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854297199-05:00 config/admin_gate.py 90 90 30 0 0% 32-203 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854299709-05:00 config/readiness.py 75 75 12 0 0% 47-184 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854318808-05:00 config/settings.py 54 2 6 3 92% 130->138, 139, 141 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854330978-05:00 config/urls.py 9 9 0 0 0% 2-18 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854334358-05:00 fleet/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854343338-05:00 fleet/admin.py 256 105 34 0 52% 73-74, 78, 81-84, 98, 102, 105, 139, 145-146, 168, 171, 192, 195, 206, 210, 257-266, 274-280, 285-295, 308-310, 339-343, 347-355, 359-362, 367-384, 389-403, 412-423, 459, 463-466, 470-499, 503-509 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854346808-05:00 fleet/api_consent.py 84 84 32 0 0% 23-170 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854358578-05:00 fleet/api_manifest.py 28 28 8 0 0% 38-90 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854361698-05:00 fleet/apps.py 5 0 0 0 100% [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854364658-05:00 fleet/contacts.py 26 18 8 0 24% 54, 63-70, 82-89, 102-129 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854367648-05:00 fleet/correlate.py 51 51 12 0 0% 28-170 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854370328-05:00 fleet/forms.py 17 8 4 0 43% 17-19, 22-31 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854372838-05:00 fleet/home.py 13 13 4 0 0% 28-51 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854375548-05:00 fleet/integrity.py 36 30 26 0 10% 23-28, 33-39, 44-47, 52-59, 64-70 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854378128-05:00 fleet/logs.py 113 113 18 0 0% 26-287 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854380608-05:00 fleet/management/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854383048-05:00 fleet/management/commands/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854385658-05:00 fleet/management/commands/poll_selftests.py 24 24 6 0 0% 13-61 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854388148-05:00 fleet/management/commands/reconcile_consents.py 37 37 10 0 0% 19-96 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854390618-05:00 fleet/management/commands/sync_devices.py 222 222 84 0 0% 34-364 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854393128-05:00 fleet/manifest.py 16 16 2 0 0% 32-101 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854395608-05:00 fleet/models.py 136 0 0 0 100% [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854399528-05:00 fleet/reconcile.py 111 79 34 0 22% 62, 67, 71-72, 82-87, 104-142, 148-161, 181-194, 202-205, 223-226, 239-244, 258-287 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854402758-05:00 fleet/roles.py 27 14 6 0 39% 95-108, 129-133 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854405268-05:00 fleet/scoping.py 32 25 12 0 16% 17-19, 26-28, 36-39, 44-47, 53-58, 66-72 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854407818-05:00 fleet/selftest.py 116 90 24 0 19% 67, 71, 90-124, 136-163, 168-173, 184-191, 201-214, 219-224, 235-254, 269-277 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854410818-05:00 fleet/status.py 144 82 26 0 36% 78, 101-106, 110-120, 124, 128, 132, 135-136, 163-164, 168, 185-188, 200-215, 219-221, 232-235, 241-255, 260-278, 283-286, 298-303, 307-312 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854413328-05:00 fleet/tests_authority.py 125 125 2 0 0% 4-229 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854415818-05:00 fleet/tests_consent.py 149 149 0 0 0% 16-284 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854418548-05:00 fleet/tests_consent_event.py 113 113 2 0 0% 9-195 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854421058-05:00 fleet/tests_correlate.py 51 51 4 0 0% 2-83 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854423528-05:00 fleet/tests_logs.py 163 163 2 0 0% 11-242 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854425978-05:00 fleet/tests_manifest.py 80 80 0 0 0% 15-190 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854428428-05:00 fleet/tests_memberships.py 179 179 2 0 0% 15-305 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854435708-05:00 fleet/tests_selftest.py 130 130 0 0 0% 14-255 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854438298-05:00 fleet/tests_status.py 219 219 2 0 0% 8-377 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854442148-05:00 fleet/tests_sync.py 178 178 8 0 0% 21-343 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854444708-05:00 fleet/tests_sync_integration.py 29 29 2 0 0% 17-83 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854447408-05:00 fleet/urls_consent.py 3 3 0 0 0% 5-9 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854449908-05:00 fleet/urls_logs.py 4 4 0 0 0% 7-13 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854452378-05:00 fleet/urls_manifest.py 3 3 0 0 0% 7-11 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854455198-05:00 fleet/urls_selftest.py 3 3 0 0 0% 6-10 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854460998-05:00 fleet/urls_status.py 4 4 0 0 0% 7-13 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854463668-05:00 fleet/validators.py 25 18 8 0 21% 27-29, 38-52 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854468878-05:00 integrations/__init__.py 18 5 0 0 72% 48, 52, 56, 60, 64 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854471688-05:00 integrations/base.py 122 33 32 12 67% 39, 43-51, 55, 60-62, 96, 99, 100->108, 111-113, 116, 119, 146-147, 161, 165, 176, 179, 186-187, 193, 196, 205, 220 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854474348-05:00 integrations/config.py 57 36 14 0 30% 18, 53-60, 64-66, 74-107, 111-116 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854476848-05:00 integrations/enroll.py 20 10 4 0 42% 28, 37-46, 50, 66 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854480028-05:00 integrations/errors.py 9 2 0 0 78% 35-36 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854482948-05:00 integrations/grafana.py 68 50 22 0 20% 27, 30, 33, 36, 43-50, 60-72, 75-97, 110-123, 126-135, 141 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854485608-05:00 integrations/headscale.py 33 8 12 4 64% 17, 26, 32-35, 42, 47->46, 49 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854488087-05:00 integrations/health.py 20 20 2 0 0% 6-43 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854490667-05:00 integrations/mender.py 79 57 26 0 21% 28-46, 56-74, 77-83, 87-92, 96-97, 102, 105-106, 118-124, 133-134, 148 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854493687-05:00 integrations/rundeck.py 46 25 10 0 38% 44-49, 65-81, 85-89, 95-103, 114-117, 126 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854496267-05:00 integrations/types.py 82 2 0 0 98% 68, 72 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854498767-05:00 integrations/urls.py 3 3 0 0 0% 1-5 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854501287-05:00 integrations/views.py 6 6 0 0 0% 7-16 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854503767-05:00 stores/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854506437-05:00 stores/admin.py 87 30 12 0 58% 95, 101-104, 107-110, 118-121, 142, 145, 148-152, 156-168, 183 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854508997-05:00 stores/api.py 66 66 20 0 0% 35-159 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854511547-05:00 stores/apps.py 5 0 0 0 100% [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854519337-05:00 stores/forms.py 35 20 12 0 32% 73-77, 81-84, 87-105 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854521917-05:00 stores/geocoding.py 115 115 34 0 0% 15-210 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854524337-05:00 stores/management/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854526737-05:00 stores/management/commands/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854529327-05:00 stores/management/commands/check_authority.py 39 39 14 0 0% 14-76 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854531847-05:00 stores/management/commands/migrate_owner_staff.py 73 73 28 0 0% 32-204 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854534447-05:00 stores/management/commands/notify_new_enrolls.py 36 36 8 0 0% 11-75 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854537347-05:00 stores/management/commands/reattach_store.py 50 50 14 0 0% 29-94 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854539887-05:00 stores/management/commands/seed_e2e_fleet.py 231 231 34 0 0% 52-623 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854554537-05:00 stores/management/commands/seed_pilot_stores.py 68 68 16 0 0% 20-141 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854561737-05:00 stores/management/commands/sync_roles.py 24 24 8 0 0% 12-54 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854564797-05:00 stores/map.py 69 69 18 0 0% 19-155 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854567287-05:00 stores/models.py 112 4 0 0 96% 185, 211, 228, 231 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854569727-05:00 stores/scoping.py 5 3 2 0 29% 22-24 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854572127-05:00 stores/tests_api.py 105 105 0 0 0% 12-174 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854574647-05:00 stores/tests_authority.py 128 128 4 0 0% 7-238 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854577047-05:00 stores/tests_basemap.py 41 41 4 0 0% 7-80 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854579447-05:00 stores/tests_collector_config.py 66 66 2 0 0% 8-104 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854581837-05:00 stores/tests_geo.py 72 72 0 0 0% 8-127 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854584367-05:00 stores/tests_map.py 68 68 2 0 0% 6-106 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854592257-05:00 stores/tests_pilot_seed.py 94 94 0 0 0% 7-175 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854594867-05:00 stores/tests_report_config.py 29 29 0 0 0% 6-47 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854597637-05:00 stores/urls.py 4 4 0 0 0% 1-6 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854600047-05:00 stores/views.py 39 39 4 0 0% 2-112 [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854602477-05:00 ----------------------------------------------------------------------------------------------- [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854604917-05:00 TOTAL 5404 4397 788 19 17% [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854607777-05:00 Coverage XML written to file coverage.xml [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854611297-05:00 =========================== short test summary info ============================ [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854613797-05:00 SKIPPED [5] tests/contract/_live.py:75: mender not configured (MENDER_URL/MENDER_API_TOKEN absent) — token not seeded yet [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854621337-05:00 SKIPPED [5] tests/contract/_live.py:101: grafana not configured (GRAFANA_URL/GRAFANA_TOKEN absent) — token not seeded yet [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854623927-05:00 =================== 5 failed, 16 passed, 10 skipped in 9.22s =================== [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854626657-05:00 ===CONTRACT_RC=1=== [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.854629237-05:00 ----- end contract Job logs ----- [pod/app-contract-nightly-staging-lrznr-contract-pod/step-run-contract] 2026-08-02T21:47:35.860473814-05:00 ==> contract run: Failed — STUB-VS-REALITY DRIFT or a live client broke — see the drift report in the Job logs above