===== app-contract-nightly-staging-n859q-archive-logs-pod.log ===== [pod/app-contract-nightly-staging-n859q-archive-logs-pod/place-scripts] 2026-08-18T21:47:40.136640652-05:00 2026/08/19 02:47:40 Decoded script /tekton/scripts/script-0-d68dg [pod/app-contract-nightly-staging-n859q-archive-logs-pod/place-scripts] 2026-08-18T21:47:40.170197864-05:00 2026/08/19 02:47:40 Decoded script /tekton/scripts/script-1-9vccm [pod/app-contract-nightly-staging-n859q-archive-logs-pod/step-collect-logs] 2026-08-18T21:47:43.317291603-05:00 ==> collecting pod logs for PipelineRun=app-contract-nightly-staging-n859q [pod/app-contract-nightly-staging-n859q-archive-logs-pod/prepare] 2026-08-18T21:47:39.183843155-05:00 2026/08/19 02:47:39 Entrypoint initialization ===== app-contract-nightly-staging-n859q-contract-pod.log ===== [pod/app-contract-nightly-staging-n859q-contract-pod/place-scripts] 2026-08-18T21:47:04.607354138-05:00 2026/08/19 02:47:04 Decoded script /tekton/scripts/script-0-s9vc5 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:08.119099463-05:00 resolved deployed image: registry.storeminder.ai/storeminder/app:4cca63a53f870fed1461a4107933aa8137397b02 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:08.204747550-05:00 job.batch/app-contract-20260819-024707 created [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:33.941880798-05:00 ----- contract Job logs (app-contract-20260819-024707) ----- [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.049983205-05:00 Installing pytest (runtime image has no test deps)… [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050013305-05:00 Running LIVE read-only contract + parity suite: tests/contract [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050020375-05:00 ============================= test session starts ============================== [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050025385-05:00 platform linux -- Python 3.12.7, pytest-9.1.1, pluggy-1.6.0 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050029845-05:00 django: version: 5.2.16, settings: config.settings (from env) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050034785-05:00 rootdir: /app [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050040454-05:00 configfile: pytest.ini [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050045574-05:00 plugins: django-4.14.0, cov-7.1.0, anyio-4.14.2 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050049974-05:00 collected 31 items [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050054184-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050059424-05:00 tests/contract/test_fixture_parity.py .FFsss [ 19%] [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050064194-05:00 tests/contract/test_grafana_contract.py sss [ 29%] [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050068914-05:00 tests/contract/test_headscale_contract.py ... [ 38%] [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050073134-05:00 tests/contract/test_mender_contract.py ssss [ 51%] [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050077484-05:00 tests/contract/test_rundeck_contract.py FFF [ 61%] [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050081884-05:00 tests/contract/test_shape_selfcheck.py ............ [100%] [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050086294-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050090664-05:00 =================================== FAILURES =================================== [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050095014-05:00 ________________________ test_parity_rundeck_execution _________________________ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050099184-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050104124-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050108394-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050112874-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050117454-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050121674-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050125934-05:00 try: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050130124-05:00 > yield [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050134484-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050138704-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050143004-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050148663-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050153153-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050157563-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050169453-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050175983-05:00 raise exc from None [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050180403-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050185033-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050190543-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050195633-05:00 raise exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050216623-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050219753-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050222623-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050225673-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050228703-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050231773-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050234923-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050237843-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050240743-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050243703-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050246823-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050249943-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050252843-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050257673-05:00 map = {: , : } [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050264222-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050267322-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050270472-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050287812-05:00 try: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050290962-05:00 yield [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050293942-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050296862-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050299782-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050302692-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050305632-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050309512-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050314522-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050318772-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050322872-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050326962-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050331372-05:00 self = [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050335842-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050340512-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050344792-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050348332-05:00 def _request( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050351332-05:00 self, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050354312-05:00 method: str, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050357562-05:00 path: str, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050360422-05:00 *, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050363962-05:00 retry: bool = True, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050366862-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050369792-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050372722-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050375702-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050378581-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050381691-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050385011-05:00 try: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050387871-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050391001-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050400351-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050403461-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050412711-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050415971-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050418981-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050422231-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050425181-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050428081-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050431021-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050434021-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050437551-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050440521-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050443431-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050446591-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050449501-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050452401-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050455521-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050458511-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050461721-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050464741-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050467671-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050470761-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050473551-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050476451-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050479431-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050482311-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050485161-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050488071-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050491030-05:00 try: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050493930-05:00 yield [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050496810-05:00 except Exception as exc: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050499680-05:00 mapped_exc = None [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050502550-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050505520-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050508440-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050511430-05:00 continue [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050516140-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050519260-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050522130-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050525170-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050528160-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050531120-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050534090-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050543380-05:00 raise [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050546320-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050549200-05:00 message = str(exc) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050552110-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050555030-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050557810-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050560740-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050563530-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050566880-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050569690-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050572830-05:00 def test_parity_rundeck_execution(): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050575770-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050578650-05:00 ver = rc.config.extra.get("api_version", "48") [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050581580-05:00 proj = rc.config.extra.get("project", "storeminder") [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050584760-05:00 > execs = (_live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) or {}).get("executions") or [] [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050587870-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050590870-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050593840-05:00 tests/contract/test_fixture_parity.py:73: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050596940-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050599890-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050602780-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050605779-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050608799-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050611729-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050614769-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050617919-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050620679-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050623659-05:00 self = [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050626669-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050629609-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050632369-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050635219-05:00 def _request( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050638209-05:00 self, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050641289-05:00 method: str, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050644299-05:00 path: str, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050647269-05:00 *, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050650189-05:00 retry: bool = True, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050653039-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050655989-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050658909-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050662239-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050665169-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050668179-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050671279-05:00 try: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050674139-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050677209-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050680179-05:00 last_exc = exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050683079-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050695589-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050698629-05:00 continue [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050701519-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050704669-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050707619-05:00 ) from exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050710999-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050713859-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050716949-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050719878-05:00 __________________________ test_parity_rundeck_output __________________________ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050722758-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050725628-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050728698-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050731658-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050735108-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050738108-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050741138-05:00 try: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050744088-05:00 > yield [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050747138-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050750838-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050753798-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050756838-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050759718-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050762808-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050765888-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050768868-05:00 raise exc from None [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050771778-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050774718-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050777928-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050780978-05:00 raise exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050784358-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050787458-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050790688-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050793708-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050796578-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050799978-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050802938-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050805898-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050808778-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050811938-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050815758-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050818688-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050821468-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050830538-05:00 map = {: , : } [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050833347-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050836187-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050839177-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050842167-05:00 try: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050845167-05:00 yield [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050848097-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050851057-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050853977-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050856807-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050861377-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050864227-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050867427-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050870267-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050873907-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050876737-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050879647-05:00 self = [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050882767-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050885837-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050888767-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050891627-05:00 def _request( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050894607-05:00 self, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050897527-05:00 method: str, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050900547-05:00 path: str, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050903377-05:00 *, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050906337-05:00 retry: bool = True, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050909197-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050912367-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050915357-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050918377-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050921297-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050924247-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050927187-05:00 try: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050930117-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050932987-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050935737-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050938697-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050941747-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050944737-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050947756-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050950796-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050953696-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050956596-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050959546-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050962936-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050970996-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050974096-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050983256-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050986566-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050989506-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050992786-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050995766-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.050998876-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051001826-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051004656-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051007596-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051011296-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051014066-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051016936-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051020446-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051023406-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051026396-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051029386-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051032246-05:00 try: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051035286-05:00 yield [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051038266-05:00 except Exception as exc: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051041186-05:00 mapped_exc = None [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051044066-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051047266-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051050346-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051053186-05:00 continue [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051056406-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051059546-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051062915-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051065945-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051068795-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051071965-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051074985-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051077865-05:00 raise [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051081015-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051083875-05:00 message = str(exc) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051086745-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051090515-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051093275-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051096595-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051099385-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051102685-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051105805-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051108725-05:00 def test_parity_rundeck_output(): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051111685-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051117395-05:00 ver = rc.config.extra.get("api_version", "48") [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051121915-05:00 proj = rc.config.extra.get("project", "storeminder") [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051125115-05:00 > execs = (_live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) or {}).get("executions") or [] [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051134405-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051137305-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051140165-05:00 tests/contract/test_fixture_parity.py:90: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051143265-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051146145-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051149115-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051151935-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051154985-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051157865-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051181374-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051187404-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051190304-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051193194-05:00 self = [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051196554-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051199474-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051202304-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051205254-05:00 def _request( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051208134-05:00 self, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051211034-05:00 method: str, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051213484-05:00 path: str, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051215774-05:00 *, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051218074-05:00 retry: bool = True, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051220414-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051222794-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051225084-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051228184-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051230494-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051232794-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051235074-05:00 try: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051237454-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051240354-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051242774-05:00 last_exc = exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051245224-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051247524-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051249824-05:00 continue [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051252114-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051254664-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051256964-05:00 ) from exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051259364-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051261664-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051264154-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051266514-05:00 ____________________________ test_rundeck_reachable ____________________________ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051268824-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051271094-05:00 def test_rundeck_reachable(): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051277174-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051299873-05:00 health = rc.healthcheck() # GET /api/{v}/system/info [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051307773-05:00 > assert health.reachable, f"rundeck unreachable: {health.detail}" [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051310383-05:00 E AssertionError: rundeck unreachable: rundeck: GET /api/48/system/info failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051312683-05:00 E assert False [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051315163-05:00 E + where False = .reachable [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051317463-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051319783-05:00 tests/contract/test_rundeck_contract.py:37: AssertionError [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051322123-05:00 _________________________ test_rundeck_execution_shape _________________________ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051324333-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051326883-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051329203-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051331623-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051333923-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051336213-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051338533-05:00 try: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051340903-05:00 > yield [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051343163-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051345493-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051347883-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051350253-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051352563-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051354883-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051357253-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051359693-05:00 raise exc from None [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051362143-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051364643-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051367023-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051369353-05:00 raise exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051371743-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051374063-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051376383-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051378683-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051381073-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051383473-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051385773-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051388083-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051390383-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051392743-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051395023-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051397412-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051399612-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051402142-05:00 map = {: , : } [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051408412-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051410852-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051414772-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051417132-05:00 try: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051419462-05:00 yield [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051421792-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051424072-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051426472-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051428732-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051431142-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051433362-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051435732-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051437962-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051440342-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051442542-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051445042-05:00 self = [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051447492-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051449802-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051452022-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051454282-05:00 def _request( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051456662-05:00 self, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051458952-05:00 method: str, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051461322-05:00 path: str, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051463712-05:00 *, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051466082-05:00 retry: bool = True, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051468342-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051470692-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051473042-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051475422-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051477762-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051480062-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051482462-05:00 try: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051485402-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051488282-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051490502-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051492752-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051495132-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051497582-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051499952-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051502472-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051505322-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051507652-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051510031-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051513121-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051519331-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051522341-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051525011-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051532601-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051535021-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051537341-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051540551-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051542861-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051545261-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051547541-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051549871-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051552511-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051554761-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051557061-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051559401-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051561831-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051564141-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051566511-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051568841-05:00 try: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051571151-05:00 yield [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051573451-05:00 except Exception as exc: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051575741-05:00 mapped_exc = None [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051578211-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051580611-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051583021-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051585321-05:00 continue [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051587841-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051590211-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051592661-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051595031-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051597331-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051599661-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051602051-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051604401-05:00 raise [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051607261-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051609561-05:00 message = str(exc) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051611851-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051614261-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051616461-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051618881-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051621130-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051623760-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051626140-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051628780-05:00 def test_rundeck_execution_shape(): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051631080-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051633420-05:00 > ex = _recent_execution(rc) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051635710-05:00 ^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051637910-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051640580-05:00 tests/contract/test_rundeck_contract.py:42: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051643730-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051646330-05:00 tests/contract/test_rundeck_contract.py:24: in _recent_execution [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051654490-05:00 data = _live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051657010-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051659550-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051661830-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051664250-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051666520-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051668940-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051671420-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051673730-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051675980-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051678890-05:00 self = [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051681340-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051683660-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051685930-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051688490-05:00 def _request( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051691230-05:00 self, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051693970-05:00 method: str, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051696260-05:00 path: str, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051699120-05:00 *, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051701670-05:00 retry: bool = True, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051703950-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051706530-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051708840-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051711530-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051713830-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051716440-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051718760-05:00 try: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051721150-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051724080-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051726380-05:00 last_exc = exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051728800-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051731229-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051733719-05:00 continue [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051736009-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051738439-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051740739-05:00 ) from exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051744439-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051746699-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051749179-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051751739-05:00 __________________________ test_rundeck_output_shape ___________________________ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051754129-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051756449-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051763189-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051765679-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051768209-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051770569-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051777569-05:00 try: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051779999-05:00 > yield [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051782209-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051784609-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051787079-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051789419-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051791739-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051795149-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051797869-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051801589-05:00 raise exc from None [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051804009-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051806319-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051808769-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051811149-05:00 raise exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051813639-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051816089-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051818669-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051821009-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051823389-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051825749-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051828239-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051830539-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051832839-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051835469-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051837909-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051840269-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051842488-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051844878-05:00 map = {: , : } [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051847118-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051849388-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051851778-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051854118-05:00 try: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051856598-05:00 yield [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051858968-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051862058-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051864448-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051866818-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051869178-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051871478-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051873898-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051876198-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051878538-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051880738-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051883378-05:00 self = [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051890828-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051893148-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051895378-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051897938-05:00 def _request( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051900748-05:00 self, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051903238-05:00 method: str, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051905538-05:00 path: str, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051907828-05:00 *, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051910308-05:00 retry: bool = True, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051912658-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051914928-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051917238-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051919748-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051922078-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051927068-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051929518-05:00 try: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051931918-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051934378-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051936588-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051938878-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051941378-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051943788-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051946188-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051948568-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051950898-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051953337-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051955687-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051958207-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051960617-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051962997-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051965377-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051967797-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051970157-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051972557-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051974927-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051977317-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051979697-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051985887-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051988347-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051990687-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051993117-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051995717-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.051998527-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052000907-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052003207-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052009737-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052012047-05:00 try: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052014367-05:00 yield [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052016667-05:00 except Exception as exc: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052018957-05:00 mapped_exc = None [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052021337-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052023657-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052026107-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052028427-05:00 continue [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052030837-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052033247-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052035687-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052038047-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052040397-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052042787-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052045327-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052047617-05:00 raise [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052049997-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052052297-05:00 message = str(exc) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052054597-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052056867-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052059157-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052061617-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052063847-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052066186-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052068406-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052070746-05:00 def test_rundeck_output_shape(): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052073916-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052076226-05:00 > ex = _recent_execution(rc) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052078506-05:00 ^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052080766-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052083086-05:00 tests/contract/test_rundeck_contract.py:59: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052085456-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052087776-05:00 tests/contract/test_rundeck_contract.py:24: in _recent_execution [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052090136-05:00 data = _live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052092436-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052094836-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052097146-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052099496-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052101806-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052104096-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052106506-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052108876-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052111236-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052113546-05:00 self = [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052115906-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052122196-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052124506-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052126796-05:00 def _request( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052129126-05:00 self, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052131436-05:00 method: str, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052133736-05:00 path: str, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052136046-05:00 *, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052138446-05:00 retry: bool = True, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052140806-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052143086-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052145456-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052147766-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052150166-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052152486-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052154766-05:00 try: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052157056-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052159466-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052174696-05:00 last_exc = exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052177015-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052179395-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052183945-05:00 continue [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052186355-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052188665-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052190975-05:00 ) from exc [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052193755-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052196025-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052198295-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052200635-05:00 ================================ tests coverage ================================ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052202985-05:00 _______________ coverage: platform linux, python 3.12.7-final-0 ________________ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052205195-05:00 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052207995-05:00 Name Stmts Miss Branch BrPart Cover Missing [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052210385-05:00 ------------------------------------------------------------------------------------------------- [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052212805-05:00 config/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052215185-05:00 config/admin_gate.py 90 90 30 0 0% 32-203 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052217775-05:00 config/readiness.py 75 75 12 0 0% 47-184 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052238775-05:00 config/settings.py 59 2 6 3 92% 130->138, 139, 141 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052255135-05:00 config/urls.py 9 9 0 0 0% 2-18 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052266135-05:00 fleet/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052270085-05:00 fleet/admin.py 302 122 46 0 52% 75-76, 80, 83-86, 100, 104, 107, 141, 147-148, 170, 173, 194, 197, 208, 212, 259-268, 276-282, 287-297, 310-312, 341-345, 349-357, 361-364, 369-386, 391-405, 414-425, 461, 465-468, 472-501, 505-511, 525, 535-550, 585, 589 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052275595-05:00 fleet/api_consent.py 84 84 32 0 0% 23-170 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052290094-05:00 fleet/api_manifest.py 28 28 8 0 0% 38-90 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052293184-05:00 fleet/api_uplink.py 64 64 20 0 0% 20-140 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052296374-05:00 fleet/apps.py 7 0 0 0 100% [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052299534-05:00 fleet/contacts.py 26 18 8 0 24% 54, 63-70, 82-89, 102-129 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052302424-05:00 fleet/correlate.py 51 51 12 0 0% 28-170 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052305324-05:00 fleet/device_sts.py 65 65 14 0 0% 36-220 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052310684-05:00 fleet/deviceconfig.py 180 123 68 0 23% 106, 113, 118, 123, 129, 141, 166-219, 224, 238-253, 277-331, 342-353, 357-359, 363-374, 383-385, 395-397, 403-415 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052313664-05:00 fleet/forms.py 17 8 4 0 43% 17-19, 22-31 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052316704-05:00 fleet/home.py 13 13 4 0 0% 28-51 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052320284-05:00 fleet/integrity.py 36 30 26 0 10% 23-28, 33-39, 44-47, 52-59, 64-70 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052323154-05:00 fleet/knowledge.py 48 36 22 0 17% 41-51, 57-76, 88-101, 107-109, 121 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052326064-05:00 fleet/knowledge_seed.py 4 4 0 0 0% 26-140 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052328964-05:00 fleet/logs.py 113 113 18 0 0% 26-287 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052331884-05:00 fleet/management/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052334804-05:00 fleet/management/commands/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052337694-05:00 fleet/management/commands/poll_selftests.py 24 24 6 0 0% 13-61 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052340554-05:00 fleet/management/commands/reconcile_consents.py 37 37 10 0 0% 19-96 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052343434-05:00 fleet/management/commands/reconcile_deviceconfig.py 60 60 24 0 0% 26-148 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052346344-05:00 fleet/management/commands/sync_devices.py 273 273 116 0 0% 34-447 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052349204-05:00 fleet/management/commands/uplink_dataplane.py 72 72 22 0 0% 24-122 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052352044-05:00 fleet/manifest.py 28 28 4 0 0% 37-126 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052355374-05:00 fleet/models.py 208 19 16 0 84% 657-684, 688-698 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052358924-05:00 fleet/reconcile.py 111 79 34 0 22% 62, 67, 71-72, 82-87, 104-142, 148-161, 181-194, 202-205, 223-226, 239-244, 258-287 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052361814-05:00 fleet/roles.py 27 14 6 0 39% 95-108, 129-133 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052365074-05:00 fleet/scoping.py 32 25 12 0 16% 17-19, 26-28, 36-39, 44-47, 53-58, 66-72 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052368084-05:00 fleet/selftest.py 116 90 24 0 19% 67, 71, 90-124, 136-163, 168-173, 184-191, 201-214, 219-224, 235-254, 269-277 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052376774-05:00 fleet/status.py 145 82 26 0 37% 79, 102-107, 111-121, 125, 129, 133, 136-137, 164-165, 169, 186-189, 201-216, 220-222, 233-236, 242-256, 261-280, 285-288, 300-305, 309-314 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052379744-05:00 fleet/tests_authority.py 125 125 2 0 0% 4-229 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052382924-05:00 fleet/tests_consent.py 149 149 0 0 0% 16-284 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052387524-05:00 fleet/tests_consent_event.py 113 113 2 0 0% 9-195 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052390614-05:00 fleet/tests_correlate.py 51 51 4 0 0% 2-83 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052394204-05:00 fleet/tests_device_sts.py 150 150 2 0 0% 12-280 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052402153-05:00 fleet/tests_deviceconfig.py 334 334 4 0 0% 24-516 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052405163-05:00 fleet/tests_knowledge.py 178 178 6 0 0% 18-322 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052408323-05:00 fleet/tests_logs.py 163 163 2 0 0% 11-242 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052411363-05:00 fleet/tests_manifest.py 92 92 0 0 0% 15-218 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052414243-05:00 fleet/tests_memberships.py 179 179 2 0 0% 15-305 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052417583-05:00 fleet/tests_selftest.py 130 130 0 0 0% 14-255 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052420453-05:00 fleet/tests_status.py 240 240 2 0 0% 8-410 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052423323-05:00 fleet/tests_sync.py 232 232 8 0 0% 21-458 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052426203-05:00 fleet/tests_sync_integration.py 29 29 2 0 0% 17-83 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052429083-05:00 fleet/tests_uplink.py 66 66 4 0 0% 8-111 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052431983-05:00 fleet/tests_uplink_dataplane.py 130 130 2 0 0% 10-253 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052434873-05:00 fleet/tests_uplink_profile.py 130 130 0 0 0% 9-211 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052439003-05:00 fleet/uplink.py 79 35 14 0 47% 58-59, 68, 72, 76, 80, 84-88, 92-98, 102-108, 112, 117, 121, 125, 129, 133-134, 138, 144, 149 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052442063-05:00 fleet/uplink_dataplane.py 145 145 56 0 0% 40-330 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052446203-05:00 fleet/urls_consent.py 3 3 0 0 0% 5-9 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052449153-05:00 fleet/urls_logs.py 4 4 0 0 0% 7-13 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052452093-05:00 fleet/urls_manifest.py 3 3 0 0 0% 10-14 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052454983-05:00 fleet/urls_selftest.py 3 3 0 0 0% 6-10 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052457883-05:00 fleet/urls_status.py 4 4 0 0 0% 7-13 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052460733-05:00 fleet/validators.py 25 18 8 0 21% 27-29, 38-52 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052464363-05:00 fleet/vault.py 71 71 16 0 0% 21-156 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052472633-05:00 integrations/__init__.py 18 5 0 0 72% 48, 52, 56, 60, 64 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052475593-05:00 integrations/base.py 122 33 32 12 67% 39, 43-51, 55, 60-62, 96, 99, 100->108, 111-113, 116, 119, 146-147, 161, 165, 176, 179, 186-187, 193, 196, 205, 220 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052478553-05:00 integrations/config.py 57 36 14 0 30% 18, 53-60, 64-66, 74-107, 111-116 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052481403-05:00 integrations/enroll.py 20 10 4 0 42% 28, 37-46, 50, 66 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052484363-05:00 integrations/errors.py 9 2 0 0 78% 35-36 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052487783-05:00 integrations/grafana.py 68 50 22 0 20% 27, 30, 33, 36, 43-50, 60-72, 75-97, 110-123, 126-135, 141 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052490713-05:00 integrations/headscale.py 33 8 12 4 64% 17, 26, 32-35, 42, 47->46, 49 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052493613-05:00 integrations/health.py 20 20 2 0 0% 6-43 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052497783-05:00 integrations/mender.py 132 97 42 0 20% 33-51, 61-79, 82-88, 92-97, 101-102, 111-121, 131-133, 143-153, 158, 166-170, 177-183, 186-187, 209-215, 224-225, 245-253, 256, 266 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052500753-05:00 integrations/rundeck.py 46 25 10 0 38% 44-49, 65-81, 85-89, 95-103, 114-117, 126 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052503753-05:00 integrations/types.py 97 2 0 0 98% 87, 91 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052506693-05:00 integrations/urls.py 3 3 0 0 0% 1-5 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052509713-05:00 integrations/views.py 6 6 0 0 0% 7-16 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052512762-05:00 stores/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052515712-05:00 stores/admin.py 87 30 12 0 58% 95, 101-104, 107-110, 118-121, 142, 145, 148-152, 156-168, 183 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052528402-05:00 stores/api.py 66 66 20 0 0% 35-159 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052531782-05:00 stores/apps.py 5 0 0 0 100% [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052534752-05:00 stores/forms.py 35 20 12 0 32% 73-77, 81-84, 87-105 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052537682-05:00 stores/geocoding.py 115 115 34 0 0% 15-210 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052540692-05:00 stores/management/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052543682-05:00 stores/management/commands/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052546582-05:00 stores/management/commands/check_authority.py 39 39 14 0 0% 14-76 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052550262-05:00 stores/management/commands/migrate_owner_staff.py 73 73 28 0 0% 32-204 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052553292-05:00 stores/management/commands/notify_new_enrolls.py 36 36 8 0 0% 11-75 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052556242-05:00 stores/management/commands/reattach_store.py 50 50 14 0 0% 29-94 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052559222-05:00 stores/management/commands/seed_e2e_fleet.py 231 231 34 0 0% 52-623 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052567322-05:00 stores/management/commands/seed_pilot_stores.py 68 68 16 0 0% 20-141 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052570312-05:00 stores/management/commands/sync_roles.py 24 24 8 0 0% 12-54 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052573552-05:00 stores/map.py 69 69 18 0 0% 19-155 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052576572-05:00 stores/models.py 112 4 0 0 96% 185, 211, 228, 231 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052579482-05:00 stores/scoping.py 5 3 2 0 29% 22-24 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052582442-05:00 stores/tests_api.py 105 105 0 0 0% 12-174 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052585382-05:00 stores/tests_authority.py 128 128 4 0 0% 7-238 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052588272-05:00 stores/tests_basemap.py 41 41 4 0 0% 7-80 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052591182-05:00 stores/tests_collector_config.py 66 66 2 0 0% 8-104 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052594092-05:00 stores/tests_geo.py 72 72 0 0 0% 8-127 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052597212-05:00 stores/tests_map.py 68 68 2 0 0% 6-106 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052600072-05:00 stores/tests_pilot_seed.py 94 94 0 0 0% 7-175 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052602982-05:00 stores/tests_report_config.py 29 29 0 0 0% 6-47 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052605992-05:00 stores/urls.py 4 4 0 0 0% 1-6 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052608912-05:00 stores/views.py 40 40 4 0 0% 2-117 [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052612502-05:00 ------------------------------------------------------------------------------------------------- [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052615412-05:00 TOTAL 7525 6287 1140 19 15% [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052618472-05:00 Coverage XML written to file coverage.xml [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052621642-05:00 =========================== short test summary info ============================ [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052624621-05:00 SKIPPED [5] tests/contract/_live.py:75: mender not configured (MENDER_URL/MENDER_API_TOKEN absent) — token not seeded yet [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052627551-05:00 SKIPPED [5] tests/contract/_live.py:101: grafana not configured (GRAFANA_URL/GRAFANA_TOKEN absent) — token not seeded yet [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052630511-05:00 ================== 5 failed, 16 passed, 10 skipped in 10.23s =================== [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052633401-05:00 ===CONTRACT_RC=1=== [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.052636411-05:00 ----- end contract Job logs ----- [pod/app-contract-nightly-staging-n859q-contract-pod/step-run-contract] 2026-08-18T21:47:34.056873094-05:00 ==> contract run: Failed — STUB-VS-REALITY DRIFT or a live client broke — see the drift report in the Job logs above [pod/app-contract-nightly-staging-n859q-contract-pod/prepare] 2026-08-18T21:47:04.182856254-05:00 2026/08/19 02:47:04 Entrypoint initialization