===== app-contract-nightly-fpsv7-archive-logs-pod.log ===== [pod/app-contract-nightly-fpsv7-archive-logs-pod/prepare] 2026-08-10T22:17:33.575955442-05:00 2026/08/11 03:17:33 Entrypoint initialization [pod/app-contract-nightly-fpsv7-archive-logs-pod/place-scripts] 2026-08-10T22:17:34.235177100-05:00 2026/08/11 03:17:34 Decoded script /tekton/scripts/script-0-gj62g [pod/app-contract-nightly-fpsv7-archive-logs-pod/place-scripts] 2026-08-10T22:17:34.302010909-05:00 2026/08/11 03:17:34 Decoded script /tekton/scripts/script-1-6bvpx [pod/app-contract-nightly-fpsv7-archive-logs-pod/step-collect-logs] 2026-08-10T22:17:39.125153118-05:00 ==> collecting pod logs for PipelineRun=app-contract-nightly-fpsv7 ===== app-contract-nightly-fpsv7-contract-pod.log ===== [pod/app-contract-nightly-fpsv7-contract-pod/prepare] 2026-08-10T22:17:04.920319240-05:00 2026/08/11 03:17:04 Entrypoint initialization [pod/app-contract-nightly-fpsv7-contract-pod/place-scripts] 2026-08-10T22:17:05.988091139-05:00 2026/08/11 03:17:05 Decoded script /tekton/scripts/script-0-xvmbb [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:09.651083850-05:00 resolved deployed image: registry.storeminder.ai/storeminder/app:5cad235cc948928c86fe0ecbf312ecde7964ab68 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:09.770302963-05:00 job.batch/app-contract-20260811-031709 created [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.691722974-05:00 ----- contract Job logs (app-contract-20260811-031709) ----- [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808689018-05:00 Installing pytest (runtime image has no test deps)… [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808715298-05:00 Running LIVE read-only contract + parity suite: tests/contract [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808721068-05:00 ============================= test session starts ============================== [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808725338-05:00 platform linux -- Python 3.12.7, pytest-9.1.1, pluggy-1.6.0 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808731848-05:00 django: version: 5.2.16, settings: config.settings (from env) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808737128-05:00 rootdir: /app [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808743237-05:00 configfile: pytest.ini [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808749377-05:00 plugins: django-4.14.0, cov-7.1.0, anyio-4.14.2 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808753427-05:00 collected 31 items [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808757257-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808761857-05:00 tests/contract/test_fixture_parity.py .FFsss [ 19%] [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808765957-05:00 tests/contract/test_grafana_contract.py sss [ 29%] [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808769977-05:00 tests/contract/test_headscale_contract.py ... [ 38%] [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808783377-05:00 tests/contract/test_mender_contract.py ssss [ 51%] [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808787437-05:00 tests/contract/test_rundeck_contract.py FFF [ 61%] [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808791377-05:00 tests/contract/test_shape_selfcheck.py ............ [100%] [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808795227-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808799177-05:00 =================================== FAILURES =================================== [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808803147-05:00 ________________________ test_parity_rundeck_execution _________________________ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808806967-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808811347-05:00 @contextlib.contextmanager [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808816947-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808822927-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808827417-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808831287-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808836247-05:00 try: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808840217-05:00 > yield [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808844057-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808847977-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808851917-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808856337-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808860497-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808864457-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808869157-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808873267-05:00 raise exc from None [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808877287-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808881227-05:00 response = connection.handle_request( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808885217-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808889107-05:00 raise exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808908207-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808911317-05:00 stream = self._connect(request) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808914027-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808916747-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808919487-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808922187-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808925587-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808928237-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808930877-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808933787-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808937767-05:00 self.gen.throw(value) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808940517-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808943097-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808946157-05:00 map = {: , : } [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808949557-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808952277-05:00 @contextlib.contextmanager [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808955067-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808957817-05:00 try: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808960447-05:00 yield [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808963187-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808966517-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808970877-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808974897-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808978977-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808981777-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808984707-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808987247-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808989937-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808992497-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808995187-05:00 self = [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.808997887-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809000627-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809003177-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809005787-05:00 def _request( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809008567-05:00 self, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809011227-05:00 method: str, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809013897-05:00 path: str, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809016637-05:00 *, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809019277-05:00 retry: bool = True, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809021897-05:00 **kwargs: Any, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809024587-05:00 ) -> httpx.Response: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809027287-05:00 client = self._ensure_client() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809030017-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809032737-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809035497-05:00 for attempt in range(attempts): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809038997-05:00 try: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809041657-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809044967-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809055717-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809058607-05:00 integrations/base.py:135: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809066887-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809069807-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809072657-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809075347-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809078047-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809080777-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809083497-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809086267-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809088987-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809091707-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809094407-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809097147-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809099877-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809102567-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809105267-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809108037-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809110647-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809113387-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809116037-05:00 self.gen.throw(value) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809118807-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809122087-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809126127-05:00 @contextlib.contextmanager [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809130027-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809133617-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809136327-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809139047-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809141727-05:00 try: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809144416-05:00 yield [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809147076-05:00 except Exception as exc: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809149716-05:00 mapped_exc = None [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809152436-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809155096-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809157866-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809160546-05:00 continue [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809163266-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809166026-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809169406-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809172096-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809175106-05:00 mapped_exc = to_exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809177846-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809180656-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809188306-05:00 raise [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809190966-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809193676-05:00 message = str(exc) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809196366-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809200816-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809204716-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809208566-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809211696-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809214536-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809217106-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809219866-05:00 def test_parity_rundeck_execution(): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809222576-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809225266-05:00 ver = rc.config.extra.get("api_version", "48") [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809228006-05:00 proj = rc.config.extra.get("project", "storeminder") [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809230726-05:00 > execs = (_live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) or {}).get("executions") or [] [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809233766-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809236386-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809239036-05:00 tests/contract/test_fixture_parity.py:73: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809241796-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809244576-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809247216-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809249916-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809252676-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809255726-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809258386-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809261036-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809263576-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809266196-05:00 self = [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809268836-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809271516-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809274066-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809280786-05:00 def _request( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809284716-05:00 self, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809288026-05:00 method: str, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809290766-05:00 path: str, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809293586-05:00 *, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809296926-05:00 retry: bool = True, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809299556-05:00 **kwargs: Any, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809302176-05:00 ) -> httpx.Response: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809304886-05:00 client = self._ensure_client() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809339236-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809343426-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809347346-05:00 for attempt in range(attempts): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809351826-05:00 try: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809357536-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809363346-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809367436-05:00 last_exc = exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809376656-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809383666-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809386496-05:00 continue [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809389656-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809392326-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809395026-05:00 ) from exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809398116-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809400696-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809403396-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809406076-05:00 __________________________ test_parity_rundeck_output __________________________ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809408636-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809411276-05:00 @contextlib.contextmanager [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809413936-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809416656-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809419306-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809421956-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809424646-05:00 try: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809427396-05:00 > yield [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809431146-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809435456-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809439586-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809442996-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809445666-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809448306-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809451106-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809453766-05:00 raise exc from None [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809456406-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809459036-05:00 response = connection.handle_request( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809461776-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809464466-05:00 raise exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809467116-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809469786-05:00 stream = self._connect(request) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809472496-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809475236-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809477916-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809480586-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809483266-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809485976-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809488646-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809491286-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809493996-05:00 self.gen.throw(value) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809496706-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809503986-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809507716-05:00 map = {: , : } [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809511496-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809515606-05:00 @contextlib.contextmanager [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809519436-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809522716-05:00 try: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809525386-05:00 yield [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809528166-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809530866-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809533556-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809536256-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809539676-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809542236-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809545475-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809548085-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809550785-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809553365-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809555985-05:00 self = [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809558645-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809561385-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809563995-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809566625-05:00 def _request( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809569325-05:00 self, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809571985-05:00 method: str, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809574605-05:00 path: str, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809577225-05:00 *, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809579855-05:00 retry: bool = True, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809582465-05:00 **kwargs: Any, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809586275-05:00 ) -> httpx.Response: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809590605-05:00 client = self._ensure_client() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809594515-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809597705-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809600425-05:00 for attempt in range(attempts): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809603065-05:00 try: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809605755-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809608405-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809610945-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809613655-05:00 integrations/base.py:135: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809616425-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809619095-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809628425-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809634665-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809637565-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809640215-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809642845-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809645455-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809651535-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809659295-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809662015-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809664705-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809667315-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809670005-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809674475-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809677255-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809679905-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809682635-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809687755-05:00 self.gen.throw(value) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809690485-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809693035-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809695705-05:00 @contextlib.contextmanager [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809698355-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809701975-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809706275-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809711165-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809714335-05:00 try: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809716985-05:00 yield [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809719605-05:00 except Exception as exc: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809722235-05:00 mapped_exc = None [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809724865-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809727575-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809730215-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809732875-05:00 continue [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809735515-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809738155-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809740845-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809743525-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809746155-05:00 mapped_exc = to_exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809748845-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809752105-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809754745-05:00 raise [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809757345-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809759985-05:00 message = str(exc) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809762665-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809765305-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809767815-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809770495-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809773065-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809775735-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809779295-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809783105-05:00 def test_parity_rundeck_output(): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809787035-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809790335-05:00 ver = rc.config.extra.get("api_version", "48") [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809792935-05:00 proj = rc.config.extra.get("project", "storeminder") [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809795635-05:00 > execs = (_live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) or {}).get("executions") or [] [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809802835-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809805405-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809808035-05:00 tests/contract/test_fixture_parity.py:90: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809810715-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809813355-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809815975-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809818595-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809821355-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809823995-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809826645-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809829365-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809831915-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809834535-05:00 self = [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809837185-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809839825-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809842415-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809845035-05:00 def _request( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809847715-05:00 self, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809850335-05:00 method: str, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809852955-05:00 path: str, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809856715-05:00 *, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809860655-05:00 retry: bool = True, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809864605-05:00 **kwargs: Any, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809867825-05:00 ) -> httpx.Response: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809870565-05:00 client = self._ensure_client() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809873195-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809875825-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809878465-05:00 for attempt in range(attempts): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809881095-05:00 try: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809883715-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809887255-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809889945-05:00 last_exc = exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809892575-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809895255-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809897885-05:00 continue [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809900505-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809903175-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809905805-05:00 ) from exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809908555-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809911125-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809913775-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809916435-05:00 ____________________________ test_rundeck_reachable ____________________________ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809918995-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809921605-05:00 def test_rundeck_reachable(): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809927265-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809929995-05:00 health = rc.healthcheck() # GET /api/{v}/system/info [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809940855-05:00 > assert health.reachable, f"rundeck unreachable: {health.detail}" [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809944435-05:00 E AssertionError: rundeck unreachable: rundeck: GET /api/48/system/info failed: [Errno 111] Connection refused [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809947114-05:00 E assert False [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809949754-05:00 E + where False = .reachable [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809952294-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809954924-05:00 tests/contract/test_rundeck_contract.py:37: AssertionError [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809957774-05:00 _________________________ test_rundeck_execution_shape _________________________ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809960404-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809963024-05:00 @contextlib.contextmanager [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809965674-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809968314-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809971004-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809973654-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809976364-05:00 try: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809978984-05:00 > yield [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809981524-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809984174-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809986854-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809989554-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809992264-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809994894-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.809997554-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810000194-05:00 raise exc from None [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810002864-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810005564-05:00 response = connection.handle_request( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810008914-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810012864-05:00 raise exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810016794-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810020384-05:00 stream = self._connect(request) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810023104-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810025744-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810028434-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810031104-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810033714-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810036354-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810038994-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810041604-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810044224-05:00 self.gen.throw(value) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810046864-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810049394-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810052094-05:00 map = {: , : } [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810059344-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810062044-05:00 @contextlib.contextmanager [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810064704-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810067334-05:00 try: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810069974-05:00 yield [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810072644-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810075284-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810077944-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810080564-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810083184-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810086564-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810090654-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810094204-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810097484-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810099994-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810102974-05:00 self = [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810105614-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810108254-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810110804-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810113484-05:00 def _request( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810116124-05:00 self, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810118764-05:00 method: str, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810121394-05:00 path: str, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810124054-05:00 *, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810126664-05:00 retry: bool = True, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810129264-05:00 **kwargs: Any, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810131864-05:00 ) -> httpx.Response: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810134474-05:00 client = self._ensure_client() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810137104-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810140014-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810142694-05:00 for attempt in range(attempts): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810145324-05:00 try: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810147924-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810150524-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810153044-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810155644-05:00 integrations/base.py:135: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810158294-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810161314-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810165024-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810169024-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810172714-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810175444-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810178144-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810180894-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810186464-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810189164-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810191894-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810198934-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810201594-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810204194-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810206814-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810209424-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810212054-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810214774-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810217434-05:00 self.gen.throw(value) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810220104-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810222634-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810225244-05:00 @contextlib.contextmanager [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810227934-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810230544-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810233154-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810235824-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810239484-05:00 try: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810243404-05:00 yield [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810247394-05:00 except Exception as exc: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810250854-05:00 mapped_exc = None [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810253514-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810256204-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810258894-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810261514-05:00 continue [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810264174-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810266864-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810269534-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810272184-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810274844-05:00 mapped_exc = to_exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810277514-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810280214-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810283024-05:00 raise [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810285724-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810288354-05:00 message = str(exc) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810291034-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810293724-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810296274-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810298924-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810301474-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810304144-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810306704-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810309304-05:00 def test_rundeck_execution_shape(): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810311934-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810315074-05:00 > ex = _recent_execution(rc) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810318794-05:00 ^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810322624-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810327154-05:00 tests/contract/test_rundeck_contract.py:42: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810329854-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810337224-05:00 tests/contract/test_rundeck_contract.py:24: in _recent_execution [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810339964-05:00 data = _live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810342564-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810345224-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810347864-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810350493-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810353163-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810355773-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810358433-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810361193-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810363733-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810366393-05:00 self = [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810369093-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810371773-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810374323-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810376913-05:00 def _request( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810379613-05:00 self, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810382283-05:00 method: str, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810384933-05:00 path: str, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810387583-05:00 *, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810390233-05:00 retry: bool = True, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810394143-05:00 **kwargs: Any, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810398143-05:00 ) -> httpx.Response: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810401933-05:00 client = self._ensure_client() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810405113-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810407823-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810410503-05:00 for attempt in range(attempts): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810413123-05:00 try: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810415743-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810418413-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810421053-05:00 last_exc = exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810423703-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810426383-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810429003-05:00 continue [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810431623-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810434243-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810436883-05:00 ) from exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810440793-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810443383-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810446013-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810448693-05:00 __________________________ test_rundeck_output_shape ___________________________ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810451283-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810453993-05:00 @contextlib.contextmanager [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810460273-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810463043-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810465823-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810481363-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810484163-05:00 try: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810486803-05:00 > yield [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810489343-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810491943-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810494803-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810497453-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810500073-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810502773-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810505503-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810508183-05:00 raise exc from None [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810510873-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810514283-05:00 response = connection.handle_request( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810516983-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810519603-05:00 raise exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810522273-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810524943-05:00 stream = self._connect(request) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810527663-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810530343-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810533033-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810535743-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810538373-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810540993-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810543603-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810547663-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810551733-05:00 self.gen.throw(value) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810555503-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810558993-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810561723-05:00 map = {: , : } [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810564243-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810566833-05:00 @contextlib.contextmanager [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810569453-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810572113-05:00 try: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810574723-05:00 yield [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810577333-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810579933-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810582533-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810585113-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810587733-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810590253-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810592843-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810595403-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810597963-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810605503-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810608183-05:00 self = [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810610773-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810613393-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810615923-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810618493-05:00 def _request( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810626873-05:00 self, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810633513-05:00 method: str, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810636553-05:00 path: str, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810639133-05:00 *, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810641693-05:00 retry: bool = True, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810644323-05:00 **kwargs: Any, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810646983-05:00 ) -> httpx.Response: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810649583-05:00 client = self._ensure_client() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810652283-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810654973-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810657653-05:00 for attempt in range(attempts): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810660273-05:00 try: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810662883-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810665543-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810668073-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810670663-05:00 integrations/base.py:135: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810673313-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810675943-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810678583-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810681233-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810683843-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810686453-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810689073-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810691743-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810694403-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810697023-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810700633-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810704473-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810709363-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810712463-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810715073-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810717713-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810720383-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810726153-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810728853-05:00 self.gen.throw(value) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810731513-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810734023-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810736593-05:00 @contextlib.contextmanager [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810739213-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810741833-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810749862-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810752612-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810755302-05:00 try: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810758632-05:00 yield [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810761312-05:00 except Exception as exc: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810763962-05:00 mapped_exc = None [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810766572-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810769232-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810771942-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810774602-05:00 continue [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810778372-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810782242-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810786172-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810789952-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810792652-05:00 mapped_exc = to_exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810795342-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810797972-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810800692-05:00 raise [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810803302-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810806652-05:00 message = str(exc) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810809282-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810811892-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810814412-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810817092-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810819592-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810822242-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810824792-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810827402-05:00 def test_rundeck_output_shape(): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810830022-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810832632-05:00 > ex = _recent_execution(rc) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810835222-05:00 ^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810837752-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810840302-05:00 tests/contract/test_rundeck_contract.py:59: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810842912-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810845542-05:00 tests/contract/test_rundeck_contract.py:24: in _recent_execution [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810848152-05:00 data = _live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810850782-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810854442-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810858352-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810862132-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810865412-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810868002-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810870602-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810873182-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810875682-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810878232-05:00 self = [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810886012-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810888692-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810891222-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810893802-05:00 def _request( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810896442-05:00 self, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810899062-05:00 method: str, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810901662-05:00 path: str, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810904262-05:00 *, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810906842-05:00 retry: bool = True, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810909492-05:00 **kwargs: Any, [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810912092-05:00 ) -> httpx.Response: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810914752-05:00 client = self._ensure_client() [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810917382-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810919992-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810922572-05:00 for attempt in range(attempts): [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810925172-05:00 try: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810927762-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810931342-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810935332-05:00 last_exc = exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810939202-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810942442-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810945072-05:00 continue [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810947672-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810950282-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810952902-05:00 ) from exc [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810955632-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810958162-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810960752-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810963442-05:00 ================================ tests coverage ================================ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810966072-05:00 _______________ coverage: platform linux, python 3.12.7-final-0 ________________ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810968572-05:00 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810972672-05:00 Name Stmts Miss Branch BrPart Cover Missing [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810975382-05:00 ------------------------------------------------------------------------------------------------- [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810978062-05:00 config/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810980652-05:00 config/admin_gate.py 90 90 30 0 0% 32-203 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810983362-05:00 config/readiness.py 75 75 12 0 0% 47-184 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.810998612-05:00 config/settings.py 58 2 6 3 92% 130->138, 139, 141 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811010242-05:00 config/urls.py 9 9 0 0 0% 2-18 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811017392-05:00 fleet/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811021212-05:00 fleet/admin.py 292 122 46 0 50% 74-75, 79, 82-85, 99, 103, 106, 140, 146-147, 169, 172, 193, 196, 207, 211, 258-267, 275-281, 286-296, 309-311, 340-344, 348-356, 360-363, 368-385, 390-404, 413-424, 460, 464-467, 471-500, 504-510, 524, 534-549, 584, 588 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811040682-05:00 fleet/api_consent.py 84 84 32 0 0% 23-170 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811043642-05:00 fleet/api_manifest.py 28 28 8 0 0% 38-90 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811046332-05:00 fleet/apps.py 7 0 0 0 100% [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811049272-05:00 fleet/contacts.py 26 18 8 0 24% 54, 63-70, 82-89, 102-129 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811051952-05:00 fleet/correlate.py 51 51 12 0 0% 28-170 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811054622-05:00 fleet/device_sts.py 65 65 14 0 0% 36-220 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811058242-05:00 fleet/deviceconfig.py 180 123 68 0 23% 106, 113, 118, 123, 129, 141, 166-219, 224, 238-253, 277-331, 342-353, 357-359, 363-374, 383-385, 395-397, 403-415 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811060972-05:00 fleet/forms.py 17 8 4 0 43% 17-19, 22-31 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811063962-05:00 fleet/home.py 13 13 4 0 0% 28-51 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811066682-05:00 fleet/integrity.py 36 30 26 0 10% 23-28, 33-39, 44-47, 52-59, 64-70 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811069892-05:00 fleet/knowledge.py 48 36 22 0 17% 41-51, 57-76, 88-101, 107-109, 121 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811072752-05:00 fleet/knowledge_seed.py 4 4 0 0 0% 26-140 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811075462-05:00 fleet/logs.py 113 113 18 0 0% 26-287 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811078142-05:00 fleet/management/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811081522-05:00 fleet/management/commands/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811084232-05:00 fleet/management/commands/poll_selftests.py 24 24 6 0 0% 13-61 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811087572-05:00 fleet/management/commands/reconcile_consents.py 37 37 10 0 0% 19-96 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811090312-05:00 fleet/management/commands/reconcile_deviceconfig.py 60 60 24 0 0% 26-148 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811092952-05:00 fleet/management/commands/sync_devices.py 222 222 84 0 0% 34-364 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811095612-05:00 fleet/manifest.py 28 28 4 0 0% 37-126 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811098262-05:00 fleet/models.py 174 16 14 0 84% 584-598, 606-616 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811101232-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-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811103852-05:00 fleet/roles.py 27 14 6 0 39% 95-108, 129-133 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811106832-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-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811109622-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-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811112742-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-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811120572-05:00 fleet/tests_authority.py 125 125 2 0 0% 4-229 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811123262-05:00 fleet/tests_consent.py 149 149 0 0 0% 16-284 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811125882-05:00 fleet/tests_consent_event.py 113 113 2 0 0% 9-195 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811128502-05:00 fleet/tests_correlate.py 51 51 4 0 0% 2-83 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811131102-05:00 fleet/tests_device_sts.py 150 150 2 0 0% 12-280 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811133892-05:00 fleet/tests_deviceconfig.py 334 334 4 0 0% 24-516 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811136522-05:00 fleet/tests_knowledge.py 178 178 6 0 0% 18-322 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811143772-05:00 fleet/tests_logs.py 163 163 2 0 0% 11-242 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811146682-05:00 fleet/tests_manifest.py 92 92 0 0 0% 15-218 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811149302-05:00 fleet/tests_memberships.py 179 179 2 0 0% 15-305 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811153101-05:00 fleet/tests_selftest.py 130 130 0 0 0% 14-255 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811155811-05:00 fleet/tests_status.py 219 219 2 0 0% 8-377 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811158501-05:00 fleet/tests_sync.py 178 178 8 0 0% 21-343 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811161161-05:00 fleet/tests_sync_integration.py 29 29 2 0 0% 17-83 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811163881-05:00 fleet/urls_consent.py 3 3 0 0 0% 5-9 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811166521-05:00 fleet/urls_logs.py 4 4 0 0 0% 7-13 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811169101-05:00 fleet/urls_manifest.py 3 3 0 0 0% 7-11 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811171681-05:00 fleet/urls_selftest.py 3 3 0 0 0% 6-10 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811174281-05:00 fleet/urls_status.py 4 4 0 0 0% 7-13 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811176981-05:00 fleet/validators.py 25 18 8 0 21% 27-29, 38-52 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811179681-05:00 integrations/__init__.py 18 5 0 0 72% 48, 52, 56, 60, 64 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811182371-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-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811185121-05:00 integrations/config.py 57 36 14 0 30% 18, 53-60, 64-66, 74-107, 111-116 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811187871-05:00 integrations/enroll.py 20 10 4 0 42% 28, 37-46, 50, 66 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811190561-05:00 integrations/errors.py 9 2 0 0 78% 35-36 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811193481-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-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811196511-05:00 integrations/headscale.py 33 8 12 4 64% 17, 26, 32-35, 42, 47->46, 49 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811204001-05:00 integrations/health.py 20 20 2 0 0% 6-43 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811206721-05:00 integrations/mender.py 116 85 38 0 20% 33-51, 61-79, 82-88, 92-97, 101-102, 111-121, 131-133, 143-153, 158, 161-162, 174-180, 189-190, 210-218, 221, 231 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811210181-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-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811212801-05:00 integrations/types.py 90 2 0 0 98% 68, 72 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811215391-05:00 integrations/urls.py 3 3 0 0 0% 1-5 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811218011-05:00 integrations/views.py 6 6 0 0 0% 7-16 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811220651-05:00 stores/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811223361-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-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811226021-05:00 stores/api.py 66 66 20 0 0% 35-159 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811228721-05:00 stores/apps.py 5 0 0 0 100% [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811231371-05:00 stores/forms.py 35 20 12 0 32% 73-77, 81-84, 87-105 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811234011-05:00 stores/geocoding.py 115 115 34 0 0% 15-210 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811237461-05:00 stores/management/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811240161-05:00 stores/management/commands/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811242821-05:00 stores/management/commands/check_authority.py 39 39 14 0 0% 14-76 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811245501-05:00 stores/management/commands/migrate_owner_staff.py 73 73 28 0 0% 32-204 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811248161-05:00 stores/management/commands/notify_new_enrolls.py 36 36 8 0 0% 11-75 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811250781-05:00 stores/management/commands/reattach_store.py 50 50 14 0 0% 29-94 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811259301-05:00 stores/management/commands/seed_e2e_fleet.py 231 231 34 0 0% 52-623 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811262311-05:00 stores/management/commands/seed_pilot_stores.py 68 68 16 0 0% 20-141 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811265161-05:00 stores/management/commands/sync_roles.py 24 24 8 0 0% 12-54 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811267801-05:00 stores/map.py 69 69 18 0 0% 19-155 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811270451-05:00 stores/models.py 112 4 0 0 96% 185, 211, 228, 231 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811273661-05:00 stores/scoping.py 5 3 2 0 29% 22-24 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811277501-05:00 stores/tests_api.py 105 105 0 0 0% 12-174 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811281561-05:00 stores/tests_authority.py 128 128 4 0 0% 7-238 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811285411-05:00 stores/tests_basemap.py 41 41 4 0 0% 7-80 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811295501-05:00 stores/tests_collector_config.py 66 66 2 0 0% 8-104 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811299121-05:00 stores/tests_geo.py 72 72 0 0 0% 8-127 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811302701-05:00 stores/tests_map.py 68 68 2 0 0% 6-106 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811306351-05:00 stores/tests_pilot_seed.py 94 94 0 0 0% 7-175 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811310031-05:00 stores/tests_report_config.py 29 29 0 0 0% 6-47 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811314081-05:00 stores/urls.py 4 4 0 0 0% 1-6 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811318781-05:00 stores/views.py 40 40 4 0 0% 2-117 [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811323391-05:00 ------------------------------------------------------------------------------------------------- [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811327341-05:00 TOTAL 6573 5433 968 19 15% [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811330641-05:00 Coverage XML written to file coverage.xml [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811333651-05:00 =========================== short test summary info ============================ [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811336351-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-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811339031-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-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811341811-05:00 =================== 5 failed, 16 passed, 10 skipped in 9.83s =================== [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811344931-05:00 ===CONTRACT_RC=1=== [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811347561-05:00 ----- end contract Job logs ----- [pod/app-contract-nightly-fpsv7-contract-pod/step-run-contract] 2026-08-10T22:17:30.811350521-05:00 ==> contract run: Failed — STUB-VS-REALITY DRIFT or a live client broke — see the drift report in the Job logs above