===== app-contract-nightly-staging-wfc4g-archive-logs-pod.log ===== [pod/app-contract-nightly-staging-wfc4g-archive-logs-pod/step-collect-logs] 2026-07-24T21:48:02.198961149-05:00 ==> collecting pod logs for PipelineRun=app-contract-nightly-staging-wfc4g [pod/app-contract-nightly-staging-wfc4g-archive-logs-pod/prepare] 2026-07-24T21:47:51.894533319-05:00 2026/07/25 02:47:51 Entrypoint initialization [pod/app-contract-nightly-staging-wfc4g-archive-logs-pod/place-scripts] 2026-07-24T21:47:53.170896906-05:00 2026/07/25 02:47:53 Decoded script /tekton/scripts/script-0-9kghr [pod/app-contract-nightly-staging-wfc4g-archive-logs-pod/place-scripts] 2026-07-24T21:47:53.191225185-05:00 2026/07/25 02:47:53 Decoded script /tekton/scripts/script-1-tvpc8 ===== app-contract-nightly-staging-wfc4g-contract-pod.log ===== [pod/app-contract-nightly-staging-wfc4g-contract-pod/prepare] 2026-07-24T21:47:05.278446657-05:00 2026/07/25 02:47:05 Entrypoint initialization [pod/app-contract-nightly-staging-wfc4g-contract-pod/place-scripts] 2026-07-24T21:47:05.788824845-05:00 2026/07/25 02:47:05 Decoded script /tekton/scripts/script-0-cbdcm [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:09.544366962-05:00 resolved deployed image: registry.storeminder.ai/storeminder/app:ee7cf4cd9cd61ed4ab4e7538ef34cddf96caed8c [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:09.749196922-05:00 job.batch/app-contract-20260725-024709 created [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.490479118-05:00 ----- contract Job logs (app-contract-20260725-024709) ----- [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.640692450-05:00 Installing pytest (runtime image has no test deps)… [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.640819811-05:00 Running LIVE read-only contract + parity suite: tests/contract [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.640837852-05:00 ============================= test session starts ============================== [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.640845992-05:00 platform linux -- Python 3.12.7, pytest-9.1.1, pluggy-1.6.0 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.640854052-05:00 django: version: 5.2.16, settings: config.settings (from env) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.640860102-05:00 rootdir: /app [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.640867742-05:00 configfile: pytest.ini [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.640876532-05:00 plugins: django-4.12.0, cov-7.1.0, anyio-4.14.2 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.640882712-05:00 collected 31 items [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.640891222-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.640911162-05:00 tests/contract/test_fixture_parity.py .FFsss [ 19%] [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.640917092-05:00 tests/contract/test_grafana_contract.py sss [ 29%] [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.640922932-05:00 tests/contract/test_headscale_contract.py ... [ 38%] [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.640937233-05:00 tests/contract/test_mender_contract.py ssss [ 51%] [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.640948023-05:00 tests/contract/test_rundeck_contract.py FFF [ 61%] [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.640955283-05:00 tests/contract/test_shape_selfcheck.py ............ [100%] [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.640962643-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.640970793-05:00 =================================== FAILURES =================================== [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.640979443-05:00 ________________________ test_parity_rundeck_execution _________________________ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.640988133-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.640994763-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641002313-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641008143-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641016403-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641024023-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641029563-05:00 try: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641041194-05:00 > yield [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641047894-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641053714-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641061154-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641069424-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641088174-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641096164-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641106524-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641116514-05:00 raise exc from None [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641126274-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641132344-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641139884-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641147215-05:00 raise exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641205655-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641213575-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641219025-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641223745-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641231115-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641236465-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641242155-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641247845-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641253386-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641258826-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641262476-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641267296-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641270516-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641276896-05:00 map = {: , : } [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641285926-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641289536-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641294696-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641298256-05:00 try: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641301956-05:00 yield [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641306156-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641309676-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641319196-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641323996-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641328406-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641333566-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641341256-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641347096-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641352516-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641356087-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641364167-05:00 self = [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641370597-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641378067-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641381677-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641386497-05:00 def _request( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641391347-05:00 self, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641395407-05:00 method: str, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641400027-05:00 path: str, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641404817-05:00 *, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641409417-05:00 retry: bool = True, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641413777-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641418027-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641422457-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641426287-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641430817-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641434687-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641438287-05:00 try: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641443387-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641448157-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641467148-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641473738-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641498168-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641503948-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641510138-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641516848-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641519908-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641524698-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641531248-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641536918-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641542248-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641547008-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641550948-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641554788-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641558418-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641563688-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641568199-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641571649-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641576769-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641582469-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641587039-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641591849-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641597419-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641602549-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641608589-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641616049-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641623199-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641627309-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641633959-05:00 try: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641639259-05:00 yield [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641646519-05:00 except Exception as exc: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641650589-05:00 mapped_exc = None [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641655909-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641659369-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641662739-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641666229-05:00 continue [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641670269-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641674230-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641678470-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641681710-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641685230-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641690060-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641694560-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641707960-05:00 raise [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641712180-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641715660-05:00 message = str(exc) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641719340-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641724250-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641729150-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641736070-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641743740-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641751190-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641755510-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641762140-05:00 def test_parity_rundeck_execution(): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641768490-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641774420-05:00 ver = rc.config.extra.get("api_version", "48") [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641778320-05:00 proj = rc.config.extra.get("project", "storeminder") [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641783171-05:00 > execs = (_live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) or {}).get("executions") or [] [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641787301-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641792001-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641796821-05:00 tests/contract/test_fixture_parity.py:73: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641801251-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641804841-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641808511-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641812831-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641816721-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641820851-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641824681-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641830871-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641835811-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641840361-05:00 self = [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641846231-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641852111-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641858381-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641865691-05:00 def _request( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641872301-05:00 self, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641877841-05:00 method: str, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641883741-05:00 path: str, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641891052-05:00 *, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641895752-05:00 retry: bool = True, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641903182-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641906982-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641911142-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641915632-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641920372-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641924062-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641928162-05:00 try: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641931892-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641937512-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641941942-05:00 last_exc = exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641961722-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641982042-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641986602-05:00 continue [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641992063-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.641997493-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642003753-05:00 ) from exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642010143-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642017113-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642022543-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642029233-05:00 __________________________ test_parity_rundeck_output __________________________ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642041423-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642046713-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642051043-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642054603-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642059793-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642063733-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642068273-05:00 try: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642073003-05:00 > yield [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642076833-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642080763-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642085133-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642089673-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642092843-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642098024-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642104144-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642109034-05:00 raise exc from None [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642114694-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642119284-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642124004-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642129654-05:00 raise exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642133914-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642141264-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642148294-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642155424-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642160784-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642164744-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642170214-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642175054-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642180844-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642184544-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642188504-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642195864-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642201315-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642217555-05:00 map = {: , : } [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642220995-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642228535-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642232885-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642237315-05:00 try: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642243325-05:00 yield [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642248625-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642255725-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642261235-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642266355-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642272835-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642279735-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642284895-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642289855-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642294655-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642298575-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642304035-05:00 self = [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642309886-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642313916-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642318696-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642321846-05:00 def _request( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642326736-05:00 self, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642330496-05:00 method: str, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642335766-05:00 path: str, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642339546-05:00 *, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642343216-05:00 retry: bool = True, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642348346-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642353566-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642359556-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642363186-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642366726-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642370856-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642377356-05:00 try: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642381906-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642388866-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642394856-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642398766-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642406526-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642411996-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642418667-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642423187-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642430327-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642435507-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642439867-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642443997-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642457417-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642471157-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642475317-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642480807-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642485977-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642490247-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642495017-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642499027-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642503757-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642508397-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642514577-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642520308-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642524988-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642528918-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642536428-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642543118-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642549118-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642554058-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642557538-05:00 try: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642560878-05:00 yield [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642566518-05:00 except Exception as exc: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642569968-05:00 mapped_exc = None [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642574378-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642579008-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642582758-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642586498-05:00 continue [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642590428-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642594408-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642599248-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642603948-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642607218-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642611378-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642614998-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642619968-05:00 raise [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642623188-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642629119-05:00 message = str(exc) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642635489-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642643269-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642646899-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642651279-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642657409-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642664249-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642668269-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642672259-05:00 def test_parity_rundeck_output(): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642680469-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642685839-05:00 ver = rc.config.extra.get("api_version", "48") [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642689809-05:00 proj = rc.config.extra.get("project", "storeminder") [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642694919-05:00 > execs = (_live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) or {}).get("executions") or [] [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642715049-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642719129-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642723289-05:00 tests/contract/test_fixture_parity.py:90: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642727849-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642732270-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642736770-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642741000-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642744430-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642748970-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642754060-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642758500-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642763170-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642771880-05:00 self = [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642777700-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642783710-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642789250-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642794220-05:00 def _request( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642801110-05:00 self, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642806610-05:00 method: str, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642813790-05:00 path: str, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642820050-05:00 *, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642824410-05:00 retry: bool = True, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642828640-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642831970-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642835791-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642840411-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642844631-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642849681-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642853151-05:00 try: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642857021-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642861261-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642865631-05:00 last_exc = exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642869571-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642874431-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642878421-05:00 continue [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642882531-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642886351-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642889851-05:00 ) from exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642895241-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642900561-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642905521-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642911481-05:00 ____________________________ test_rundeck_reachable ____________________________ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.642915981-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644135213-05:00 def test_rundeck_reachable(): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644248544-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644260574-05:00 health = rc.healthcheck() # GET /api/{v}/system/info [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644297794-05:00 > assert health.reachable, f"rundeck unreachable: {health.detail}" [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644300724-05:00 E AssertionError: rundeck unreachable: rundeck: GET /api/48/system/info failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644304204-05:00 E assert False [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644306944-05:00 E + where False = .reachable [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644308984-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644311334-05:00 tests/contract/test_rundeck_contract.py:37: AssertionError [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644313654-05:00 _________________________ test_rundeck_execution_shape _________________________ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644315725-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644319055-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644323235-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644325365-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644328645-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644330775-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644332915-05:00 try: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644335035-05:00 > yield [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644337125-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644339375-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644341705-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644343925-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644346025-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644348335-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644350445-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644352555-05:00 raise exc from None [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644354895-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644357515-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644359625-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644369475-05:00 raise exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644371635-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644373865-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644375985-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644378105-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644380385-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644382495-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644384595-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644386885-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644389025-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644392015-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644394125-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644396235-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644398305-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644405175-05:00 map = {: , : } [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644407235-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644418915-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644421076-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644423556-05:00 try: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644425706-05:00 yield [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644427976-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644430246-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644432346-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644434466-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644436576-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644438616-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644440896-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644442926-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644445116-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644447146-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644449336-05:00 self = [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644451746-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644453846-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644455866-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644457946-05:00 def _request( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644460216-05:00 self, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644462346-05:00 method: str, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644464486-05:00 path: str, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644466706-05:00 *, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644468776-05:00 retry: bool = True, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644471016-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644473096-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644475196-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644477836-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644479946-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644482106-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644484406-05:00 try: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644486506-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644488856-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644490886-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644492956-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644495326-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644497906-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644500216-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644502426-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644505216-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644507436-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644509656-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644511786-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644527237-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644529687-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644534977-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644540067-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644548827-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644550987-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644553417-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644555537-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644557877-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644560177-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644562297-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644564937-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644567307-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644569747-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644571877-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644574107-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644576267-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644584567-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644586987-05:00 try: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644589107-05:00 yield [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644591367-05:00 except Exception as exc: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644593537-05:00 mapped_exc = None [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644595757-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644598307-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644600427-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644602627-05:00 continue [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644605187-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644607447-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644609837-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644612197-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644614337-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644616667-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644619057-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644621467-05:00 raise [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644623647-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644628077-05:00 message = str(exc) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644630907-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644633538-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644635888-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644638208-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644640248-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644643098-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644645128-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644647318-05:00 def test_rundeck_execution_shape(): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644650158-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644652278-05:00 > ex = _recent_execution(rc) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644654528-05:00 ^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644656518-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644658988-05:00 tests/contract/test_rundeck_contract.py:42: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644661308-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644663648-05:00 tests/contract/test_rundeck_contract.py:24: in _recent_execution [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644673128-05:00 data = _live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644675858-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644677948-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644680228-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644682628-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644685048-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644687238-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644689478-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644691788-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644693968-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644696188-05:00 self = [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644699078-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644701928-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644703948-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644706238-05:00 def _request( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644708388-05:00 self, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644710528-05:00 method: str, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644712818-05:00 path: str, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644714948-05:00 *, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644717238-05:00 retry: bool = True, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644719658-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644721858-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644724088-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644726208-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644729088-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644731198-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644733848-05:00 try: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644735958-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644738159-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644740379-05:00 last_exc = exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644742489-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644744749-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644747109-05:00 continue [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644749219-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644751519-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644753919-05:00 ) from exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644757029-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644759069-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644761399-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644764149-05:00 __________________________ test_rundeck_output_shape ___________________________ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644766189-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644768299-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644780139-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644782379-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644784659-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644786819-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644795579-05:00 try: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644798209-05:00 > yield [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644800269-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644802519-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644804769-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644807449-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644809559-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644811789-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644814259-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644816399-05:00 raise exc from None [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644818659-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644820789-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644823139-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644826849-05:00 raise exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644829279-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644831419-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644833649-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644836679-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644838809-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644841179-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644843900-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644847210-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644849510-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644851840-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644854660-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644857110-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644859160-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644861990-05:00 map = {: , : } [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644864050-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644866150-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644868390-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644870780-05:00 try: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644872900-05:00 yield [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644875040-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644877280-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644879520-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644882630-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644885130-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644887180-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644889370-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644891410-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644893850-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644895880-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644902080-05:00 self = [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644910690-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644913830-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644915870-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644918000-05:00 def _request( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644920320-05:00 self, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644922430-05:00 method: str, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644924540-05:00 path: str, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644926810-05:00 *, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644929880-05:00 retry: bool = True, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644932100-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644934360-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644936530-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644939270-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644941540-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644943650-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644945840-05:00 try: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644947950-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644950051-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644952121-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644954531-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644956911-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644959351-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644961681-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644963871-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644967451-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644969701-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644971931-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644974181-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644976901-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644979201-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644981331-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644983721-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644986111-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644988241-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644990641-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644992921-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.644995531-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645004861-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645007031-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645009451-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645011591-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645013841-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645015971-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645018101-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645020461-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645027871-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645038321-05:00 try: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645045911-05:00 yield [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645048091-05:00 except Exception as exc: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645051061-05:00 mapped_exc = None [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645053231-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645055352-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645057612-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645059902-05:00 continue [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645062212-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645064762-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645066932-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645069292-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645071462-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645073562-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645076962-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645079132-05:00 raise [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645081392-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645083502-05:00 message = str(exc) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645085862-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645088222-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645090292-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645092992-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645095042-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645097222-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645099312-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645219963-05:00 def test_rundeck_output_shape(): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645226083-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645229383-05:00 > ex = _recent_execution(rc) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645232623-05:00 ^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645235753-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645238733-05:00 tests/contract/test_rundeck_contract.py:59: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645242293-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645245763-05:00 tests/contract/test_rundeck_contract.py:24: in _recent_execution [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645249043-05:00 data = _live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645251903-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645254023-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645256363-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645258473-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645260743-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645263113-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645265504-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645267894-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645270054-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645273224-05:00 self = [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645275594-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645288214-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645290574-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645293454-05:00 def _request( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645295564-05:00 self, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645297844-05:00 method: str, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645299944-05:00 path: str, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645302044-05:00 *, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645304364-05:00 retry: bool = True, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645306444-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645309274-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645311584-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645313704-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645316064-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645318154-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645320274-05:00 try: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645322584-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645324874-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645327104-05:00 last_exc = exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645329334-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645332044-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645334304-05:00 continue [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645336404-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645339074-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645341694-05:00 ) from exc [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645345024-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645347204-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645349454-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645351764-05:00 ================================ tests coverage ================================ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645354134-05:00 _______________ coverage: platform linux, python 3.12.7-final-0 ________________ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645356144-05:00 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645360584-05:00 Name Stmts Miss Branch BrPart Cover Missing [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645362844-05:00 ----------------------------------------------------------------------------------------------- [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645365494-05:00 config/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645368224-05:00 config/admin_gate.py 90 90 30 0 0% 32-203 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645371115-05:00 config/readiness.py 75 75 12 0 0% 47-184 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645459905-05:00 config/settings.py 54 2 6 3 92% 130->138, 139, 141 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645496896-05:00 config/urls.py 9 9 0 0 0% 2-18 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645511286-05:00 fleet/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645539526-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-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645550646-05:00 fleet/api_consent.py 84 84 32 0 0% 23-170 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645581226-05:00 fleet/api_manifest.py 28 28 8 0 0% 38-90 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645588967-05:00 fleet/apps.py 5 0 0 0 100% [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645595007-05:00 fleet/contacts.py 26 18 8 0 24% 54, 63-70, 82-89, 102-129 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645603577-05:00 fleet/correlate.py 51 51 12 0 0% 28-170 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645613477-05:00 fleet/forms.py 17 8 4 0 43% 17-19, 22-31 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645620607-05:00 fleet/home.py 13 13 4 0 0% 28-51 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645624667-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-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645629937-05:00 fleet/logs.py 113 113 18 0 0% 26-287 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645635767-05:00 fleet/management/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645641007-05:00 fleet/management/commands/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645647177-05:00 fleet/management/commands/poll_selftests.py 24 24 6 0 0% 13-61 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645651557-05:00 fleet/management/commands/reconcile_consents.py 37 37 10 0 0% 19-96 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645656967-05:00 fleet/management/commands/sync_devices.py 222 222 84 0 0% 34-364 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645661937-05:00 fleet/manifest.py 16 16 2 0 0% 32-101 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645666887-05:00 fleet/models.py 136 0 0 0 100% [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645675097-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-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645680377-05:00 fleet/roles.py 27 14 6 0 39% 95-108, 129-133 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645686627-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-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645695998-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-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645703968-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-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645710728-05:00 fleet/tests_authority.py 125 125 2 0 0% 4-229 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645715538-05:00 fleet/tests_consent.py 149 149 0 0 0% 16-284 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645721458-05:00 fleet/tests_consent_event.py 113 113 2 0 0% 9-195 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645732318-05:00 fleet/tests_correlate.py 51 51 4 0 0% 2-83 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645742198-05:00 fleet/tests_logs.py 163 163 2 0 0% 11-242 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645747438-05:00 fleet/tests_manifest.py 80 80 0 0 0% 15-190 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645753888-05:00 fleet/tests_memberships.py 179 179 2 0 0% 15-305 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645772778-05:00 fleet/tests_selftest.py 130 130 0 0 0% 14-255 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645777778-05:00 fleet/tests_status.py 219 219 2 0 0% 8-377 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645782908-05:00 fleet/tests_sync.py 178 178 8 0 0% 21-343 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645788498-05:00 fleet/tests_sync_integration.py 29 29 2 0 0% 17-83 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645793078-05:00 fleet/urls_consent.py 3 3 0 0 0% 5-9 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645800319-05:00 fleet/urls_logs.py 4 4 0 0 0% 7-13 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645805299-05:00 fleet/urls_manifest.py 3 3 0 0 0% 7-11 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645810349-05:00 fleet/urls_selftest.py 3 3 0 0 0% 6-10 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645833349-05:00 fleet/urls_status.py 4 4 0 0 0% 7-13 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645843409-05:00 fleet/validators.py 25 18 8 0 21% 27-29, 38-52 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645851409-05:00 integrations/__init__.py 18 5 0 0 72% 48, 52, 56, 60, 64 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645859859-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-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645865749-05:00 integrations/config.py 57 36 14 0 30% 18, 53-60, 64-66, 74-107, 111-116 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645874349-05:00 integrations/enroll.py 20 10 4 0 42% 28, 37-46, 50, 66 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645879959-05:00 integrations/errors.py 9 2 0 0 78% 35-36 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645886349-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-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645898829-05:00 integrations/headscale.py 33 8 12 4 64% 17, 26, 32-35, 42, 47->46, 49 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645903530-05:00 integrations/health.py 20 20 2 0 0% 6-43 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645908330-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-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645913740-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-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645917750-05:00 integrations/types.py 82 2 0 0 98% 68, 72 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645923640-05:00 integrations/urls.py 3 3 0 0 0% 1-5 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645928210-05:00 integrations/views.py 6 6 0 0 0% 7-16 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645934480-05:00 stores/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645940440-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-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645947190-05:00 stores/api.py 66 66 20 0 0% 35-159 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645953310-05:00 stores/apps.py 5 0 0 0 100% [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645976480-05:00 stores/forms.py 35 20 12 0 32% 73-77, 81-84, 87-105 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645982370-05:00 stores/geocoding.py 115 115 34 0 0% 15-210 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645991970-05:00 stores/management/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.645999810-05:00 stores/management/commands/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646009081-05:00 stores/management/commands/check_authority.py 39 39 14 0 0% 14-76 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646013821-05:00 stores/management/commands/migrate_owner_staff.py 73 73 28 0 0% 32-204 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646018821-05:00 stores/management/commands/notify_new_enrolls.py 36 36 8 0 0% 11-75 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646023991-05:00 stores/management/commands/reattach_store.py 50 50 14 0 0% 29-94 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646028871-05:00 stores/management/commands/seed_e2e_fleet.py 231 231 34 0 0% 52-623 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646050931-05:00 stores/management/commands/seed_pilot_stores.py 68 68 16 0 0% 20-141 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646071171-05:00 stores/management/commands/sync_roles.py 24 24 8 0 0% 12-54 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646076211-05:00 stores/map.py 69 69 18 0 0% 19-155 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646086991-05:00 stores/models.py 112 4 0 0 96% 185, 211, 228, 231 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646092571-05:00 stores/scoping.py 5 3 2 0 29% 22-24 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646098771-05:00 stores/tests_api.py 105 105 0 0 0% 12-174 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646105801-05:00 stores/tests_authority.py 128 128 4 0 0% 7-238 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646111762-05:00 stores/tests_basemap.py 41 41 4 0 0% 7-80 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646119962-05:00 stores/tests_collector_config.py 66 66 2 0 0% 8-104 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646125822-05:00 stores/tests_geo.py 72 72 0 0 0% 8-127 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646133302-05:00 stores/tests_map.py 68 68 2 0 0% 6-106 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646170282-05:00 stores/tests_pilot_seed.py 94 94 0 0 0% 7-175 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646176042-05:00 stores/tests_report_config.py 29 29 0 0 0% 6-47 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646181062-05:00 stores/urls.py 4 4 0 0 0% 1-6 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646185172-05:00 stores/views.py 39 39 4 0 0% 2-112 [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646190982-05:00 ----------------------------------------------------------------------------------------------- [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646195792-05:00 TOTAL 5404 4397 788 19 17% [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646200552-05:00 Coverage XML written to file coverage.xml [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646207442-05:00 =========================== short test summary info ============================ [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646215062-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-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646241763-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-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646249233-05:00 =================== 5 failed, 16 passed, 10 skipped in 9.16s =================== [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646257133-05:00 ===CONTRACT_RC=1=== [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.646261603-05:00 ----- end contract Job logs ----- [pod/app-contract-nightly-staging-wfc4g-contract-pod/step-run-contract] 2026-07-24T21:47:47.652389901-05:00 ==> contract run: Failed — STUB-VS-REALITY DRIFT or a live client broke — see the drift report in the Job logs above