===== app-contract-nightly-4z5sr-archive-logs-pod.log ===== [pod/app-contract-nightly-4z5sr-archive-logs-pod/prepare] 2026-08-06T22:17:31.614935038-05:00 2026/08/07 03:17:31 Entrypoint initialization [pod/app-contract-nightly-4z5sr-archive-logs-pod/place-scripts] 2026-08-06T22:17:32.696654154-05:00 2026/08/07 03:17:32 Decoded script /tekton/scripts/script-0-mc5ks [pod/app-contract-nightly-4z5sr-archive-logs-pod/place-scripts] 2026-08-06T22:17:32.713264676-05:00 2026/08/07 03:17:32 Decoded script /tekton/scripts/script-1-n5ptl [pod/app-contract-nightly-4z5sr-archive-logs-pod/step-collect-logs] 2026-08-06T22:17:35.065370133-05:00 ==> collecting pod logs for PipelineRun=app-contract-nightly-4z5sr ===== app-contract-nightly-4z5sr-contract-pod.log ===== [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:08.795474194-05:00 resolved deployed image: registry.storeminder.ai/storeminder/app:003dc2f197336849905987c1b43df01cc1ba912c [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:08.888021663-05:00 job.batch/app-contract-20260807-031708 created [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.488792706-05:00 ----- contract Job logs (app-contract-20260807-031708) ----- [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663514137-05:00 Installing pytest (runtime image has no test deps)… [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663536997-05:00 Running LIVE read-only contract + parity suite: tests/contract [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663542927-05:00 ============================= test session starts ============================== [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663548157-05:00 platform linux -- Python 3.12.7, pytest-9.1.1, pluggy-1.6.0 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663552687-05:00 django: version: 5.2.16, settings: config.settings (from env) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663557897-05:00 rootdir: /app [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663562747-05:00 configfile: pytest.ini [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663567617-05:00 plugins: django-4.13.0, cov-7.1.0, anyio-4.14.2 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663572217-05:00 collected 31 items [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663576617-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663581227-05:00 tests/contract/test_fixture_parity.py .FFsss [ 19%] [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663585967-05:00 tests/contract/test_grafana_contract.py sss [ 29%] [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663590417-05:00 tests/contract/test_headscale_contract.py ... [ 38%] [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663594836-05:00 tests/contract/test_mender_contract.py ssss [ 51%] [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663599306-05:00 tests/contract/test_rundeck_contract.py FFF [ 61%] [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663603856-05:00 tests/contract/test_shape_selfcheck.py ............ [100%] [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663608336-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663613076-05:00 =================================== FAILURES =================================== [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663618456-05:00 ________________________ test_parity_rundeck_execution _________________________ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663632826-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663638166-05:00 @contextlib.contextmanager [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663643486-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663648146-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663652546-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663657226-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663675256-05:00 try: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663681656-05:00 > yield [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663686446-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663691016-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663697326-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663702456-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663707046-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663711656-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663716196-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663720656-05:00 raise exc from None [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663725146-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663729666-05:00 response = connection.handle_request( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663734136-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663738586-05:00 raise exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663757766-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663761026-05:00 stream = self._connect(request) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663764136-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663767186-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663770266-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663773286-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663776356-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663779415-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663782455-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663785465-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663789575-05:00 self.gen.throw(value) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663792705-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663795655-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663799895-05:00 map = {: , : } [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663803605-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663806775-05:00 @contextlib.contextmanager [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663809945-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663813035-05:00 try: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663816135-05:00 yield [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663819215-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663822245-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663825315-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663828445-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663831475-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663834415-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663837445-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663840435-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663843435-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663846375-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663849345-05:00 self = [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663852375-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663855435-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663858365-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663861445-05:00 def _request( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663864505-05:00 self, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663867575-05:00 method: str, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663870605-05:00 path: str, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663873745-05:00 *, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663876795-05:00 retry: bool = True, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663879805-05:00 **kwargs: Any, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663882805-05:00 ) -> httpx.Response: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663885815-05:00 client = self._ensure_client() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663888925-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663891975-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663895025-05:00 for attempt in range(attempts): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663898095-05:00 try: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663901145-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663904225-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663912325-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663915445-05:00 integrations/base.py:135: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663926045-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663929425-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663932555-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663935595-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663938635-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663941635-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663944695-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663947855-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663951595-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663954645-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663957745-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663960845-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663963895-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663966904-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663969954-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663973134-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663976164-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663979164-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663982194-05:00 self.gen.throw(value) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663985234-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663988184-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663991204-05:00 @contextlib.contextmanager [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663994254-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.663997324-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664000374-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664003414-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664006434-05:00 try: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664009504-05:00 yield [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664012514-05:00 except Exception as exc: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664015374-05:00 mapped_exc = None [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664017794-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664020174-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664022724-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664025174-05:00 continue [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664027634-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664029964-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664032304-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664034614-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664037024-05:00 mapped_exc = to_exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664039444-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664041784-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664048074-05:00 raise [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664050454-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664052774-05:00 message = str(exc) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664055164-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664057484-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664059704-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664062064-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664064314-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664066684-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664069064-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664071374-05:00 def test_parity_rundeck_execution(): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664073684-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664076144-05:00 ver = rc.config.extra.get("api_version", "48") [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664078454-05:00 proj = rc.config.extra.get("project", "storeminder") [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664080874-05:00 > execs = (_live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) or {}).get("executions") or [] [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664083224-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664085454-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664087814-05:00 tests/contract/test_fixture_parity.py:73: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664090174-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664092574-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664094864-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664097224-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664099844-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664102234-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664104584-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664106894-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664109124-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664111434-05:00 self = [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664113734-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664116214-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664118494-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664120794-05:00 def _request( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664123244-05:00 self, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664125554-05:00 method: str, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664127894-05:00 path: str, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664130224-05:00 *, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664132574-05:00 retry: bool = True, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664134944-05:00 **kwargs: Any, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664137314-05:00 ) -> httpx.Response: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664139644-05:00 client = self._ensure_client() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664142754-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664145084-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664147474-05:00 for attempt in range(attempts): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664149794-05:00 try: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664152094-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664154533-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664156873-05:00 last_exc = exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664163293-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664168633-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664171073-05:00 continue [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664173393-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664175783-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664178113-05:00 ) from exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664181583-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664183833-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664186203-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664188643-05:00 __________________________ test_parity_rundeck_output __________________________ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664190893-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664193273-05:00 @contextlib.contextmanager [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664195623-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664197933-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664200273-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664202623-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664205023-05:00 try: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664207403-05:00 > yield [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664209663-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664211983-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664214373-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664216733-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664219163-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664221493-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664226473-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664229043-05:00 raise exc from None [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664231573-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664234363-05:00 response = connection.handle_request( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664237073-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664240183-05:00 raise exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664242913-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664245743-05:00 stream = self._connect(request) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664248353-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664250823-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664288883-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664292943-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664296903-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664301353-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664305163-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664309053-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664313033-05:00 self.gen.throw(value) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664316583-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664329333-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664331833-05:00 map = {: , : } [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664334093-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664336373-05:00 @contextlib.contextmanager [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664338853-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664341223-05:00 try: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664343612-05:00 yield [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664345952-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664348272-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664350702-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664352992-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664355362-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664357632-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664360082-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664362332-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664365022-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664367252-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664369612-05:00 self = [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664371982-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664374302-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664376572-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664378942-05:00 def _request( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664381252-05:00 self, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664383552-05:00 method: str, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664386152-05:00 path: str, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664388572-05:00 *, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664390852-05:00 retry: bool = True, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664393212-05:00 **kwargs: Any, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664395612-05:00 ) -> httpx.Response: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664397962-05:00 client = self._ensure_client() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664400362-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664402692-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664405042-05:00 for attempt in range(attempts): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664407632-05:00 try: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664409922-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664412302-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664414542-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664416812-05:00 integrations/base.py:135: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664419362-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664421772-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664424102-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664427182-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664429562-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664431902-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664434402-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664436772-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664441992-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664448502-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664450892-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664453232-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664455592-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664458072-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664460672-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664462972-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664465322-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664467662-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664469972-05:00 self.gen.throw(value) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664472382-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664474602-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664477922-05:00 @contextlib.contextmanager [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664480252-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664482702-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664485022-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664487382-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664489762-05:00 try: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664492092-05:00 yield [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664494382-05:00 except Exception as exc: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664496792-05:00 mapped_exc = None [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664499122-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664501512-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664503822-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664506162-05:00 continue [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664509002-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664511392-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664513782-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664516842-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664519142-05:00 mapped_exc = to_exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664521542-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664523912-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664526242-05:00 raise [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664528642-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664530991-05:00 message = str(exc) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664533411-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664535911-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664538161-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664540531-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664542791-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664545161-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664547411-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664550771-05:00 def test_parity_rundeck_output(): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664553181-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664555831-05:00 ver = rc.config.extra.get("api_version", "48") [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664558251-05:00 proj = rc.config.extra.get("project", "storeminder") [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664560621-05:00 > execs = (_live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) or {}).get("executions") or [] [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664566991-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664569251-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664571591-05:00 tests/contract/test_fixture_parity.py:90: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664573961-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664576251-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664578651-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664581051-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664583381-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664585731-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664588101-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664590921-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664593141-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664595511-05:00 self = [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664598741-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664601081-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664603311-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664605691-05:00 def _request( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664608161-05:00 self, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664610471-05:00 method: str, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664612841-05:00 path: str, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664615161-05:00 *, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664618161-05:00 retry: bool = True, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664620471-05:00 **kwargs: Any, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664622771-05:00 ) -> httpx.Response: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664625171-05:00 client = self._ensure_client() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664627641-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664629951-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664632441-05:00 for attempt in range(attempts): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664634871-05:00 try: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664637291-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664639621-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664641921-05:00 last_exc = exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664644361-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664647411-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664649781-05:00 continue [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664652241-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664654611-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664657141-05:00 ) from exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664664511-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664668591-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664670911-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664673421-05:00 ____________________________ test_rundeck_reachable ____________________________ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664675661-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664678741-05:00 def test_rundeck_reachable(): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664684231-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664687411-05:00 health = rc.healthcheck() # GET /api/{v}/system/info [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664693941-05:00 > assert health.reachable, f"rundeck unreachable: {health.detail}" [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664696421-05:00 E AssertionError: rundeck unreachable: rundeck: GET /api/48/system/info failed: [Errno 111] Connection refused [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664698741-05:00 E assert False [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664701211-05:00 E + where False = .reachable [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664703431-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664705781-05:00 tests/contract/test_rundeck_contract.py:37: AssertionError [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664708211-05:00 _________________________ test_rundeck_execution_shape _________________________ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664710471-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664712871-05:00 @contextlib.contextmanager [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664715181-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664717470-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664719840-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664722220-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664724530-05:00 try: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664727340-05:00 > yield [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664729570-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664731950-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664734330-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664737190-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664739490-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664741860-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664744880-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664747290-05:00 raise exc from None [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664749700-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664752140-05:00 response = connection.handle_request( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664754540-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664756880-05:00 raise exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664759280-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664761650-05:00 stream = self._connect(request) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664763960-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664766340-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664768720-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664771030-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664773380-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664775700-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664778020-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664780370-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664782710-05:00 self.gen.throw(value) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664785810-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664788040-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664790420-05:00 map = {: , : } [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664796310-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664798650-05:00 @contextlib.contextmanager [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664801100-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664803450-05:00 try: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664805760-05:00 yield [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664808150-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664810570-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664812910-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664815710-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664818180-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664820430-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664822800-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664825050-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664827860-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664830120-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664832450-05:00 self = [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664834780-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664837090-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664839350-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664841670-05:00 def _request( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664843980-05:00 self, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664846300-05:00 method: str, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664848630-05:00 path: str, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664850970-05:00 *, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664853270-05:00 retry: bool = True, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664855580-05:00 **kwargs: Any, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664857880-05:00 ) -> httpx.Response: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664860250-05:00 client = self._ensure_client() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664862570-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664864980-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664867300-05:00 for attempt in range(attempts): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664869650-05:00 try: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664872010-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664874300-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664876550-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664878820-05:00 integrations/base.py:135: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664881150-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664883510-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664885850-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664888150-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664890470-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664892800-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664895130-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664897670-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664902600-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664905019-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664907329-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664909649-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664916079-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664918419-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664920769-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664923069-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664925459-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664927769-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664930049-05:00 self.gen.throw(value) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664932339-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664934599-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664936889-05:00 @contextlib.contextmanager [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664939189-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664941489-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664943799-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664946119-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664948439-05:00 try: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664950729-05:00 yield [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664953039-05:00 except Exception as exc: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664955329-05:00 mapped_exc = None [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664957619-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664959919-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664962269-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664964599-05:00 continue [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664966919-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664969219-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664971599-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664973909-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664976209-05:00 mapped_exc = to_exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664978569-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664980999-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664983309-05:00 raise [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664985619-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664987939-05:00 message = str(exc) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664990269-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664992679-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664994899-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664997269-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.664999519-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665001779-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665004029-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665006319-05:00 def test_rundeck_execution_shape(): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665008639-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665010959-05:00 > ex = _recent_execution(rc) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665013259-05:00 ^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665015469-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665017769-05:00 tests/contract/test_rundeck_contract.py:42: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665020089-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665022409-05:00 tests/contract/test_rundeck_contract.py:24: in _recent_execution [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665028739-05:00 data = _live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665031099-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665033409-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665035729-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665038049-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665040399-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665042729-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665045109-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665047429-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665049679-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665051979-05:00 self = [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665054309-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665056649-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665058959-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665061239-05:00 def _request( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665063599-05:00 self, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665065929-05:00 method: str, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665068259-05:00 path: str, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665070599-05:00 *, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665072899-05:00 retry: bool = True, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665075199-05:00 **kwargs: Any, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665077539-05:00 ) -> httpx.Response: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665079919-05:00 client = self._ensure_client() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665082279-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665084639-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665086979-05:00 for attempt in range(attempts): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665089319-05:00 try: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665091639-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665093968-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665096378-05:00 last_exc = exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665098708-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665101028-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665103348-05:00 continue [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665105668-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665108008-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665110328-05:00 ) from exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665112758-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665115058-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665117368-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665119778-05:00 __________________________ test_rundeck_output_shape ___________________________ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665122048-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665124358-05:00 @contextlib.contextmanager [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665129148-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665131558-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665133938-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665136248-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665143198-05:00 try: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665145558-05:00 > yield [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665147838-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665150168-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665152508-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665154838-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665157218-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665159578-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665161968-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665164328-05:00 raise exc from None [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665166698-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665169048-05:00 response = connection.handle_request( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665171408-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665173728-05:00 raise exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665176188-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665178548-05:00 stream = self._connect(request) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665180878-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665183208-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665185558-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665187858-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665190188-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665192498-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665194908-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665197228-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665199608-05:00 self.gen.throw(value) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665202008-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665204238-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665206598-05:00 map = {: , : } [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665208868-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665211188-05:00 @contextlib.contextmanager [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665213598-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665215958-05:00 try: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665218298-05:00 yield [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665220638-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665223028-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665225378-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665227698-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665230048-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665232308-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665234678-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665236938-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665239308-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665241558-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665243858-05:00 self = [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665249798-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665252178-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665254478-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665256768-05:00 def _request( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665259218-05:00 self, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665261538-05:00 method: str, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665263848-05:00 path: str, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665266168-05:00 *, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665268548-05:00 retry: bool = True, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665270848-05:00 **kwargs: Any, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665273268-05:00 ) -> httpx.Response: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665275588-05:00 client = self._ensure_client() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665277998-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665280337-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665282677-05:00 for attempt in range(attempts): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665285017-05:00 try: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665287347-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665289657-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665291917-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665294567-05:00 integrations/base.py:135: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665296897-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665299427-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665301767-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665304097-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665306487-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665308827-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665311227-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665313657-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665315967-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665318317-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665320647-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665323037-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665325377-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665327747-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665330187-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665332527-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665335507-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665340257-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665342727-05:00 self.gen.throw(value) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665345097-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665347367-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665349707-05:00 @contextlib.contextmanager [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665352017-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665354357-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665356697-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665366967-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665369367-05:00 try: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665371687-05:00 yield [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665373987-05:00 except Exception as exc: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665376437-05:00 mapped_exc = None [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665378797-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665381127-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665383547-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665385887-05:00 continue [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665388247-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665390577-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665392907-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665395927-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665398317-05:00 mapped_exc = to_exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665400677-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665403727-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665406057-05:00 raise [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665408477-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665410837-05:00 message = str(exc) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665413187-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665415637-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665417957-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665420337-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665422597-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665424987-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665427257-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665429627-05:00 def test_rundeck_output_shape(): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665431947-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665434387-05:00 > ex = _recent_execution(rc) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665436867-05:00 ^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665439107-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665441527-05:00 tests/contract/test_rundeck_contract.py:59: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665443937-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665446297-05:00 tests/contract/test_rundeck_contract.py:24: in _recent_execution [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665448687-05:00 data = _live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665451037-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665453437-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665455817-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665458317-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665460617-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665463007-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665465437-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665467776-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665470026-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665472356-05:00 self = [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665474706-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665480926-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665483206-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665485646-05:00 def _request( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665487986-05:00 self, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665490326-05:00 method: str, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665492696-05:00 path: str, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665495136-05:00 *, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665497436-05:00 retry: bool = True, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665499736-05:00 **kwargs: Any, [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665502056-05:00 ) -> httpx.Response: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665504396-05:00 client = self._ensure_client() [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665506796-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665509146-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665511466-05:00 for attempt in range(attempts): [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665513856-05:00 try: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665516806-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665519176-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665521556-05:00 last_exc = exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665523886-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665526206-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665529526-05:00 continue [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665532386-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665534766-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665537136-05:00 ) from exc [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665539516-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665541786-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665544086-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665546416-05:00 ================================ tests coverage ================================ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665548766-05:00 _______________ coverage: platform linux, python 3.12.7-final-0 ________________ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665551026-05:00 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665553416-05:00 Name Stmts Miss Branch BrPart Cover Missing [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665555766-05:00 ----------------------------------------------------------------------------------------------- [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665558196-05:00 config/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665560596-05:00 config/admin_gate.py 90 90 30 0 0% 32-203 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665562966-05:00 config/readiness.py 75 75 12 0 0% 47-184 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665575606-05:00 config/settings.py 55 2 6 3 92% 130->138, 139, 141 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665586346-05:00 config/urls.py 9 9 0 0 0% 2-18 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665589536-05:00 fleet/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665596986-05:00 fleet/admin.py 256 105 34 0 52% 73-74, 78, 81-84, 98, 102, 105, 139, 145-146, 168, 171, 192, 195, 206, 210, 257-266, 274-280, 285-295, 308-310, 339-343, 347-355, 359-362, 367-384, 389-403, 412-423, 459, 463-466, 470-499, 503-509 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665600076-05:00 fleet/api_consent.py 84 84 32 0 0% 23-170 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665610796-05:00 fleet/api_manifest.py 28 28 8 0 0% 38-90 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665613316-05:00 fleet/apps.py 5 0 0 0 100% [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665616256-05:00 fleet/contacts.py 26 18 8 0 24% 54, 63-70, 82-89, 102-129 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665618666-05:00 fleet/correlate.py 51 51 12 0 0% 28-170 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665621136-05:00 fleet/device_sts.py 65 65 14 0 0% 36-220 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665623566-05:00 fleet/forms.py 17 8 4 0 43% 17-19, 22-31 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665625976-05:00 fleet/home.py 13 13 4 0 0% 28-51 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665628366-05:00 fleet/integrity.py 36 30 26 0 10% 23-28, 33-39, 44-47, 52-59, 64-70 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665630776-05:00 fleet/logs.py 113 113 18 0 0% 26-287 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665633116-05:00 fleet/management/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665635476-05:00 fleet/management/commands/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665637806-05:00 fleet/management/commands/poll_selftests.py 24 24 6 0 0% 13-61 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665640236-05:00 fleet/management/commands/reconcile_consents.py 37 37 10 0 0% 19-96 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665642646-05:00 fleet/management/commands/sync_devices.py 222 222 84 0 0% 34-364 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665646006-05:00 fleet/manifest.py 29 29 4 0 0% 34-131 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665648466-05:00 fleet/models.py 136 0 0 0 100% [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665651456-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-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665653916-05:00 fleet/roles.py 27 14 6 0 39% 95-108, 129-133 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665656355-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-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665659095-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-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665669735-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-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665672165-05:00 fleet/tests_authority.py 125 125 2 0 0% 4-229 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665674525-05:00 fleet/tests_consent.py 149 149 0 0 0% 16-284 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665676865-05:00 fleet/tests_consent_event.py 113 113 2 0 0% 9-195 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665679235-05:00 fleet/tests_correlate.py 51 51 4 0 0% 2-83 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665681545-05:00 fleet/tests_device_sts.py 150 150 2 0 0% 12-280 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665683925-05:00 fleet/tests_logs.py 163 163 2 0 0% 11-242 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665691115-05:00 fleet/tests_manifest.py 80 80 0 0 0% 15-190 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665693545-05:00 fleet/tests_memberships.py 179 179 2 0 0% 15-305 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665696145-05:00 fleet/tests_selftest.py 130 130 0 0 0% 14-255 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665698585-05:00 fleet/tests_status.py 219 219 2 0 0% 8-377 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665701065-05:00 fleet/tests_sync.py 178 178 8 0 0% 21-343 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665703425-05:00 fleet/tests_sync_integration.py 29 29 2 0 0% 17-83 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665705765-05:00 fleet/urls_consent.py 3 3 0 0 0% 5-9 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665708075-05:00 fleet/urls_logs.py 4 4 0 0 0% 7-13 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665713955-05:00 fleet/urls_manifest.py 3 3 0 0 0% 7-11 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665716385-05:00 fleet/urls_selftest.py 3 3 0 0 0% 6-10 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665718705-05:00 fleet/urls_status.py 4 4 0 0 0% 7-13 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665721095-05:00 fleet/validators.py 25 18 8 0 21% 27-29, 38-52 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665723425-05:00 integrations/__init__.py 18 5 0 0 72% 48, 52, 56, 60, 64 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665726205-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-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665728645-05:00 integrations/config.py 57 36 14 0 30% 18, 53-60, 64-66, 74-107, 111-116 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665731055-05:00 integrations/enroll.py 20 10 4 0 42% 28, 37-46, 50, 66 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665733495-05:00 integrations/errors.py 9 2 0 0 78% 35-36 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665735925-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-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665738315-05:00 integrations/headscale.py 33 8 12 4 64% 17, 26, 32-35, 42, 47->46, 49 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665740945-05:00 integrations/health.py 20 20 2 0 0% 6-43 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665743495-05:00 integrations/mender.py 79 57 26 0 21% 28-46, 56-74, 77-83, 87-92, 96-97, 102, 105-106, 118-124, 133-134, 148 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665746045-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-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665748395-05:00 integrations/types.py 82 2 0 0 98% 68, 72 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665750785-05:00 integrations/urls.py 3 3 0 0 0% 1-5 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665753275-05:00 integrations/views.py 6 6 0 0 0% 7-16 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665755675-05:00 stores/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665758065-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-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665765425-05:00 stores/api.py 66 66 20 0 0% 35-159 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665767795-05:00 stores/apps.py 5 0 0 0 100% [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665770205-05:00 stores/forms.py 35 20 12 0 32% 73-77, 81-84, 87-105 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665772595-05:00 stores/geocoding.py 115 115 34 0 0% 15-210 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665774915-05:00 stores/management/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665777335-05:00 stores/management/commands/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665779705-05:00 stores/management/commands/check_authority.py 39 39 14 0 0% 14-76 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665782085-05:00 stores/management/commands/migrate_owner_staff.py 73 73 28 0 0% 32-204 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665784465-05:00 stores/management/commands/notify_new_enrolls.py 36 36 8 0 0% 11-75 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665786825-05:00 stores/management/commands/reattach_store.py 50 50 14 0 0% 29-94 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665789245-05:00 stores/management/commands/seed_e2e_fleet.py 231 231 34 0 0% 52-623 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665791585-05:00 stores/management/commands/seed_pilot_stores.py 68 68 16 0 0% 20-141 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665793925-05:00 stores/management/commands/sync_roles.py 24 24 8 0 0% 12-54 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665796355-05:00 stores/map.py 69 69 18 0 0% 19-155 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665798705-05:00 stores/models.py 112 4 0 0 96% 185, 211, 228, 231 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665801055-05:00 stores/scoping.py 5 3 2 0 29% 22-24 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665803435-05:00 stores/tests_api.py 105 105 0 0 0% 12-174 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665805735-05:00 stores/tests_authority.py 128 128 4 0 0% 7-238 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665808115-05:00 stores/tests_basemap.py 41 41 4 0 0% 7-80 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665810415-05:00 stores/tests_collector_config.py 66 66 2 0 0% 8-104 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665818175-05:00 stores/tests_geo.py 72 72 0 0 0% 8-127 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665820755-05:00 stores/tests_map.py 68 68 2 0 0% 6-106 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665823055-05:00 stores/tests_pilot_seed.py 94 94 0 0 0% 7-175 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665825445-05:00 stores/tests_report_config.py 29 29 0 0 0% 6-47 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665827835-05:00 stores/urls.py 4 4 0 0 0% 1-6 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665830145-05:00 stores/views.py 39 39 4 0 0% 2-112 [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665832455-05:00 ----------------------------------------------------------------------------------------------- [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665834755-05:00 TOTAL 5633 4625 806 19 16% [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665837235-05:00 Coverage XML written to file coverage.xml [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665843614-05:00 =========================== short test summary info ============================ [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665846024-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-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665848414-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-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665850804-05:00 =================== 5 failed, 16 passed, 10 skipped in 9.05s =================== [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665853244-05:00 ===CONTRACT_RC=1=== [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.665855654-05:00 ----- end contract Job logs ----- [pod/app-contract-nightly-4z5sr-contract-pod/step-run-contract] 2026-08-06T22:17:29.668739709-05:00 ==> contract run: Failed — STUB-VS-REALITY DRIFT or a live client broke — see the drift report in the Job logs above [pod/app-contract-nightly-4z5sr-contract-pod/prepare] 2026-08-06T22:17:04.134559974-05:00 2026/08/07 03:17:04 Entrypoint initialization [pod/app-contract-nightly-4z5sr-contract-pod/place-scripts] 2026-08-06T22:17:05.307925814-05:00 2026/08/07 03:17:05 Decoded script /tekton/scripts/script-0-pjzwc