===== app-contract-nightly-staging-n4f6g-archive-logs-pod.log ===== [pod/app-contract-nightly-staging-n4f6g-archive-logs-pod/prepare] 2026-07-22T21:47:40.820436516-05:00 2026/07/23 02:47:40 Entrypoint initialization [pod/app-contract-nightly-staging-n4f6g-archive-logs-pod/place-scripts] 2026-07-22T21:47:41.386605086-05:00 2026/07/23 02:47:41 Decoded script /tekton/scripts/script-0-zdvt7 [pod/app-contract-nightly-staging-n4f6g-archive-logs-pod/place-scripts] 2026-07-22T21:47:41.404310835-05:00 2026/07/23 02:47:41 Decoded script /tekton/scripts/script-1-nhgdg [pod/app-contract-nightly-staging-n4f6g-archive-logs-pod/step-collect-logs] 2026-07-22T21:47:44.766970725-05:00 ==> collecting pod logs for PipelineRun=app-contract-nightly-staging-n4f6g ===== app-contract-nightly-staging-n4f6g-contract-pod.log ===== [pod/app-contract-nightly-staging-n4f6g-contract-pod/prepare] 2026-07-22T21:47:05.284574704-05:00 2026/07/23 02:47:05 Entrypoint initialization [pod/app-contract-nightly-staging-n4f6g-contract-pod/place-scripts] 2026-07-22T21:47:07.195561056-05:00 2026/07/23 02:47:07 Decoded script /tekton/scripts/script-0-nwlgm [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:11.149131086-05:00 resolved deployed image: registry.storeminder.ai/storeminder/app:ee7cf4cd9cd61ed4ab4e7538ef34cddf96caed8c [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:11.266958773-05:00 job.batch/app-contract-20260723-024710 created [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.809478735-05:00 ----- contract Job logs (app-contract-20260723-024710) ----- [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912448992-05:00 Installing pytest (runtime image has no test deps)… [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912518362-05:00 Running LIVE read-only contract + parity suite: tests/contract [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912526382-05:00 ============================= test session starts ============================== [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912531981-05:00 platform linux -- Python 3.12.7, pytest-9.1.1, pluggy-1.6.0 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912537281-05:00 django: version: 5.2.16, settings: config.settings (from env) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912541931-05:00 rootdir: /app [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912547111-05:00 configfile: pytest.ini [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912555381-05:00 plugins: django-4.12.0, cov-7.1.0, anyio-4.14.2 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912560851-05:00 collected 31 items [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912566221-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912572511-05:00 tests/contract/test_fixture_parity.py .FFsss [ 19%] [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912578251-05:00 tests/contract/test_grafana_contract.py sss [ 29%] [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912584041-05:00 tests/contract/test_headscale_contract.py ... [ 38%] [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912589261-05:00 tests/contract/test_mender_contract.py ssss [ 51%] [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912594631-05:00 tests/contract/test_rundeck_contract.py FFF [ 61%] [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912599571-05:00 tests/contract/test_shape_selfcheck.py ............ [100%] [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912604821-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912610641-05:00 =================================== FAILURES =================================== [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912615201-05:00 ________________________ test_parity_rundeck_execution _________________________ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912618631-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912622541-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912626131-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912629701-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912633291-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912636741-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912640241-05:00 try: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912644481-05:00 > yield [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912647881-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912651421-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912654941-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912658791-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912662251-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912665771-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912669321-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912673571-05:00 raise exc from None [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912678911-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912684181-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912687801-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912691281-05:00 raise exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912705271-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912707861-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912710251-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912712761-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912715151-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912717501-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912719921-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912722601-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912724931-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912727271-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912730251-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912732681-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912734931-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912738471-05:00 map = {: , : } [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912742461-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912744901-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912747351-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912749711-05:00 try: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912752091-05:00 yield [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912754461-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912756801-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912759201-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912761571-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912763961-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912766241-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912768651-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912770981-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912773361-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912775621-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912777981-05:00 self = [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912780361-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912782761-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912785010-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912787410-05:00 def _request( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912789850-05:00 self, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912792200-05:00 method: str, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912794530-05:00 path: str, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912796900-05:00 *, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912799240-05:00 retry: bool = True, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912801540-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912803860-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912806250-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912808690-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912811070-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912813440-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912815780-05:00 try: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912818140-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912820550-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912827690-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912830120-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912840830-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912843320-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912845880-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912848430-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912850860-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912853280-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912855940-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912858400-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912860840-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912863180-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912865520-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912867830-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912870170-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912872510-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912874920-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912879030-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912881500-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912883900-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912886510-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912889010-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912891300-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912893730-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912896160-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912898580-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912901800-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912904130-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912906500-05:00 try: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912908860-05:00 yield [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912911200-05:00 except Exception as exc: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912913550-05:00 mapped_exc = None [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912915900-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912918360-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912920780-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912923270-05:00 continue [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912925670-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912928060-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912930390-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912932720-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912935220-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912937700-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912940100-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912946970-05:00 raise [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912949370-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912951820-05:00 message = str(exc) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912954190-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912956550-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912958910-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912961440-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912963730-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912966070-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912968340-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912970680-05:00 def test_parity_rundeck_execution(): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912973090-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912975600-05:00 ver = rc.config.extra.get("api_version", "48") [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912978000-05:00 proj = rc.config.extra.get("project", "storeminder") [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912980570-05:00 > execs = (_live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) or {}).get("executions") or [] [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912982960-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912985230-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912988360-05:00 tests/contract/test_fixture_parity.py:73: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912991990-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912995580-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.912999170-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913003040-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913006810-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913011280-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913013780-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913017150-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913020560-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913024130-05:00 self = [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913027850-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913031100-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913034540-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913038140-05:00 def _request( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913041959-05:00 self, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913045859-05:00 method: str, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913049609-05:00 path: str, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913053409-05:00 *, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913057249-05:00 retry: bool = True, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913060789-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913064009-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913067649-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913071399-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913074899-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913078689-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913082169-05:00 try: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913084589-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913087859-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913091379-05:00 last_exc = exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913094049-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913108579-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913111179-05:00 continue [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913113619-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913116159-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913118549-05:00 ) from exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913121519-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913123889-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913126259-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913128679-05:00 __________________________ test_parity_rundeck_output __________________________ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913130939-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913133359-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913135759-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913138099-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913140599-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913142999-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913145379-05:00 try: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913148179-05:00 > yield [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913151429-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913155039-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913159199-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913161739-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913164239-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913166599-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913168959-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913171319-05:00 raise exc from None [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913173819-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913176179-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913178509-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913180879-05:00 raise exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913183329-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913185679-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913188029-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913190359-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913192709-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913195049-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913197389-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913199739-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913202179-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913204529-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913206879-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913209239-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913211489-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913213939-05:00 map = {: , : } [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913220809-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913223159-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913225569-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913227949-05:00 try: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913230279-05:00 yield [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913232609-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913234979-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913237299-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913239639-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913242049-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913244379-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913246719-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913249009-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913251529-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913253879-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913256289-05:00 self = [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913258639-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913261039-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913263369-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913265729-05:00 def _request( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913268089-05:00 self, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913270419-05:00 method: str, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913272769-05:00 path: str, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913275169-05:00 *, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913277519-05:00 retry: bool = True, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913279899-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913282329-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913284719-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913287129-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913289469-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913291859-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913294279-05:00 try: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913296608-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913298998-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913301328-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913303678-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913306038-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913308558-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913310928-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913313328-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913315658-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913317988-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913320418-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913322738-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913329518-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913331968-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913343278-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913347998-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913350358-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913352968-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913355348-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913357708-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913360048-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913362418-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913366638-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913369148-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913371428-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913373938-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913376328-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913378728-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913381078-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913383428-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913385868-05:00 try: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913388218-05:00 yield [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913390588-05:00 except Exception as exc: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913392978-05:00 mapped_exc = None [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913395338-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913397708-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913400088-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913402488-05:00 continue [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913404868-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913407218-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913409608-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913412028-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913414388-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913416768-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913419138-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913421578-05:00 raise [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913423948-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913426308-05:00 message = str(exc) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913428668-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913431088-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913433408-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913435788-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913438048-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913440358-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913442628-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913444978-05:00 def test_parity_rundeck_output(): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913447328-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913449788-05:00 ver = rc.config.extra.get("api_version", "48") [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913452128-05:00 proj = rc.config.extra.get("project", "storeminder") [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913454548-05:00 > execs = (_live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) or {}).get("executions") or [] [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913461178-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913463478-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913465798-05:00 tests/contract/test_fixture_parity.py:90: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913468208-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913470558-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913472968-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913475288-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913477658-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913480048-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913482478-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913484918-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913487198-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913489538-05:00 self = [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913492438-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913494808-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913497068-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913499398-05:00 def _request( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913501778-05:00 self, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913504088-05:00 method: str, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913506428-05:00 path: str, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913508868-05:00 *, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913511288-05:00 retry: bool = True, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913513618-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913515978-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913518418-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913520818-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913523268-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913525648-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913527998-05:00 try: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913533398-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913535868-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913538268-05:00 last_exc = exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913541137-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913544497-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913548437-05:00 continue [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913552037-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913555837-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913559817-05:00 ) from exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913563737-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913566047-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913568407-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913573177-05:00 ____________________________ test_rundeck_reachable ____________________________ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913576627-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913580497-05:00 def test_rundeck_reachable(): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913590797-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913594887-05:00 health = rc.healthcheck() # GET /api/{v}/system/info [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913599007-05:00 > assert health.reachable, f"rundeck unreachable: {health.detail}" [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913609997-05:00 E AssertionError: rundeck unreachable: rundeck: GET /api/48/system/info failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913613977-05:00 E assert False [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913617077-05:00 E + where False = .reachable [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913620477-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913624117-05:00 tests/contract/test_rundeck_contract.py:37: AssertionError [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913628007-05:00 _________________________ test_rundeck_execution_shape _________________________ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913631467-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913635167-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913638067-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913640517-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913642897-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913645357-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913647707-05:00 try: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913650547-05:00 > yield [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913652837-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913655247-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913659147-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913661597-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913664027-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913666417-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913668827-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913671257-05:00 raise exc from None [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913674777-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913677177-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913679607-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913681997-05:00 raise exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913684367-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913686757-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913689117-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913691547-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913693957-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913696277-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913698607-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913700937-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913703247-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913705567-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913707967-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913710457-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913712707-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913715117-05:00 map = {: , : } [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913717427-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913719797-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913727087-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913729497-05:00 try: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913731827-05:00 yield [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913734197-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913736557-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913738897-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913741297-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913743707-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913745967-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913748297-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913750567-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913752927-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913755177-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913757687-05:00 self = [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913760057-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913762407-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913764687-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913767107-05:00 def _request( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913769447-05:00 self, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913771847-05:00 method: str, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913774187-05:00 path: str, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913776527-05:00 *, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913778847-05:00 retry: bool = True, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913781167-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913783487-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913785836-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913788196-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913790586-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913792956-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913795256-05:00 try: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913797676-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913800026-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913802266-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913804606-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913806976-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913809406-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913811746-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913814156-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913816496-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913818836-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913821186-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913823526-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913831016-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913833906-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913836416-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913838936-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913846526-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913848946-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913851286-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913853706-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913856126-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913858486-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913860836-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913863176-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913865546-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913867846-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913870196-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913872526-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913874976-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913877406-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913879746-05:00 try: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913882076-05:00 yield [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913884426-05:00 except Exception as exc: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913886736-05:00 mapped_exc = None [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913889096-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913891456-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913893886-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913896286-05:00 continue [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913898636-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913901036-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913903376-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913905736-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913908166-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913910576-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913913146-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913915526-05:00 raise [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913917956-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913922136-05:00 message = str(exc) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913924536-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913926906-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913929166-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913931516-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913933806-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913936186-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913938466-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913940806-05:00 def test_rundeck_execution_shape(): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913943236-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913945576-05:00 > ex = _recent_execution(rc) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913947946-05:00 ^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913950186-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913952606-05:00 tests/contract/test_rundeck_contract.py:42: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913954986-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913957316-05:00 tests/contract/test_rundeck_contract.py:24: in _recent_execution [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913963736-05:00 data = _live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913966176-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913968596-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913970936-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913973326-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913975766-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913978166-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913980496-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913983656-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913985916-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913988356-05:00 self = [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913991456-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913993806-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913996176-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.913998536-05:00 def _request( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914000976-05:00 self, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914003376-05:00 method: str, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914005716-05:00 path: str, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914008076-05:00 *, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914010426-05:00 retry: bool = True, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914012736-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914015196-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914017546-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914020676-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914023026-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914025386-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914028495-05:00 try: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914032845-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914036725-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914040745-05:00 last_exc = exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914044485-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914048075-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914050965-05:00 continue [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914053305-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914056505-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914060155-05:00 ) from exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914064035-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914067705-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914070185-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914072585-05:00 __________________________ test_rundeck_output_shape ___________________________ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914074855-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914077195-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914083775-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914086245-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914089255-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914091975-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914099965-05:00 try: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914103575-05:00 > yield [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914107125-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914110845-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914114745-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914118575-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914122265-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914125815-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914129335-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914132545-05:00 raise exc from None [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914136165-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914139915-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914143335-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914147005-05:00 raise exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914150525-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914153265-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914156465-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914159945-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914162695-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914165115-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914167535-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914169905-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914172445-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914174885-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914177305-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914179705-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914181975-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914184675-05:00 map = {: , : } [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914186955-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914189355-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914192305-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914194685-05:00 try: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914197005-05:00 yield [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914200015-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914202435-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914204765-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914207095-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914209785-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914212115-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914214465-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914217405-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914220745-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914224495-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914227735-05:00 self = [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914235265-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914237665-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914240015-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914242445-05:00 def _request( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914244825-05:00 self, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914247155-05:00 method: str, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914249475-05:00 path: str, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914251805-05:00 *, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914254115-05:00 retry: bool = True, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914256415-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914258825-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914261195-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914263605-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914265945-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914268285-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914270624-05:00 try: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914272944-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914275334-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914277604-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914279944-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914282314-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914284644-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914286974-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914290514-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914292894-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914295284-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914297744-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914300094-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914302414-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914304774-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914307124-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914309624-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914311984-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914314384-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914316854-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914319214-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914321574-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914329414-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914331924-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914334854-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914349404-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914354264-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914356794-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914359164-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914361554-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914369144-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914371554-05:00 try: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914373924-05:00 yield [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914376294-05:00 except Exception as exc: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914378794-05:00 mapped_exc = None [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914381154-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914383514-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914385854-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914388194-05:00 continue [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914390554-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914393054-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914395454-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914397924-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914400294-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914402724-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914405054-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914407484-05:00 raise [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914409904-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914412254-05:00 message = str(exc) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914414684-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914417124-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914419444-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914421804-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914424074-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914426374-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914428654-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914430974-05:00 def test_rundeck_output_shape(): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914433344-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914435774-05:00 > ex = _recent_execution(rc) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914438124-05:00 ^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914440384-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914442754-05:00 tests/contract/test_rundeck_contract.py:59: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914445164-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914447554-05:00 tests/contract/test_rundeck_contract.py:24: in _recent_execution [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914449874-05:00 data = _live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914452224-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914454654-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914457004-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914459344-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914461764-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914464094-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914466444-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914468854-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914471134-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914473514-05:00 self = [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914475874-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914485674-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914488034-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914490384-05:00 def _request( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914492794-05:00 self, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914495124-05:00 method: str, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914497464-05:00 path: str, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914500074-05:00 *, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914502394-05:00 retry: bool = True, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914504724-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914507044-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914509384-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914511724-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914514064-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914516384-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914518824-05:00 try: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914521164-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914523513-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914525853-05:00 last_exc = exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914528173-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914530543-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914532893-05:00 continue [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914535243-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914537693-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914540043-05:00 ) from exc [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914542493-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914544773-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914547113-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914549473-05:00 ================================ tests coverage ================================ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914551833-05:00 _______________ coverage: platform linux, python 3.12.7-final-0 ________________ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914554083-05:00 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914556503-05:00 Name Stmts Miss Branch BrPart Cover Missing [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914558873-05:00 ----------------------------------------------------------------------------------------------- [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914561293-05:00 config/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914563613-05:00 config/admin_gate.py 90 90 30 0 0% 32-203 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914565933-05:00 config/readiness.py 75 75 12 0 0% 47-184 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914587283-05:00 config/settings.py 54 2 6 3 92% 130->138, 139, 141 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914609143-05:00 config/urls.py 9 9 0 0 0% 2-18 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914613403-05:00 fleet/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914626803-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-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914632663-05:00 fleet/api_consent.py 84 84 32 0 0% 23-170 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914656813-05:00 fleet/api_manifest.py 28 28 8 0 0% 38-90 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914659993-05:00 fleet/apps.py 5 0 0 0 100% [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914663973-05:00 fleet/contacts.py 26 18 8 0 24% 54, 63-70, 82-89, 102-129 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914666963-05:00 fleet/correlate.py 51 51 12 0 0% 28-170 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914670043-05:00 fleet/forms.py 17 8 4 0 43% 17-19, 22-31 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914673053-05:00 fleet/home.py 13 13 4 0 0% 28-51 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914676103-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-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914679143-05:00 fleet/logs.py 113 113 18 0 0% 26-287 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914682103-05:00 fleet/management/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914685403-05:00 fleet/management/commands/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914688333-05:00 fleet/management/commands/poll_selftests.py 24 24 6 0 0% 13-61 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914691253-05:00 fleet/management/commands/reconcile_consents.py 37 37 10 0 0% 19-96 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914694223-05:00 fleet/management/commands/sync_devices.py 222 222 84 0 0% 34-364 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914697163-05:00 fleet/manifest.py 16 16 2 0 0% 32-101 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914700143-05:00 fleet/models.py 136 0 0 0 100% [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914703813-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-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914706893-05:00 fleet/roles.py 27 14 6 0 39% 95-108, 129-133 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914710753-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-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914713763-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-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914717803-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-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914720843-05:00 fleet/tests_authority.py 125 125 2 0 0% 4-229 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914723873-05:00 fleet/tests_consent.py 149 149 0 0 0% 16-284 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914726893-05:00 fleet/tests_consent_event.py 113 113 2 0 0% 9-195 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914729923-05:00 fleet/tests_correlate.py 51 51 4 0 0% 2-83 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914732883-05:00 fleet/tests_logs.py 163 163 2 0 0% 11-242 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914736143-05:00 fleet/tests_manifest.py 80 80 0 0 0% 15-190 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914739063-05:00 fleet/tests_memberships.py 179 179 2 0 0% 15-305 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914748413-05:00 fleet/tests_selftest.py 130 130 0 0 0% 14-255 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914751413-05:00 fleet/tests_status.py 219 219 2 0 0% 8-377 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914754393-05:00 fleet/tests_sync.py 178 178 8 0 0% 21-343 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914757373-05:00 fleet/tests_sync_integration.py 29 29 2 0 0% 17-83 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914760313-05:00 fleet/urls_consent.py 3 3 0 0 0% 5-9 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914763283-05:00 fleet/urls_logs.py 4 4 0 0 0% 7-13 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914766283-05:00 fleet/urls_manifest.py 3 3 0 0 0% 7-11 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914769183-05:00 fleet/urls_selftest.py 3 3 0 0 0% 6-10 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914776183-05:00 fleet/urls_status.py 4 4 0 0 0% 7-13 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914779292-05:00 fleet/validators.py 25 18 8 0 21% 27-29, 38-52 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914782312-05:00 integrations/__init__.py 18 5 0 0 72% 48, 52, 56, 60, 64 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914785702-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-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914788822-05:00 integrations/config.py 57 36 14 0 30% 18, 53-60, 64-66, 74-107, 111-116 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914791802-05:00 integrations/enroll.py 20 10 4 0 42% 28, 37-46, 50, 66 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914794762-05:00 integrations/errors.py 9 2 0 0 78% 35-36 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914798622-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-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914801722-05:00 integrations/headscale.py 33 8 12 4 64% 17, 26, 32-35, 42, 47->46, 49 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914804712-05:00 integrations/health.py 20 20 2 0 0% 6-43 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914807732-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-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914810992-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-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914814212-05:00 integrations/types.py 82 2 0 0 98% 68, 72 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914817242-05:00 integrations/urls.py 3 3 0 0 0% 1-5 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914820232-05:00 integrations/views.py 6 6 0 0 0% 7-16 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914823132-05:00 stores/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914826312-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-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914829332-05:00 stores/api.py 66 66 20 0 0% 35-159 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914832222-05:00 stores/apps.py 5 0 0 0 100% [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914840222-05:00 stores/forms.py 35 20 12 0 32% 73-77, 81-84, 87-105 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914843242-05:00 stores/geocoding.py 115 115 34 0 0% 15-210 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914846172-05:00 stores/management/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914849132-05:00 stores/management/commands/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914852042-05:00 stores/management/commands/check_authority.py 39 39 14 0 0% 14-76 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914855052-05:00 stores/management/commands/migrate_owner_staff.py 73 73 28 0 0% 32-204 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914858882-05:00 stores/management/commands/notify_new_enrolls.py 36 36 8 0 0% 11-75 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914861842-05:00 stores/management/commands/reattach_store.py 50 50 14 0 0% 29-94 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914864812-05:00 stores/management/commands/seed_e2e_fleet.py 231 231 34 0 0% 52-623 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914868672-05:00 stores/management/commands/seed_pilot_stores.py 68 68 16 0 0% 20-141 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914871692-05:00 stores/management/commands/sync_roles.py 24 24 8 0 0% 12-54 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914874712-05:00 stores/map.py 69 69 18 0 0% 19-155 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914878572-05:00 stores/models.py 112 4 0 0 96% 185, 211, 228, 231 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914881552-05:00 stores/scoping.py 5 3 2 0 29% 22-24 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914884552-05:00 stores/tests_api.py 105 105 0 0 0% 12-174 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914887512-05:00 stores/tests_authority.py 128 128 4 0 0% 7-238 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914890562-05:00 stores/tests_basemap.py 41 41 4 0 0% 7-80 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914894602-05:00 stores/tests_collector_config.py 66 66 2 0 0% 8-104 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914897632-05:00 stores/tests_geo.py 72 72 0 0 0% 8-127 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914900672-05:00 stores/tests_map.py 68 68 2 0 0% 6-106 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914918082-05:00 stores/tests_pilot_seed.py 94 94 0 0 0% 7-175 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914931112-05:00 stores/tests_report_config.py 29 29 0 0 0% 6-47 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914935092-05:00 stores/urls.py 4 4 0 0 0% 1-6 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914938162-05:00 stores/views.py 39 39 4 0 0% 2-112 [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914941182-05:00 ----------------------------------------------------------------------------------------------- [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914944142-05:00 TOTAL 5404 4397 788 19 17% [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914947382-05:00 Coverage XML written to file coverage.xml [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914950732-05:00 =========================== short test summary info ============================ [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914954642-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-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914978792-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-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914982002-05:00 ================== 5 failed, 16 passed, 10 skipped in 10.31s =================== [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914985222-05:00 ===CONTRACT_RC=1=== [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.914988252-05:00 ----- end contract Job logs ----- [pod/app-contract-nightly-staging-n4f6g-contract-pod/step-run-contract] 2026-07-22T21:47:37.918897726-05:00 ==> contract run: Failed — STUB-VS-REALITY DRIFT or a live client broke — see the drift report in the Job logs above