===== app-contract-nightly-vcjjf-archive-logs-pod.log ===== [pod/app-contract-nightly-vcjjf-archive-logs-pod/prepare] 2026-07-31T22:17:32.062716758-05:00 2026/08/01 03:17:32 Entrypoint initialization [pod/app-contract-nightly-vcjjf-archive-logs-pod/place-scripts] 2026-07-31T22:17:32.789525565-05:00 2026/08/01 03:17:32 Decoded script /tekton/scripts/script-0-c5w7f [pod/app-contract-nightly-vcjjf-archive-logs-pod/place-scripts] 2026-07-31T22:17:32.805542054-05:00 2026/08/01 03:17:32 Decoded script /tekton/scripts/script-1-288c5 [pod/app-contract-nightly-vcjjf-archive-logs-pod/step-collect-logs] 2026-07-31T22:17:36.170827344-05:00 ==> collecting pod logs for PipelineRun=app-contract-nightly-vcjjf ===== app-contract-nightly-vcjjf-contract-pod.log ===== [pod/app-contract-nightly-vcjjf-contract-pod/prepare] 2026-07-31T22:17:04.962333459-05:00 2026/08/01 03:17:04 Entrypoint initialization [pod/app-contract-nightly-vcjjf-contract-pod/place-scripts] 2026-07-31T22:17:05.523982929-05:00 2026/08/01 03:17:05 Decoded script /tekton/scripts/script-0-9gn8x [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:09.167700211-05:00 resolved deployed image: registry.storeminder.ai/storeminder/app:003dc2f197336849905987c1b43df01cc1ba912c [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:09.236345416-05:00 job.batch/app-contract-20260801-031709 created [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.768199575-05:00 ----- contract Job logs (app-contract-20260801-031709) ----- [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840314415-05:00 Installing pytest (runtime image has no test deps)… [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840337355-05:00 Running LIVE read-only contract + parity suite: tests/contract [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840344055-05:00 ============================= test session starts ============================== [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840348205-05:00 platform linux -- Python 3.12.7, pytest-9.1.1, pluggy-1.6.0 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840351955-05:00 django: version: 5.2.16, settings: config.settings (from env) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840355525-05:00 rootdir: /app [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840359765-05:00 configfile: pytest.ini [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840364305-05:00 plugins: django-4.12.0, cov-7.1.0, anyio-4.14.2 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840368844-05:00 collected 31 items [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840372424-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840376354-05:00 tests/contract/test_fixture_parity.py .FFsss [ 19%] [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840380894-05:00 tests/contract/test_grafana_contract.py sss [ 29%] [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840385044-05:00 tests/contract/test_headscale_contract.py ... [ 38%] [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840388654-05:00 tests/contract/test_mender_contract.py ssss [ 51%] [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840392584-05:00 tests/contract/test_rundeck_contract.py FFF [ 61%] [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840396224-05:00 tests/contract/test_shape_selfcheck.py ............ [100%] [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840399704-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840403234-05:00 =================================== FAILURES =================================== [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840406794-05:00 ________________________ test_parity_rundeck_execution _________________________ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840410234-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840414014-05:00 @contextlib.contextmanager [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840417644-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840421204-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840424794-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840428414-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840432024-05:00 try: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840435644-05:00 > yield [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840439094-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840442614-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840446164-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840449964-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840453884-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840457424-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840461104-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840464684-05:00 raise exc from None [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840468204-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840471754-05:00 response = connection.handle_request( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840475324-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840478874-05:00 raise exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840493874-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840496504-05:00 stream = self._connect(request) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840498974-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840501384-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840503914-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840506384-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840508814-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840511204-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840513664-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840516084-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840518484-05:00 self.gen.throw(value) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840520954-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840523274-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840525754-05:00 map = {: , : } [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840530534-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840532964-05:00 @contextlib.contextmanager [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840535434-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840537884-05:00 try: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840540254-05:00 yield [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840542684-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840545124-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840547624-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840550094-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840552474-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840554834-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840557224-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840559554-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840562114-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840564454-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840566844-05:00 self = [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840569344-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840571794-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840574144-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840576534-05:00 def _request( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840578974-05:00 self, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840581554-05:00 method: str, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840583954-05:00 path: str, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840586333-05:00 *, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840588733-05:00 retry: bool = True, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840591133-05:00 **kwargs: Any, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840593643-05:00 ) -> httpx.Response: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840596033-05:00 client = self._ensure_client() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840598473-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840600893-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840603303-05:00 for attempt in range(attempts): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840605713-05:00 try: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840608303-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840611603-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840618953-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840621463-05:00 integrations/base.py:135: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840630703-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840634383-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840637073-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840674493-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840678683-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840682903-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840686673-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840690383-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840694063-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840697603-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840701523-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840711963-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840716743-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840720443-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840724123-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840727783-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840731323-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840734863-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840738413-05:00 self.gen.throw(value) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840742013-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840745503-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840749083-05:00 @contextlib.contextmanager [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840752643-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840756233-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840759793-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840763363-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840767033-05:00 try: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840770613-05:00 yield [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840775083-05:00 except Exception as exc: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840778713-05:00 mapped_exc = None [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840782293-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840785873-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840789443-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840793013-05:00 continue [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840796653-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840800283-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840803913-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840807512-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840811082-05:00 mapped_exc = to_exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840814662-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840818252-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840828232-05:00 raise [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840830752-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840833202-05:00 message = str(exc) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840835632-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840838082-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840840432-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840842852-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840845192-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840847582-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840849942-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840852352-05:00 def test_parity_rundeck_execution(): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840854752-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840857232-05:00 ver = rc.config.extra.get("api_version", "48") [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840859642-05:00 proj = rc.config.extra.get("project", "storeminder") [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840862182-05:00 > execs = (_live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) or {}).get("executions") or [] [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840864702-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840867192-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840869672-05:00 tests/contract/test_fixture_parity.py:73: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840872102-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840874562-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840877172-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840879712-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840882182-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840884822-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840887222-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840889672-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840892002-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840896002-05:00 self = [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840898652-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840901352-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840905662-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840908192-05:00 def _request( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840911232-05:00 self, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840914282-05:00 method: str, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840916692-05:00 path: str, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840919942-05:00 *, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840922512-05:00 retry: bool = True, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840924992-05:00 **kwargs: Any, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840927432-05:00 ) -> httpx.Response: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840929842-05:00 client = self._ensure_client() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840932412-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840934842-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840937292-05:00 for attempt in range(attempts): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840939732-05:00 try: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840942152-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840944632-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840947102-05:00 last_exc = exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840953982-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840960142-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840962672-05:00 continue [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840966392-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840968962-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840971412-05:00 ) from exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840974402-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840976732-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840979222-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840981742-05:00 __________________________ test_parity_rundeck_output __________________________ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840984052-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840986412-05:00 @contextlib.contextmanager [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840988862-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840991332-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840993832-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840996322-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.840999012-05:00 try: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841001422-05:00 > yield [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841003742-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841006252-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841009072-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841011562-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841014612-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841017072-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841019572-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841022012-05:00 raise exc from None [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841024442-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841026852-05:00 response = connection.handle_request( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841030221-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841032701-05:00 raise exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841035201-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841037621-05:00 stream = self._connect(request) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841040041-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841042471-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841044941-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841047431-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841049861-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841052261-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841054721-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841057181-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841059611-05:00 self.gen.throw(value) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841062031-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841068781-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841071351-05:00 map = {: , : } [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841073721-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841076231-05:00 @contextlib.contextmanager [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841078701-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841081181-05:00 try: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841083611-05:00 yield [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841086031-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841088451-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841090831-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841093271-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841095701-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841098041-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841100501-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841102861-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841105231-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841107541-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841109991-05:00 self = [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841112571-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841115011-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841117351-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841119761-05:00 def _request( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841122231-05:00 self, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841124631-05:00 method: str, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841127021-05:00 path: str, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841129411-05:00 *, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841131881-05:00 retry: bool = True, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841134391-05:00 **kwargs: Any, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841136841-05:00 ) -> httpx.Response: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841139261-05:00 client = self._ensure_client() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841141761-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841144211-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841146681-05:00 for attempt in range(attempts): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841149101-05:00 try: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841151561-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841153991-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841156321-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841158731-05:00 integrations/base.py:135: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841161151-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841163661-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841166111-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841168521-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841170991-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841173431-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841175871-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841178311-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841184201-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841191081-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841194781-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841197441-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841199941-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841202341-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841204801-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841207331-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841209841-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841212351-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841214841-05:00 self.gen.throw(value) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841217281-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841219601-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841221991-05:00 @contextlib.contextmanager [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841225131-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841227821-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841230241-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841240811-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841243311-05:00 try: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841245931-05:00 yield [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841248321-05:00 except Exception as exc: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841250740-05:00 mapped_exc = None [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841253310-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841255750-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841258170-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841260610-05:00 continue [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841263170-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841265620-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841268030-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841270530-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841272990-05:00 mapped_exc = to_exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841275480-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841278000-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841280470-05:00 raise [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841282960-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841285420-05:00 message = str(exc) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841287900-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841290310-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841292660-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841295330-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841297690-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841300100-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841302460-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841304920-05:00 def test_parity_rundeck_output(): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841307340-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841309770-05:00 ver = rc.config.extra.get("api_version", "48") [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841312240-05:00 proj = rc.config.extra.get("project", "storeminder") [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841314770-05:00 > execs = (_live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) or {}).get("executions") or [] [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841322020-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841324400-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841326900-05:00 tests/contract/test_fixture_parity.py:90: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841329420-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841332350-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841334770-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841337150-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841339620-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841342050-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841344470-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841346950-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841349300-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841351790-05:00 self = [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841354310-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841356750-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841359080-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841361660-05:00 def _request( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841364100-05:00 self, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841366580-05:00 method: str, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841369020-05:00 path: str, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841371440-05:00 *, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841373850-05:00 retry: bool = True, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841376320-05:00 **kwargs: Any, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841378700-05:00 ) -> httpx.Response: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841381160-05:00 client = self._ensure_client() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841383580-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841387270-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841389790-05:00 for attempt in range(attempts): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841392330-05:00 try: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841394960-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841397450-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841399870-05:00 last_exc = exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841402270-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841404620-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841407020-05:00 continue [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841409480-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841412280-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841414710-05:00 ) from exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841417230-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841419600-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841421990-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841424530-05:00 ____________________________ test_rundeck_reachable ____________________________ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841426890-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841429930-05:00 def test_rundeck_reachable(): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841435210-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841437700-05:00 health = rc.healthcheck() # GET /api/{v}/system/info [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841444530-05:00 > assert health.reachable, f"rundeck unreachable: {health.detail}" [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841447100-05:00 E AssertionError: rundeck unreachable: rundeck: GET /api/48/system/info failed: [Errno 111] Connection refused [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841449530-05:00 E assert False [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841452000-05:00 E + where False = .reachable [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841454380-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841456790-05:00 tests/contract/test_rundeck_contract.py:37: AssertionError [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841459200-05:00 _________________________ test_rundeck_execution_shape _________________________ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841461560-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841463940-05:00 @contextlib.contextmanager [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841466370-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841468780-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841471200-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841473639-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841476079-05:00 try: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841478499-05:00 > yield [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841480829-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841483219-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841485719-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841488199-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841490599-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841493129-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841495569-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841498079-05:00 raise exc from None [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841500639-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841503899-05:00 response = connection.handle_request( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841506309-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841508769-05:00 raise exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841511249-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841513689-05:00 stream = self._connect(request) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841516099-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841518519-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841520979-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841523459-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841525869-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841528389-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841530799-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841533269-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841535689-05:00 self.gen.throw(value) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841538169-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841540499-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841542939-05:00 map = {: , : } [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841545289-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841549219-05:00 @contextlib.contextmanager [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841555519-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841558019-05:00 try: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841560459-05:00 yield [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841562939-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841565459-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841567889-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841570339-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841572739-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841575079-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841577539-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841579879-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841582349-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841585589-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841588059-05:00 self = [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841590509-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841592959-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841595269-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841597699-05:00 def _request( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841600159-05:00 self, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841602579-05:00 method: str, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841604989-05:00 path: str, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841607419-05:00 *, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841609949-05:00 retry: bool = True, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841612339-05:00 **kwargs: Any, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841614739-05:00 ) -> httpx.Response: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841617229-05:00 client = self._ensure_client() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841619669-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841622789-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841625239-05:00 for attempt in range(attempts): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841627659-05:00 try: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841630129-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841632529-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841634859-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841637279-05:00 integrations/base.py:135: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841639779-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841642219-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841644629-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841647029-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841649659-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841652219-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841654729-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841657229-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841662119-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841664589-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841667059-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841669479-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841675999-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841678469-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841680929-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841683349-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841685819-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841688189-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841690639-05:00 self.gen.throw(value) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841693048-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841695388-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841697778-05:00 @contextlib.contextmanager [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841700228-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841702648-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841705068-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841707498-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841709948-05:00 try: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841712338-05:00 yield [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841714748-05:00 except Exception as exc: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841717158-05:00 mapped_exc = None [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841719678-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841722198-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841724648-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841727078-05:00 continue [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841729508-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841732028-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841734468-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841737008-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841739468-05:00 mapped_exc = to_exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841741918-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841744348-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841746748-05:00 raise [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841749158-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841751578-05:00 message = str(exc) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841754008-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841756408-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841758748-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841761148-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841763498-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841766398-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841768748-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841771158-05:00 def test_rundeck_execution_shape(): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841773598-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841776028-05:00 > ex = _recent_execution(rc) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841778468-05:00 ^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841780788-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841783208-05:00 tests/contract/test_rundeck_contract.py:42: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841785708-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841788208-05:00 tests/contract/test_rundeck_contract.py:24: in _recent_execution [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841794648-05:00 data = _live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841797098-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841799548-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841802008-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841804418-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841806818-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841809218-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841811608-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841814068-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841816388-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841818858-05:00 self = [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841821298-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841823788-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841826118-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841828508-05:00 def _request( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841830928-05:00 self, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841833338-05:00 method: str, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841835728-05:00 path: str, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841838118-05:00 *, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841840608-05:00 retry: bool = True, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841843078-05:00 **kwargs: Any, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841845458-05:00 ) -> httpx.Response: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841847848-05:00 client = self._ensure_client() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841850258-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841852668-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841855128-05:00 for attempt in range(attempts): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841857528-05:00 try: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841859958-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841862448-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841864928-05:00 last_exc = exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841867328-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841869718-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841872298-05:00 continue [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841874768-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841877178-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841879628-05:00 ) from exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841882148-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841884498-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841886938-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841889338-05:00 __________________________ test_rundeck_output_shape ___________________________ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841891668-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841894048-05:00 @contextlib.contextmanager [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841899038-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841901538-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841903978-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841906398-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841915827-05:00 try: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841919077-05:00 > yield [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841921387-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841923777-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841926217-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841928717-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841931107-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841933497-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841935947-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841938377-05:00 raise exc from None [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841940837-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841943287-05:00 response = connection.handle_request( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841945717-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841948117-05:00 raise exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841950507-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841952887-05:00 stream = self._connect(request) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841955307-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841957757-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841960157-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841962587-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841964977-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841967407-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841969767-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841972157-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841974557-05:00 self.gen.throw(value) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841976967-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841979307-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841981767-05:00 map = {: , : } [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841984127-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841986487-05:00 @contextlib.contextmanager [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841989267-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841991677-05:00 try: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841994077-05:00 yield [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841996557-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.841998957-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842001337-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842003767-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842006157-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842008487-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842010917-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842013237-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842015617-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842017917-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842020287-05:00 self = [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842026627-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842029187-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842031517-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842033887-05:00 def _request( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842036347-05:00 self, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842038777-05:00 method: str, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842041167-05:00 path: str, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842044227-05:00 *, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842046747-05:00 retry: bool = True, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842049117-05:00 **kwargs: Any, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842051517-05:00 ) -> httpx.Response: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842053987-05:00 client = self._ensure_client() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842056417-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842058847-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842061277-05:00 for attempt in range(attempts): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842063727-05:00 try: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842066177-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842068567-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842070877-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842073257-05:00 integrations/base.py:135: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842075727-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842078157-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842080547-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842082987-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842085417-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842088677-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842091077-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842093517-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842095917-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842098307-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842100707-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842103097-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842105577-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842108027-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842110437-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842112887-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842115317-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842120187-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842122647-05:00 self.gen.throw(value) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842125137-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842127467-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842129827-05:00 @contextlib.contextmanager [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842132227-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842134627-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842137066-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842144076-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842146526-05:00 try: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842148986-05:00 yield [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842151416-05:00 except Exception as exc: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842153806-05:00 mapped_exc = None [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842156206-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842158646-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842161916-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842164336-05:00 continue [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842166756-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842169246-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842171696-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842174136-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842176536-05:00 mapped_exc = to_exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842178946-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842181366-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842183766-05:00 raise [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842186156-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842188616-05:00 message = str(exc) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842191136-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842193586-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842195886-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842198276-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842200596-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842203016-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842205326-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842207706-05:00 def test_rundeck_output_shape(): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842210106-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842212596-05:00 > ex = _recent_execution(rc) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842215146-05:00 ^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842217436-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842219846-05:00 tests/contract/test_rundeck_contract.py:59: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842222326-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842224736-05:00 tests/contract/test_rundeck_contract.py:24: in _recent_execution [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842227176-05:00 data = _live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842229696-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842237586-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842241746-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842244186-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842246646-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842249046-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842251446-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842253906-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842256216-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842258606-05:00 self = [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842261106-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842267706-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842270076-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842272486-05:00 def _request( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842274946-05:00 self, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842277416-05:00 method: str, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842279836-05:00 path: str, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842282336-05:00 *, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842284756-05:00 retry: bool = True, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842287146-05:00 **kwargs: Any, [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842289606-05:00 ) -> httpx.Response: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842292006-05:00 client = self._ensure_client() [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842294456-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842296946-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842299446-05:00 for attempt in range(attempts): [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842301866-05:00 try: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842304276-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842306696-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842309126-05:00 last_exc = exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842311506-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842313876-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842316366-05:00 continue [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842318856-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842321266-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842323686-05:00 ) from exc [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842326146-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842328506-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842330916-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842333416-05:00 ================================ tests coverage ================================ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842335906-05:00 _______________ coverage: platform linux, python 3.12.7-final-0 ________________ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842338256-05:00 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842342106-05:00 Name Stmts Miss Branch BrPart Cover Missing [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842344566-05:00 ----------------------------------------------------------------------------------------------- [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842347026-05:00 config/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842350036-05:00 config/admin_gate.py 90 90 30 0 0% 32-203 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842352566-05:00 config/readiness.py 75 75 12 0 0% 47-184 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842368475-05:00 config/settings.py 55 2 6 3 92% 130->138, 139, 141 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842378775-05:00 config/urls.py 9 9 0 0 0% 2-18 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842381975-05:00 fleet/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842390835-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-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842395905-05:00 fleet/api_consent.py 84 84 32 0 0% 23-170 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842407365-05:00 fleet/api_manifest.py 28 28 8 0 0% 38-90 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842410015-05:00 fleet/apps.py 5 0 0 0 100% [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842412825-05:00 fleet/contacts.py 26 18 8 0 24% 54, 63-70, 82-89, 102-129 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842416035-05:00 fleet/correlate.py 51 51 12 0 0% 28-170 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842418515-05:00 fleet/device_sts.py 65 65 14 0 0% 36-220 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842420995-05:00 fleet/forms.py 17 8 4 0 43% 17-19, 22-31 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842423375-05:00 fleet/home.py 13 13 4 0 0% 28-51 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842425845-05:00 fleet/integrity.py 36 30 26 0 10% 23-28, 33-39, 44-47, 52-59, 64-70 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842428235-05:00 fleet/logs.py 113 113 18 0 0% 26-287 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842430615-05:00 fleet/management/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842433235-05:00 fleet/management/commands/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842435615-05:00 fleet/management/commands/poll_selftests.py 24 24 6 0 0% 13-61 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842438055-05:00 fleet/management/commands/reconcile_consents.py 37 37 10 0 0% 19-96 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842440445-05:00 fleet/management/commands/sync_devices.py 222 222 84 0 0% 34-364 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842442915-05:00 fleet/manifest.py 29 29 4 0 0% 34-131 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842445395-05:00 fleet/models.py 136 0 0 0 100% [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842448085-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-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842450495-05:00 fleet/roles.py 27 14 6 0 39% 95-108, 129-133 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842453195-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-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842455665-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-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842459235-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-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842461825-05:00 fleet/tests_authority.py 125 125 2 0 0% 4-229 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842464275-05:00 fleet/tests_consent.py 149 149 0 0 0% 16-284 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842466705-05:00 fleet/tests_consent_event.py 113 113 2 0 0% 9-195 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842469085-05:00 fleet/tests_correlate.py 51 51 4 0 0% 2-83 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842471475-05:00 fleet/tests_device_sts.py 150 150 2 0 0% 12-280 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842473975-05:00 fleet/tests_logs.py 163 163 2 0 0% 11-242 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842481115-05:00 fleet/tests_manifest.py 80 80 0 0 0% 15-190 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842483555-05:00 fleet/tests_memberships.py 179 179 2 0 0% 15-305 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842485935-05:00 fleet/tests_selftest.py 130 130 0 0 0% 14-255 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842488415-05:00 fleet/tests_status.py 219 219 2 0 0% 8-377 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842490855-05:00 fleet/tests_sync.py 178 178 8 0 0% 21-343 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842493225-05:00 fleet/tests_sync_integration.py 29 29 2 0 0% 17-83 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842495625-05:00 fleet/urls_consent.py 3 3 0 0 0% 5-9 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842498025-05:00 fleet/urls_logs.py 4 4 0 0 0% 7-13 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842504445-05:00 fleet/urls_manifest.py 3 3 0 0 0% 7-11 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842507005-05:00 fleet/urls_selftest.py 3 3 0 0 0% 6-10 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842510105-05:00 fleet/urls_status.py 4 4 0 0 0% 7-13 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842512625-05:00 fleet/validators.py 25 18 8 0 21% 27-29, 38-52 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842515085-05:00 integrations/__init__.py 18 5 0 0 72% 48, 52, 56, 60, 64 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842517805-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-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842520325-05:00 integrations/config.py 57 36 14 0 30% 18, 53-60, 64-66, 74-107, 111-116 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842523385-05:00 integrations/enroll.py 20 10 4 0 42% 28, 37-46, 50, 66 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842525835-05:00 integrations/errors.py 9 2 0 0 78% 35-36 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842537465-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-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842540905-05:00 integrations/headscale.py 33 8 12 4 64% 17, 26, 32-35, 42, 47->46, 49 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842543305-05:00 integrations/health.py 20 20 2 0 0% 6-43 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842545685-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-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842548825-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-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842551305-05:00 integrations/types.py 82 2 0 0 98% 68, 72 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842553825-05:00 integrations/urls.py 3 3 0 0 0% 1-5 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842556255-05:00 integrations/views.py 6 6 0 0 0% 7-16 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842558645-05:00 stores/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842561075-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-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842567635-05:00 stores/api.py 66 66 20 0 0% 35-159 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842570075-05:00 stores/apps.py 5 0 0 0 100% [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842572825-05:00 stores/forms.py 35 20 12 0 32% 73-77, 81-84, 87-105 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842576115-05:00 stores/geocoding.py 115 115 34 0 0% 15-210 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842621504-05:00 stores/management/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842626684-05:00 stores/management/commands/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842630734-05:00 stores/management/commands/check_authority.py 39 39 14 0 0% 14-76 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842634524-05:00 stores/management/commands/migrate_owner_staff.py 73 73 28 0 0% 32-204 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842638344-05:00 stores/management/commands/notify_new_enrolls.py 36 36 8 0 0% 11-75 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842642264-05:00 stores/management/commands/reattach_store.py 50 50 14 0 0% 29-94 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842645854-05:00 stores/management/commands/seed_e2e_fleet.py 231 231 34 0 0% 52-623 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842649944-05:00 stores/management/commands/seed_pilot_stores.py 68 68 16 0 0% 20-141 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842656764-05:00 stores/management/commands/sync_roles.py 24 24 8 0 0% 12-54 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842660744-05:00 stores/map.py 69 69 18 0 0% 19-155 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842664734-05:00 stores/models.py 112 4 0 0 96% 185, 211, 228, 231 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842668734-05:00 stores/scoping.py 5 3 2 0 29% 22-24 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842672404-05:00 stores/tests_api.py 105 105 0 0 0% 12-174 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842675954-05:00 stores/tests_authority.py 128 128 4 0 0% 7-238 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842679554-05:00 stores/tests_basemap.py 41 41 4 0 0% 7-80 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842683114-05:00 stores/tests_collector_config.py 66 66 2 0 0% 8-104 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842693524-05:00 stores/tests_geo.py 72 72 0 0 0% 8-127 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842698354-05:00 stores/tests_map.py 68 68 2 0 0% 6-106 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842702154-05:00 stores/tests_pilot_seed.py 94 94 0 0 0% 7-175 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842705724-05:00 stores/tests_report_config.py 29 29 0 0 0% 6-47 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842709324-05:00 stores/urls.py 4 4 0 0 0% 1-6 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842712894-05:00 stores/views.py 39 39 4 0 0% 2-112 [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842716494-05:00 ----------------------------------------------------------------------------------------------- [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842720034-05:00 TOTAL 5633 4625 806 19 16% [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842724394-05:00 Coverage XML written to file coverage.xml [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842740004-05:00 =========================== short test summary info ============================ [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842742704-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-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842745174-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-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842747604-05:00 =================== 5 failed, 16 passed, 10 skipped in 8.95s =================== [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842750284-05:00 ===CONTRACT_RC=1=== [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.842752744-05:00 ----- end contract Job logs ----- [pod/app-contract-nightly-vcjjf-contract-pod/step-run-contract] 2026-07-31T22:17:29.848397689-05:00 ==> contract run: Failed — STUB-VS-REALITY DRIFT or a live client broke — see the drift report in the Job logs above