===== app-contract-nightly-staging-rdks6-archive-logs-pod.log ===== [pod/app-contract-nightly-staging-rdks6-archive-logs-pod/prepare] 2026-08-05T21:47:28.736346740-05:00 2026/08/06 02:47:28 Entrypoint initialization [pod/app-contract-nightly-staging-rdks6-archive-logs-pod/place-scripts] 2026-08-05T21:47:29.801370720-05:00 2026/08/06 02:47:29 Decoded script /tekton/scripts/script-0-lfftk [pod/app-contract-nightly-staging-rdks6-archive-logs-pod/place-scripts] 2026-08-05T21:47:29.824573984-05:00 2026/08/06 02:47:29 Decoded script /tekton/scripts/script-1-p69hp [pod/app-contract-nightly-staging-rdks6-archive-logs-pod/step-collect-logs] 2026-08-05T21:47:33.015773151-05:00 ==> collecting pod logs for PipelineRun=app-contract-nightly-staging-rdks6 ===== app-contract-nightly-staging-rdks6-contract-pod.log ===== [pod/app-contract-nightly-staging-rdks6-contract-pod/prepare] 2026-08-05T21:47:03.050092557-05:00 2026/08/06 02:47:03 Entrypoint initialization [pod/app-contract-nightly-staging-rdks6-contract-pod/place-scripts] 2026-08-05T21:47:03.567665640-05:00 2026/08/06 02:47:03 Decoded script /tekton/scripts/script-0-8mttj [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:05.942016989-05:00 resolved deployed image: registry.storeminder.ai/storeminder/app:ee7cf4cd9cd61ed4ab4e7538ef34cddf96caed8c [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:06.041633140-05:00 job.batch/app-contract-20260806-024705 created [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:26.783023480-05:00 ----- contract Job logs (app-contract-20260806-024705) ----- [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384269753-05:00 Installing pytest (runtime image has no test deps)… [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384301541-05:00 Running LIVE read-only contract + parity suite: tests/contract [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384311054-05:00 ============================= test session starts ============================== [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384317297-05:00 platform linux -- Python 3.12.7, pytest-9.1.1, pluggy-1.6.0 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384323241-05:00 django: version: 5.2.16, settings: config.settings (from env) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384329274-05:00 rootdir: /app [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384335378-05:00 configfile: pytest.ini [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384341511-05:00 plugins: django-4.13.0, cov-7.1.0, anyio-4.14.2 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384347584-05:00 collected 31 items [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384353350-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384359294-05:00 tests/contract/test_fixture_parity.py .FFsss [ 19%] [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384365149-05:00 tests/contract/test_grafana_contract.py sss [ 29%] [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384371013-05:00 tests/contract/test_headscale_contract.py ... [ 38%] [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384376858-05:00 tests/contract/test_mender_contract.py ssss [ 51%] [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384382912-05:00 tests/contract/test_rundeck_contract.py FFF [ 61%] [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384389075-05:00 tests/contract/test_shape_selfcheck.py ............ [100%] [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384394711-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384400645-05:00 =================================== FAILURES =================================== [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384406470-05:00 ________________________ test_parity_rundeck_execution _________________________ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384412086-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384417951-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384423945-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384429979-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384435833-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384441658-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384447742-05:00 try: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384454988-05:00 > yield [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384460823-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384466688-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384472483-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384479054-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384484918-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384490763-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384496628-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384502473-05:00 raise exc from None [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384508258-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384514083-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384519928-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384526776-05:00 raise exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384554062-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384558138-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384562074-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384565991-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384569947-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384573853-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384577750-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384581845-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384585742-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384589668-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384593575-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384597511-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384601229-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384605185-05:00 map = {: , : } [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384611278-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384615771-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384619837-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384623803-05:00 try: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384627739-05:00 yield [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384631675-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384635572-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384639439-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384643305-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384647262-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384650979-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384654876-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384658603-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384662490-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384666198-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384670055-05:00 self = [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384673951-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384677997-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384681714-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384685611-05:00 def _request( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384689607-05:00 self, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384693533-05:00 method: str, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384697410-05:00 path: str, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384701356-05:00 *, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384705253-05:00 retry: bool = True, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384709259-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384713145-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384717062-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384720988-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384724875-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384728821-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384732728-05:00 try: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384736694-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384740670-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384752320-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384756316-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384768701-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384773920-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384777975-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384781862-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384785957-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384789854-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384793721-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384797607-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384801474-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384805381-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384809247-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384813104-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384817050-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384820937-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384824814-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384838004-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384842110-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384846026-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384849903-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384853789-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384857696-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384861652-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384865549-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384869415-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384873342-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384877218-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384881115-05:00 try: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384885111-05:00 yield [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384889087-05:00 except Exception as exc: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384894723-05:00 mapped_exc = None [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384898659-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384902636-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384906512-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384910399-05:00 continue [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384914276-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384918242-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384922317-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384926253-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384931253-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384935190-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384939136-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384951054-05:00 raise [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384955010-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384958907-05:00 message = str(exc) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384962873-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384966800-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384970557-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384974503-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384978201-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384982117-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384985835-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384989712-05:00 def test_parity_rundeck_execution(): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384993728-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.384997614-05:00 ver = rc.config.extra.get("api_version", "48") [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385001511-05:00 proj = rc.config.extra.get("project", "storeminder") [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385005437-05:00 > execs = (_live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) or {}).get("executions") or [] [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385009334-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385013051-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385016968-05:00 tests/contract/test_fixture_parity.py:73: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385026033-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385030059-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385033966-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385037852-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385051073-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385057981-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385061858-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385065734-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385069462-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385073518-05:00 self = [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385077434-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385081341-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385085038-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385088985-05:00 def _request( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385092961-05:00 self, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385096917-05:00 method: str, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385100784-05:00 path: str, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385104770-05:00 *, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385108696-05:00 retry: bool = True, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385112563-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385117394-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385122394-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385127622-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385132483-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385137542-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385142731-05:00 try: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385148029-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385153188-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385158188-05:00 last_exc = exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385174490-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385188754-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385194212-05:00 continue [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385199599-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385204689-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385209718-05:00 ) from exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385215007-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385219897-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385224837-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385229957-05:00 __________________________ test_parity_rundeck_output __________________________ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385234698-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385239897-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385244748-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385249867-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385254867-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385259857-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385264886-05:00 try: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385270016-05:00 > yield [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385274707-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385280264-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385285294-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385290363-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385295323-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385300423-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385305403-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385310552-05:00 raise exc from None [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385315572-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385320641-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385325780-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385330720-05:00 raise exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385335919-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385341068-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385346048-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385351138-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385356436-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385361635-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385366565-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385371644-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385376535-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385381565-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385386565-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385391535-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385396246-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385413373-05:00 map = {: , : } [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385418324-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385423353-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385428393-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385433552-05:00 try: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385438492-05:00 yield [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385443621-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385448581-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385453740-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385458720-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385463830-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385468492-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385473531-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385478273-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385483263-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385488104-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385493173-05:00 self = [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385498292-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385503282-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385508461-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385513402-05:00 def _request( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385518521-05:00 self, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385523391-05:00 method: str, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385528441-05:00 path: str, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385533600-05:00 *, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385538560-05:00 retry: bool = True, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385543719-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385549137-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385554484-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385602923-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385611979-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385619503-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385627545-05:00 try: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385647346-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385656252-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385663658-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385671093-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385678588-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385686013-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385693528-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385701093-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385708538-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385715963-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385725953-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385733607-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385749879-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385771897-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385777404-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385782394-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385787264-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385792234-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385797175-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385802204-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385807115-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385812582-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385817681-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385822800-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385827731-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385832721-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385837939-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385842820-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385847989-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385852989-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385858128-05:00 try: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385863267-05:00 yield [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385868168-05:00 except Exception as exc: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385873297-05:00 mapped_exc = None [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385878287-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385883297-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385888764-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385893694-05:00 continue [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385898972-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385903952-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385908922-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385914081-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385919022-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385924161-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385929171-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385934200-05:00 raise [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385939359-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385944369-05:00 message = str(exc) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385949419-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385954250-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385959051-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385964409-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385969120-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385974239-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385979160-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385984130-05:00 def test_parity_rundeck_output(): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385989021-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385994110-05:00 ver = rc.config.extra.get("api_version", "48") [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.385999070-05:00 proj = rc.config.extra.get("project", "storeminder") [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386004219-05:00 > execs = (_live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) or {}).get("executions") or [] [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386021952-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386026853-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386031803-05:00 tests/contract/test_fixture_parity.py:90: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386037042-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386062389-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386071842-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386076812-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386081962-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386086922-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386091862-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386098472-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386103273-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386108323-05:00 self = [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386113512-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386118522-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386123412-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386133601-05:00 def _request( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386138790-05:00 self, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386143969-05:00 method: str, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386149267-05:00 path: str, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386154416-05:00 *, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386159525-05:00 retry: bool = True, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386164545-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386169604-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386174644-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386179733-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386185012-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386190280-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386195359-05:00 try: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386200578-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386205657-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386210777-05:00 last_exc = exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386215916-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386220896-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386226055-05:00 continue [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386231681-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386236800-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386241750-05:00 ) from exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386246661-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386251283-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386256144-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386261263-05:00 ____________________________ test_rundeck_reachable ____________________________ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386266243-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386271114-05:00 def test_rundeck_reachable(): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386284612-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386290139-05:00 health = rc.healthcheck() # GET /api/{v}/system/info [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386307883-05:00 > assert health.reachable, f"rundeck unreachable: {health.detail}" [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386313002-05:00 E AssertionError: rundeck unreachable: rundeck: GET /api/48/system/info failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386317455-05:00 E assert False [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386321391-05:00 E + where False = .reachable [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386325089-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386328966-05:00 tests/contract/test_rundeck_contract.py:37: AssertionError [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386332842-05:00 _________________________ test_rundeck_execution_shape _________________________ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386336540-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386340467-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386344631-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386348488-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386352464-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386357653-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386361570-05:00 try: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386365466-05:00 > yield [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386369174-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386373021-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386376877-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386380774-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386384690-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386388587-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386392444-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386396360-05:00 raise exc from None [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386400346-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386404203-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386408070-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386412861-05:00 raise exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386417066-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386421320-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386425237-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386429193-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386433099-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386436996-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386440853-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386444739-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386448765-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386452642-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386456568-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386460445-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386464152-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386468109-05:00 map = {: , : } [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386471826-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386485474-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386489480-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386493466-05:00 try: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386497363-05:00 yield [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386501319-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386505176-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386509023-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386512889-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386516776-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386520553-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386524519-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386528207-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386532074-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386535752-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386539678-05:00 self = [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386543605-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386547481-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386551249-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386555135-05:00 def _request( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386559062-05:00 self, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386562938-05:00 method: str, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386566785-05:00 path: str, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386570721-05:00 *, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386574608-05:00 retry: bool = True, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386578445-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386582421-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386586308-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386590204-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386594111-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386597977-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386601864-05:00 try: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386605781-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386609647-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386613345-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386617212-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386621108-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386624985-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386628832-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386632689-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386636555-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386640452-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386644368-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386648543-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386658871-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386662917-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386666992-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386670939-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386682907-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386686922-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386690819-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386694686-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386698553-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386702370-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386706286-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386710192-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386713900-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386717846-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386721793-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386725689-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386729536-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386734466-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386738403-05:00 try: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386742339-05:00 yield [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386746275-05:00 except Exception as exc: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386750291-05:00 mapped_exc = None [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386754218-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386758114-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386761981-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386765887-05:00 continue [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386769814-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386773700-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386777637-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386781543-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386785410-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386789287-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386793193-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386799346-05:00 raise [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386803302-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386807189-05:00 message = str(exc) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386811026-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386815072-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386818779-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386822676-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386826393-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386830250-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386833978-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386837864-05:00 def test_rundeck_execution_shape(): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386841731-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386845638-05:00 > ex = _recent_execution(rc) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386849514-05:00 ^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386853202-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386857059-05:00 tests/contract/test_rundeck_contract.py:42: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386860916-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386864812-05:00 tests/contract/test_rundeck_contract.py:24: in _recent_execution [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386876492-05:00 data = _live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386880438-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386884444-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386888291-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386892138-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386896005-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386899842-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386903679-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386907535-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386911233-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386915160-05:00 self = [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386919056-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386923012-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386926700-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386930587-05:00 def _request( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386934483-05:00 self, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386938380-05:00 method: str, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386942247-05:00 path: str, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386946213-05:00 *, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386950139-05:00 retry: bool = True, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386953986-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386957843-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386961700-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386965586-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386969443-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386973300-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386977316-05:00 try: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386981262-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386985178-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386989015-05:00 last_exc = exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386992912-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.386996828-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387000705-05:00 continue [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387004562-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387008458-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387012325-05:00 ) from exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387016242-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387019949-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387023836-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387027782-05:00 __________________________ test_rundeck_output_shape ___________________________ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387031470-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387035347-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387054849-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387062503-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387066449-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387070306-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387082443-05:00 try: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387086429-05:00 > yield [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387090147-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387094103-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387098000-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387101976-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387106180-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387110087-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387113993-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387117870-05:00 raise exc from None [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387121936-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387126011-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387129878-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387133794-05:00 raise exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387137701-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387141578-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387145474-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387149361-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387153247-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387157154-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387161030-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387164907-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387168764-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387172611-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387176488-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387180444-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387185374-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387190175-05:00 map = {: , : } [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387194728-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387199579-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387204549-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387209698-05:00 try: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387214896-05:00 yield [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387220016-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387225026-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387229926-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387235015-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387239995-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387244657-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387249697-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387254617-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387259558-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387264190-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387269538-05:00 self = [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387286526-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387291694-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387296356-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387301406-05:00 def _request( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387306366-05:00 self, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387311903-05:00 method: str, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387316833-05:00 path: str, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387322241-05:00 *, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387327121-05:00 retry: bool = True, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387332290-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387337280-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387342240-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387347389-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387352300-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387357509-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387362608-05:00 try: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387367836-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387372797-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387377488-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387382568-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387387568-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387392627-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387397617-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387402727-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387407925-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387412856-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387417945-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387422975-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387428024-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387432945-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387437984-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387443104-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387448133-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387453163-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387458123-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387463233-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387468073-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387481691-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387487387-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387492705-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387497486-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387502586-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387507447-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387512526-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387517615-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387536323-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387541541-05:00 try: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387546601-05:00 yield [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387551591-05:00 except Exception as exc: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387556521-05:00 mapped_exc = None [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387561770-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387566660-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387571740-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387576779-05:00 continue [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387582048-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387587058-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387592207-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387597276-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387602197-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387607286-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387612345-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387617445-05:00 raise [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387622465-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387627445-05:00 message = str(exc) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387632445-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387637464-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387642425-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387647265-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387652186-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387657116-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387662086-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387667046-05:00 def test_rundeck_output_shape(): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387672116-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387677036-05:00 > ex = _recent_execution(rc) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387682066-05:00 ^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387686758-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387691688-05:00 tests/contract/test_rundeck_contract.py:59: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387696837-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387701827-05:00 tests/contract/test_rundeck_contract.py:24: in _recent_execution [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387706946-05:00 data = _live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387712056-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387716996-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387722175-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387727135-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387732125-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387737035-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387742234-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387747214-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387752164-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387757333-05:00 self = [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387762194-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387784997-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387790365-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387795364-05:00 def _request( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387800722-05:00 self, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387805762-05:00 method: str, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387810732-05:00 path: str, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387815782-05:00 *, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387820782-05:00 retry: bool = True, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387825722-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387830622-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387835622-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387840672-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387845841-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387850712-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387855771-05:00 try: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387860841-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387866159-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387871159-05:00 last_exc = exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387876059-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387881188-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387886188-05:00 continue [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387891059-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387896148-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387901168-05:00 ) from exc [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387906188-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387911039-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387915949-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387921168-05:00 ================================ tests coverage ================================ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387926207-05:00 _______________ coverage: platform linux, python 3.12.7-final-0 ________________ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387930909-05:00 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387935919-05:00 Name Stmts Miss Branch BrPart Cover Missing [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387941038-05:00 ----------------------------------------------------------------------------------------------- [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387946118-05:00 config/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387951088-05:00 config/admin_gate.py 90 90 30 0 0% 32-203 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387956137-05:00 config/readiness.py 75 75 12 0 0% 47-184 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387983523-05:00 config/settings.py 54 2 6 3 92% 130->138, 139, 141 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.387995550-05:00 config/urls.py 9 9 0 0 0% 2-18 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388000560-05:00 fleet/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388013035-05:00 fleet/admin.py 256 105 34 0 52% 73-74, 78, 81-84, 98, 102, 105, 139, 145-146, 168, 171, 192, 195, 206, 210, 257-266, 274-280, 285-295, 308-310, 339-343, 347-355, 359-362, 367-384, 389-403, 412-423, 459, 463-466, 470-499, 503-509 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388018373-05:00 fleet/api_consent.py 84 84 32 0 0% 23-170 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388037299-05:00 fleet/api_manifest.py 28 28 8 0 0% 38-90 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388049814-05:00 fleet/apps.py 5 0 0 0 100% [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388059168-05:00 fleet/contacts.py 26 18 8 0 24% 54, 63-70, 82-89, 102-129 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388063124-05:00 fleet/correlate.py 51 51 12 0 0% 28-170 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388067030-05:00 fleet/forms.py 17 8 4 0 43% 17-19, 22-31 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388070937-05:00 fleet/home.py 13 13 4 0 0% 28-51 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388074833-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-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388078939-05:00 fleet/logs.py 113 113 18 0 0% 26-287 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388082815-05:00 fleet/management/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388086771-05:00 fleet/management/commands/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388090618-05:00 fleet/management/commands/poll_selftests.py 24 24 6 0 0% 13-61 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388094465-05:00 fleet/management/commands/reconcile_consents.py 37 37 10 0 0% 19-96 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388098362-05:00 fleet/management/commands/sync_devices.py 222 222 84 0 0% 34-364 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388102298-05:00 fleet/manifest.py 16 16 2 0 0% 32-101 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388107696-05:00 fleet/models.py 136 0 0 0 100% [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388112099-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-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388116294-05:00 fleet/roles.py 27 14 6 0 39% 95-108, 129-133 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388120439-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-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388124514-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-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388128978-05:00 fleet/status.py 144 82 26 0 36% 78, 101-106, 110-120, 124, 128, 132, 135-136, 163-164, 168, 185-188, 200-215, 219-221, 232-235, 241-255, 260-278, 283-286, 298-303, 307-312 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388132914-05:00 fleet/tests_authority.py 125 125 2 0 0% 4-229 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388136791-05:00 fleet/tests_consent.py 149 149 0 0 0% 16-284 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388140697-05:00 fleet/tests_consent_event.py 113 113 2 0 0% 9-195 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388144534-05:00 fleet/tests_correlate.py 51 51 4 0 0% 2-83 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388148361-05:00 fleet/tests_logs.py 163 163 2 0 0% 11-242 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388152297-05:00 fleet/tests_manifest.py 80 80 0 0 0% 15-190 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388156134-05:00 fleet/tests_memberships.py 179 179 2 0 0% 15-305 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388168172-05:00 fleet/tests_selftest.py 130 130 0 0 0% 14-255 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388173043-05:00 fleet/tests_status.py 219 219 2 0 0% 8-377 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388177038-05:00 fleet/tests_sync.py 178 178 8 0 0% 21-343 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388181114-05:00 fleet/tests_sync_integration.py 29 29 2 0 0% 17-83 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388185030-05:00 fleet/urls_consent.py 3 3 0 0 0% 5-9 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388189205-05:00 fleet/urls_logs.py 4 4 0 0 0% 7-13 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388193360-05:00 fleet/urls_manifest.py 3 3 0 0 0% 7-11 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388197257-05:00 fleet/urls_selftest.py 3 3 0 0 0% 6-10 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388206849-05:00 fleet/urls_status.py 4 4 0 0 0% 7-13 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388210984-05:00 fleet/validators.py 25 18 8 0 21% 27-29, 38-52 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388214881-05:00 integrations/__init__.py 18 5 0 0 72% 48, 52, 56, 60, 64 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388219324-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-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388223479-05:00 integrations/config.py 57 36 14 0 30% 18, 53-60, 64-66, 74-107, 111-116 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388241034-05:00 integrations/enroll.py 20 10 4 0 42% 28, 37-46, 50, 66 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388245049-05:00 integrations/errors.py 9 2 0 0 78% 35-36 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388249373-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-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388253638-05:00 integrations/headscale.py 33 8 12 4 64% 17, 26, 32-35, 42, 47->46, 49 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388257654-05:00 integrations/health.py 20 20 2 0 0% 6-43 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388261769-05:00 integrations/mender.py 79 57 26 0 21% 28-46, 56-74, 77-83, 87-92, 96-97, 102, 105-106, 118-124, 133-134, 148 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388265964-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-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388270029-05:00 integrations/types.py 82 2 0 0 98% 68, 72 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388274005-05:00 integrations/urls.py 3 3 0 0 0% 1-5 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388277961-05:00 integrations/views.py 6 6 0 0 0% 7-16 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388281848-05:00 stores/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388285864-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-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388289780-05:00 stores/api.py 66 66 20 0 0% 35-159 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388302156-05:00 stores/apps.py 5 0 0 0 100% [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388306172-05:00 stores/forms.py 35 20 12 0 32% 73-77, 81-84, 87-105 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388310038-05:00 stores/geocoding.py 115 115 34 0 0% 15-210 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388313975-05:00 stores/management/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388317851-05:00 stores/management/commands/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388321728-05:00 stores/management/commands/check_authority.py 39 39 14 0 0% 14-76 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388325645-05:00 stores/management/commands/migrate_owner_staff.py 73 73 28 0 0% 32-204 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388329521-05:00 stores/management/commands/notify_new_enrolls.py 36 36 8 0 0% 11-75 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388333388-05:00 stores/management/commands/reattach_store.py 50 50 14 0 0% 29-94 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388337255-05:00 stores/management/commands/seed_e2e_fleet.py 231 231 34 0 0% 52-623 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388341121-05:00 stores/management/commands/seed_pilot_stores.py 68 68 16 0 0% 20-141 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388345018-05:00 stores/management/commands/sync_roles.py 24 24 8 0 0% 12-54 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388348905-05:00 stores/map.py 69 69 18 0 0% 19-155 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388352801-05:00 stores/models.py 112 4 0 0 96% 185, 211, 228, 231 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388356658-05:00 stores/scoping.py 5 3 2 0 29% 22-24 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388360535-05:00 stores/tests_api.py 105 105 0 0 0% 12-174 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388364411-05:00 stores/tests_authority.py 128 128 4 0 0% 7-238 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388368278-05:00 stores/tests_basemap.py 41 41 4 0 0% 7-80 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388372145-05:00 stores/tests_collector_config.py 66 66 2 0 0% 8-104 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388376061-05:00 stores/tests_geo.py 72 72 0 0 0% 8-127 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388379928-05:00 stores/tests_map.py 68 68 2 0 0% 6-106 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388392194-05:00 stores/tests_pilot_seed.py 94 94 0 0 0% 7-175 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388396250-05:00 stores/tests_report_config.py 29 29 0 0 0% 6-47 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388400842-05:00 stores/urls.py 4 4 0 0 0% 1-6 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388404699-05:00 stores/views.py 39 39 4 0 0% 2-112 [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388408586-05:00 ----------------------------------------------------------------------------------------------- [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388412741-05:00 TOTAL 5404 4397 788 19 17% [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388417075-05:00 Coverage XML written to file coverage.xml [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388421240-05:00 =========================== short test summary info ============================ [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388425146-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-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388436617-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-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388440573-05:00 =================== 5 failed, 16 passed, 10 skipped in 9.59s =================== [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388444867-05:00 ===CONTRACT_RC=1=== [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388448774-05:00 ----- end contract Job logs ----- [pod/app-contract-nightly-staging-rdks6-contract-pod/step-run-contract] 2026-08-05T21:47:27.388452770-05:00 ==> contract run: Failed — STUB-VS-REALITY DRIFT or a live client broke — see the drift report in the Job logs above