===== app-contract-nightly-staging-bm7ls-archive-logs-pod.log ===== [pod/app-contract-nightly-staging-bm7ls-archive-logs-pod/prepare] 2026-07-30T21:47:37.075069513-05:00 2026/07/31 02:47:37 Entrypoint initialization [pod/app-contract-nightly-staging-bm7ls-archive-logs-pod/place-scripts] 2026-07-30T21:47:37.607704557-05:00 2026/07/31 02:47:37 Decoded script /tekton/scripts/script-0-2sgft [pod/app-contract-nightly-staging-bm7ls-archive-logs-pod/place-scripts] 2026-07-30T21:47:37.626226147-05:00 2026/07/31 02:47:37 Decoded script /tekton/scripts/script-1-wktvc [pod/app-contract-nightly-staging-bm7ls-archive-logs-pod/step-collect-logs] 2026-07-30T21:47:42.262956864-05:00 ==> collecting pod logs for PipelineRun=app-contract-nightly-staging-bm7ls ===== app-contract-nightly-staging-bm7ls-contract-pod.log ===== [pod/app-contract-nightly-staging-bm7ls-contract-pod/prepare] 2026-07-30T21:47:03.792551501-05:00 2026/07/31 02:47:03 Entrypoint initialization [pod/app-contract-nightly-staging-bm7ls-contract-pod/place-scripts] 2026-07-30T21:47:04.197402910-05:00 2026/07/31 02:47:04 Decoded script /tekton/scripts/script-0-5v9l5 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:07.750219164-05:00 resolved deployed image: registry.storeminder.ai/storeminder/app:ee7cf4cd9cd61ed4ab4e7538ef34cddf96caed8c [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:07.887793827-05:00 job.batch/app-contract-20260731-024707 created [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.362323545-05:00 ----- contract Job logs (app-contract-20260731-024707) ----- [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.649861351-05:00 Installing pytest (runtime image has no test deps)… [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650012760-05:00 Running LIVE read-only contract + parity suite: tests/contract [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650038167-05:00 ============================= test session starts ============================== [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650056506-05:00 platform linux -- Python 3.12.7, pytest-9.1.1, pluggy-1.6.0 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650073395-05:00 django: version: 5.2.16, settings: config.settings (from env) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650096188-05:00 rootdir: /app [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650117658-05:00 configfile: pytest.ini [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650124666-05:00 plugins: django-4.12.0, cov-7.1.0, anyio-4.14.2 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650128662-05:00 collected 31 items [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650146644-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650165719-05:00 tests/contract/test_fixture_parity.py .FFsss [ 19%] [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650183999-05:00 tests/contract/test_grafana_contract.py sss [ 29%] [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650200102-05:00 tests/contract/test_headscale_contract.py ... [ 38%] [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650262199-05:00 tests/contract/test_mender_contract.py ssss [ 51%] [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650279097-05:00 tests/contract/test_rundeck_contract.py FFF [ 61%] [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650295946-05:00 tests/contract/test_shape_selfcheck.py ............ [100%] [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650310777-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650328361-05:00 =================================== FAILURES =================================== [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650338788-05:00 ________________________ test_parity_rundeck_execution _________________________ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650369543-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650388062-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650402634-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650413399-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650423906-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650433608-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650448697-05:00 try: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650459253-05:00 > yield [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650478786-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650496529-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650513517-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650521022-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650530425-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650541409-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650546111-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650550932-05:00 raise exc from None [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650556190-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650575494-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650595792-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650616835-05:00 raise exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650715482-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650722698-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650733106-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650744676-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650756376-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650769765-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650780789-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650791504-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650814635-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650822796-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650825709-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650828651-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650833631-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650842637-05:00 map = {: , : } [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650860599-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650871106-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650886205-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650902179-05:00 try: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650910489-05:00 yield [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650927665-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650946741-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650966054-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650976561-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650981651-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.650997764-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651011382-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651021461-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651036093-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651049274-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651066778-05:00 self = [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651093060-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651115883-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651129660-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651137791-05:00 def _request( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651140883-05:00 self, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651144739-05:00 method: str, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651164809-05:00 path: str, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651181617-05:00 *, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651195385-05:00 retry: bool = True, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651198466-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651213088-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651216796-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651226776-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651237263-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651256905-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651277361-05:00 try: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651292620-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651297620-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651338295-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651419198-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651466136-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651469446-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651482448-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651485251-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651488650-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651501394-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651510767-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651531184-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651547566-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651565707-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651580716-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651590170-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651605289-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651616422-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651633012-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651635547-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651638578-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651656918-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651676103-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651696162-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651710207-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651720227-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651730505-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651745445-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651759859-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651775495-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651792353-05:00 try: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651800464-05:00 yield [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651807582-05:00 except Exception as exc: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651816657-05:00 mapped_exc = None [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651839331-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.651977499-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652001435-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652016703-05:00 continue [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652023751-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652040689-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652087418-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652107875-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652117219-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652124346-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652142198-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652195418-05:00 raise [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652198201-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652200786-05:00 message = str(exc) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652203221-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652206074-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652217366-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652224692-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652227008-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652230239-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652240865-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652245716-05:00 def test_parity_rundeck_execution(): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652256491-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652265745-05:00 ver = rc.config.extra.get("api_version", "48") [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652273101-05:00 proj = rc.config.extra.get("project", "storeminder") [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652279323-05:00 > execs = (_live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) or {}).get("executions") or [] [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652292504-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652306391-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652313130-05:00 tests/contract/test_fixture_parity.py:73: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652326977-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652341241-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652383725-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652387204-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652395127-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652408109-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652420186-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652430414-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652440066-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652444599-05:00 self = [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652458307-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652470980-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652483008-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652495026-05:00 def _request( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652509230-05:00 self, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652516457-05:00 method: str, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652519330-05:00 path: str, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652522481-05:00 *, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652527302-05:00 retry: bool = True, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652536347-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652538743-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652541814-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652550671-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652556894-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652563722-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652573076-05:00 try: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652583951-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652597817-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652609596-05:00 last_exc = exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652645530-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652678651-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652687249-05:00 continue [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652696345-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652704535-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652707080-05:00 ) from exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652710788-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652716473-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652719296-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652722169-05:00 __________________________ test_parity_rundeck_output __________________________ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652731871-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652742278-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652753262-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652767248-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652776353-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652784713-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652794256-05:00 try: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652799405-05:00 > yield [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652802416-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652809683-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652817098-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652823012-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652833768-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652842098-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652851501-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652864244-05:00 raise exc from None [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652876630-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652882942-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652897445-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652913150-05:00 raise exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652921063-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652932623-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652940555-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652951400-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652958388-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652965972-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652974342-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652985912-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.652995564-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653011469-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653027453-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653038685-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653046021-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653092372-05:00 map = {: , : } [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653102809-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653116238-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653129340-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653133932-05:00 try: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653144150-05:00 yield [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653154796-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653163444-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653169915-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653179726-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653187092-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653195333-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653203682-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653215104-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653232897-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653245570-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653262260-05:00 self = [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653278343-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653291504-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653293919-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653299585-05:00 def _request( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653312816-05:00 self, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653323631-05:00 method: str, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653333074-05:00 path: str, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653339306-05:00 *, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653360608-05:00 retry: bool = True, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653380409-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653387268-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653400627-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653409136-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653415846-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653430716-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653442575-05:00 try: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653454394-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653469026-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653476938-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653487286-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653493151-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653500179-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653509652-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653517952-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653530029-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653540377-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653549790-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653552553-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653578646-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653613626-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653626479-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653635644-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653642850-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653651806-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653659182-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653671925-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653678873-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653688744-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653698138-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653704986-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653707243-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653709599-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653712213-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653714589-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653717730-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653720394-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653722759-05:00 try: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653725294-05:00 yield [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653727710-05:00 except Exception as exc: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653730115-05:00 mapped_exc = None [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653732809-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653735304-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653737769-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653740423-05:00 continue [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653742948-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653746755-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653749280-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653751874-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653754618-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653757143-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653760304-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653763445-05:00 raise [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653765880-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653768385-05:00 message = str(exc) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653770880-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653773514-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653776069-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653778643-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653781029-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653783713-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653786029-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653788703-05:00 def test_parity_rundeck_output(): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653791814-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653794697-05:00 ver = rc.config.extra.get("api_version", "48") [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653797967-05:00 proj = rc.config.extra.get("project", "storeminder") [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653801088-05:00 > execs = (_live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) or {}).get("executions") or [] [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653810462-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653812867-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653815482-05:00 tests/contract/test_fixture_parity.py:90: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653818096-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653820611-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653823613-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653826187-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653828702-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653831127-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653833573-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653836157-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653838503-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653841336-05:00 self = [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653844000-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653846893-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653849159-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653851584-05:00 def _request( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653854089-05:00 self, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653856515-05:00 method: str, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653859020-05:00 path: str, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653861425-05:00 *, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653863781-05:00 retry: bool = True, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653866286-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653868731-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653871186-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653873632-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653876107-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653878671-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653881027-05:00 try: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653883502-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653886256-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653888781-05:00 last_exc = exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653891415-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653894158-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653896932-05:00 continue [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653899556-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653902021-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653904993-05:00 ) from exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653908144-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653910430-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653912886-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653915361-05:00 ____________________________ test_rundeck_reachable ____________________________ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653917707-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653920351-05:00 def test_rundeck_reachable(): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653929217-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653932070-05:00 health = rc.healthcheck() # GET /api/{v}/system/info [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653941762-05:00 > assert health.reachable, f"rundeck unreachable: {health.detail}" [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653944307-05:00 E AssertionError: rundeck unreachable: rundeck: GET /api/48/system/info failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653946762-05:00 E assert False [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653949227-05:00 E + where False = .reachable [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653951632-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653954426-05:00 tests/contract/test_rundeck_contract.py:37: AssertionError [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653957119-05:00 _________________________ test_rundeck_execution_shape _________________________ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653959595-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653962418-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653965300-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653967974-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653970598-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653973421-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653975936-05:00 try: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653978173-05:00 > yield [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653980300-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653982616-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653984912-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653987218-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653989604-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653992636-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653994952-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653997447-05:00 raise exc from None [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.653999733-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654001950-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654004196-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654006443-05:00 raise exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654008739-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654011125-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654013371-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654015667-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654017983-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654020260-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654022556-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654024802-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654027029-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654029355-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654031572-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654034971-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654037108-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654039414-05:00 map = {: , : } [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654047128-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654049384-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654051681-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654053947-05:00 try: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654056174-05:00 yield [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654058400-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654060657-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654063002-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654065259-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654067794-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654070289-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654073102-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654075597-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654077913-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654080030-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654082326-05:00 self = [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654084632-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654086938-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654089066-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654091312-05:00 def _request( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654093648-05:00 self, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654095885-05:00 method: str, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654098111-05:00 path: str, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654100437-05:00 *, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654102863-05:00 retry: bool = True, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654105099-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654107336-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654109572-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654111888-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654114155-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654116411-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654118638-05:00 try: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654120974-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654123399-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654125496-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654127803-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654130079-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654132375-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654134751-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654137047-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654139303-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654141639-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654143995-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654146997-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654154929-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654157653-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654160367-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654167941-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654170287-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654172543-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654174969-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654177205-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654179422-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654182792-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654185028-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654187315-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654189442-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654191768-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654194044-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654196271-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654198547-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654200893-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654203100-05:00 try: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654205326-05:00 yield [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654207742-05:00 except Exception as exc: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654210127-05:00 mapped_exc = None [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654212384-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654214710-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654216926-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654219302-05:00 continue [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654221618-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654223904-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654226191-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654228467-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654230882-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654233149-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654235425-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654237662-05:00 raise [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654239898-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654242135-05:00 message = str(exc) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654244371-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654246628-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654248755-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654251051-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654253178-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654255832-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654257950-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654260176-05:00 def test_rundeck_execution_shape(): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654262522-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654264788-05:00 > ex = _recent_execution(rc) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654267035-05:00 ^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654269152-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654271409-05:00 tests/contract/test_rundeck_contract.py:42: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654273755-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654276021-05:00 tests/contract/test_rundeck_contract.py:24: in _recent_execution [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654283436-05:00 data = _live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654285742-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654288009-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654290941-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654293327-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654295842-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654298128-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654300414-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654302700-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654304847-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654307521-05:00 self = [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654309937-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654312163-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654314281-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654316507-05:00 def _request( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654318754-05:00 self, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654320970-05:00 method: str, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654323277-05:00 path: str, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654325563-05:00 *, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654327809-05:00 retry: bool = True, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654330086-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654332402-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654334658-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654336915-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654339161-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654351218-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654356616-05:00 try: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654359538-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654361894-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654364121-05:00 last_exc = exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654366328-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654368574-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654370870-05:00 continue [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654373147-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654375423-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654377729-05:00 ) from exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654380105-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654382262-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654384737-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654387043-05:00 __________________________ test_rundeck_output_shape ___________________________ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654389160-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654391496-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654398186-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654400621-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654403345-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654406118-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654413832-05:00 try: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654416128-05:00 > yield [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654418335-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654420631-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654423295-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654425621-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654428156-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654430601-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654433126-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654435362-05:00 raise exc from None [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654438275-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654440551-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654442957-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654445253-05:00 raise exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654447559-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654450342-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654452579-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654454954-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654457231-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654459477-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654461724-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654464139-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654466356-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654468692-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654471077-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654473483-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654475620-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654477966-05:00 map = {: , : } [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654480133-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654482350-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654484775-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654487041-05:00 try: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654489268-05:00 yield [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654491624-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654494149-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654496345-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654498711-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654501375-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654503512-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654505838-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654507975-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654510252-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654512369-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654515540-05:00 self = [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654522896-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654525311-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654527448-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654529655-05:00 def _request( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654531911-05:00 self, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654534168-05:00 method: str, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654536573-05:00 path: str, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654538929-05:00 *, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654541434-05:00 retry: bool = True, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654543651-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654545867-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654548283-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654550549-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654552786-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654555042-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654557279-05:00 try: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654559535-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654561821-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654563939-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654566205-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654568630-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654570966-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654573273-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654575579-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654577905-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654580280-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654582557-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654584853-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654587079-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654589356-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654591632-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654593908-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654596185-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654598401-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654600688-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654602954-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654605429-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654614504-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654616910-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654619256-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654621393-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654623640-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654625896-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654628162-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654630508-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654637745-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654640021-05:00 try: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654642496-05:00 yield [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654644892-05:00 except Exception as exc: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654647178-05:00 mapped_exc = None [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654649395-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654651621-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654653878-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654656124-05:00 continue [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654658440-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654660766-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654663062-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654665488-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654667834-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654670070-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654672327-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654674702-05:00 raise [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654676929-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654680219-05:00 message = str(exc) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654682505-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654684851-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654686998-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654689434-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654691571-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654693857-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654695984-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654698459-05:00 def test_rundeck_output_shape(): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654700885-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654703121-05:00 > ex = _recent_execution(rc) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654705408-05:00 ^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654707535-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654710239-05:00 tests/contract/test_rundeck_contract.py:59: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654712614-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654714851-05:00 tests/contract/test_rundeck_contract.py:24: in _recent_execution [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654717316-05:00 data = _live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654720050-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654722326-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654724612-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654726888-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654729125-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654731371-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654733618-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654735984-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654738121-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654740357-05:00 self = [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654742594-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654752305-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654754482-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654756719-05:00 def _request( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654758965-05:00 self, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654761450-05:00 method: str, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654763816-05:00 path: str, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654766470-05:00 *, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654768826-05:00 retry: bool = True, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654771053-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654773329-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654775536-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654777762-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654780049-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654782345-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654784571-05:00 try: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654786818-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654789194-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654791420-05:00 last_exc = exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654793696-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654796062-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654798408-05:00 continue [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654800714-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654802981-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654805207-05:00 ) from exc [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654807533-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654809670-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654811947-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654814183-05:00 ================================ tests coverage ================================ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654816509-05:00 _______________ coverage: platform linux, python 3.12.7-final-0 ________________ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654818656-05:00 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654820943-05:00 Name Stmts Miss Branch BrPart Cover Missing [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654823239-05:00 ----------------------------------------------------------------------------------------------- [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654825515-05:00 config/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654827801-05:00 config/admin_gate.py 90 90 30 0 0% 32-203 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654830078-05:00 config/readiness.py 75 75 12 0 0% 47-184 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654846568-05:00 config/settings.py 54 2 6 3 92% 130->138, 139, 141 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654871459-05:00 config/urls.py 9 9 0 0 0% 2-18 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654874063-05:00 fleet/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654884311-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-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654887790-05:00 fleet/api_consent.py 84 84 32 0 0% 23-170 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654908963-05:00 fleet/api_manifest.py 28 28 8 0 0% 38-90 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654911309-05:00 fleet/apps.py 5 0 0 0 100% [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654914132-05:00 fleet/contacts.py 26 18 8 0 24% 54, 63-70, 82-89, 102-129 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654916428-05:00 fleet/correlate.py 51 51 12 0 0% 28-170 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654918744-05:00 fleet/forms.py 17 8 4 0 43% 17-19, 22-31 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654921040-05:00 fleet/home.py 13 13 4 0 0% 28-51 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654923327-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-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654925613-05:00 fleet/logs.py 113 113 18 0 0% 26-287 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654927889-05:00 fleet/management/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654930225-05:00 fleet/management/commands/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654932551-05:00 fleet/management/commands/poll_selftests.py 24 24 6 0 0% 13-61 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654934827-05:00 fleet/management/commands/reconcile_consents.py 37 37 10 0 0% 19-96 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654937124-05:00 fleet/management/commands/sync_devices.py 222 222 84 0 0% 34-364 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654939509-05:00 fleet/manifest.py 16 16 2 0 0% 32-101 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654941795-05:00 fleet/models.py 136 0 0 0 100% [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654944430-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-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654946736-05:00 fleet/roles.py 27 14 6 0 39% 95-108, 129-133 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654949410-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-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654951775-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-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654954330-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-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654956676-05:00 fleet/tests_authority.py 125 125 2 0 0% 4-229 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654958972-05:00 fleet/tests_consent.py 149 149 0 0 0% 16-284 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654961338-05:00 fleet/tests_consent_event.py 113 113 2 0 0% 9-195 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654963624-05:00 fleet/tests_correlate.py 51 51 4 0 0% 2-83 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654965990-05:00 fleet/tests_logs.py 163 163 2 0 0% 11-242 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654971268-05:00 fleet/tests_manifest.py 80 80 0 0 0% 15-190 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654973674-05:00 fleet/tests_memberships.py 179 179 2 0 0% 15-305 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654981507-05:00 fleet/tests_selftest.py 130 130 0 0 0% 14-255 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654983882-05:00 fleet/tests_status.py 219 219 2 0 0% 8-377 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654986188-05:00 fleet/tests_sync.py 178 178 8 0 0% 21-343 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654988475-05:00 fleet/tests_sync_integration.py 29 29 2 0 0% 17-83 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654990761-05:00 fleet/urls_consent.py 3 3 0 0 0% 5-9 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654993037-05:00 fleet/urls_logs.py 4 4 0 0 0% 7-13 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654995333-05:00 fleet/urls_manifest.py 3 3 0 0 0% 7-11 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.654997639-05:00 fleet/urls_selftest.py 3 3 0 0 0% 6-10 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655003663-05:00 fleet/urls_status.py 4 4 0 0 0% 7-13 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655006138-05:00 fleet/validators.py 25 18 8 0 21% 27-29, 38-52 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655008613-05:00 integrations/__init__.py 18 5 0 0 72% 48, 52, 56, 60, 64 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655011427-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-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655014110-05:00 integrations/config.py 57 36 14 0 30% 18, 53-60, 64-66, 74-107, 111-116 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655016426-05:00 integrations/enroll.py 20 10 4 0 42% 28, 37-46, 50, 66 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655018742-05:00 integrations/errors.py 9 2 0 0 78% 35-36 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655020999-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-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655023226-05:00 integrations/headscale.py 33 8 12 4 64% 17, 26, 32-35, 42, 47->46, 49 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655025442-05:00 integrations/health.py 20 20 2 0 0% 6-43 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655027748-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-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655030512-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-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655032858-05:00 integrations/types.py 82 2 0 0 98% 68, 72 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655035134-05:00 integrations/urls.py 3 3 0 0 0% 1-5 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655037380-05:00 integrations/views.py 6 6 0 0 0% 7-16 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655039607-05:00 stores/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655043344-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-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655045611-05:00 stores/api.py 66 66 20 0 0% 35-159 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655052847-05:00 stores/apps.py 5 0 0 0 100% [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655055134-05:00 stores/forms.py 35 20 12 0 32% 73-77, 81-84, 87-105 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655057489-05:00 stores/geocoding.py 115 115 34 0 0% 15-210 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655059696-05:00 stores/management/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655062002-05:00 stores/management/commands/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655064219-05:00 stores/management/commands/check_authority.py 39 39 14 0 0% 14-76 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655066426-05:00 stores/management/commands/migrate_owner_staff.py 73 73 28 0 0% 32-204 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655068642-05:00 stores/management/commands/notify_new_enrolls.py 36 36 8 0 0% 11-75 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655071008-05:00 stores/management/commands/reattach_store.py 50 50 14 0 0% 29-94 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655073722-05:00 stores/management/commands/seed_e2e_fleet.py 231 231 34 0 0% 52-623 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655076316-05:00 stores/management/commands/seed_pilot_stores.py 68 68 16 0 0% 20-141 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655078682-05:00 stores/management/commands/sync_roles.py 24 24 8 0 0% 12-54 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655081157-05:00 stores/map.py 69 69 18 0 0% 19-155 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655083582-05:00 stores/models.py 112 4 0 0 96% 185, 211, 228, 231 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655085789-05:00 stores/scoping.py 5 3 2 0 29% 22-24 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655088006-05:00 stores/tests_api.py 105 105 0 0 0% 12-174 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655090222-05:00 stores/tests_authority.py 128 128 4 0 0% 7-238 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655092499-05:00 stores/tests_basemap.py 41 41 4 0 0% 7-80 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655094845-05:00 stores/tests_collector_config.py 66 66 2 0 0% 8-104 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655097399-05:00 stores/tests_geo.py 72 72 0 0 0% 8-127 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655100073-05:00 stores/tests_map.py 68 68 2 0 0% 6-106 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655185131-05:00 stores/tests_pilot_seed.py 94 94 0 0 0% 7-175 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655194107-05:00 stores/tests_report_config.py 29 29 0 0 0% 6-47 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655198451-05:00 stores/urls.py 4 4 0 0 0% 1-6 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655202000-05:00 stores/views.py 39 39 4 0 0% 2-112 [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655205618-05:00 ----------------------------------------------------------------------------------------------- [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655209077-05:00 TOTAL 5404 4397 788 19 17% [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655212696-05:00 Coverage XML written to file coverage.xml [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655216841-05:00 =========================== short test summary info ============================ [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655220658-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-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655241453-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-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655244276-05:00 ================== 5 failed, 16 passed, 10 skipped in 10.70s =================== [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655247138-05:00 ===CONTRACT_RC=1=== [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.655250051-05:00 ----- end contract Job logs ----- [pod/app-contract-nightly-staging-bm7ls-contract-pod/step-run-contract] 2026-07-30T21:47:34.671205967-05:00 ==> contract run: Failed — STUB-VS-REALITY DRIFT or a live client broke — see the drift report in the Job logs above