===== app-contract-nightly-staging-lr75g-archive-logs-pod.log ===== [pod/app-contract-nightly-staging-lr75g-archive-logs-pod/prepare] 2026-08-13T21:47:37.144670301-05:00 2026/08/14 02:47:37 Entrypoint initialization [pod/app-contract-nightly-staging-lr75g-archive-logs-pod/place-scripts] 2026-08-13T21:47:38.051541861-05:00 2026/08/14 02:47:38 Decoded script /tekton/scripts/script-0-zgq76 [pod/app-contract-nightly-staging-lr75g-archive-logs-pod/place-scripts] 2026-08-13T21:47:38.069206337-05:00 2026/08/14 02:47:38 Decoded script /tekton/scripts/script-1-mg8m4 [pod/app-contract-nightly-staging-lr75g-archive-logs-pod/step-collect-logs] 2026-08-13T21:47:40.425812870-05:00 ==> collecting pod logs for PipelineRun=app-contract-nightly-staging-lr75g ===== app-contract-nightly-staging-lr75g-contract-pod.log ===== [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:09.046264362-05:00 resolved deployed image: registry.storeminder.ai/storeminder/app:5cad235cc948928c86fe0ecbf312ecde7964ab68 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:09.117973722-05:00 job.batch/app-contract-20260814-024708 created [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.795294203-05:00 ----- contract Job logs (app-contract-20260814-024708) ----- [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965056757-05:00 Installing pytest (runtime image has no test deps)… [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965075387-05:00 Running LIVE read-only contract + parity suite: tests/contract [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965080447-05:00 ============================= test session starts ============================== [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965084397-05:00 platform linux -- Python 3.12.7, pytest-9.1.1, pluggy-1.6.0 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965088647-05:00 django: version: 5.2.16, settings: config.settings (from env) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965092287-05:00 rootdir: /app [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965096077-05:00 configfile: pytest.ini [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965100147-05:00 plugins: django-4.14.0, cov-7.1.0, anyio-4.14.2 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965103827-05:00 collected 31 items [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965108327-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965112496-05:00 tests/contract/test_fixture_parity.py .FFsss [ 19%] [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965116726-05:00 tests/contract/test_grafana_contract.py sss [ 29%] [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965131186-05:00 tests/contract/test_headscale_contract.py ... [ 38%] [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965134976-05:00 tests/contract/test_mender_contract.py ssss [ 51%] [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965139376-05:00 tests/contract/test_rundeck_contract.py FFF [ 61%] [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965143566-05:00 tests/contract/test_shape_selfcheck.py ............ [100%] [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965147186-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965151086-05:00 =================================== FAILURES =================================== [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965154716-05:00 ________________________ test_parity_rundeck_execution _________________________ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965158726-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965163876-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965167526-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965171556-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965175126-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965178626-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965182206-05:00 try: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965185726-05:00 > yield [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965189186-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965192976-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965196686-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965200416-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965204006-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965207506-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965211026-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965214676-05:00 raise exc from None [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965218246-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965221766-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965226086-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965230096-05:00 raise exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965245866-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965248446-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965250836-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965253476-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965255886-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965258306-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965261196-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965263596-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965265986-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965268536-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965270956-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965273446-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965275746-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965278456-05:00 map = {: , : } [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965281426-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965284046-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965286586-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965289036-05:00 try: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965291446-05:00 yield [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965294066-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965296536-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965301066-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965303596-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965306056-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965308386-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965310856-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965313196-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965316366-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965318666-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965321076-05:00 self = [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965323586-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965326016-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965328376-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965330766-05:00 def _request( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965333166-05:00 self, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965335606-05:00 method: str, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965337986-05:00 path: str, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965340456-05:00 *, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965342836-05:00 retry: bool = True, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965345226-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965347596-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965350056-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965352476-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965354936-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965357326-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965359736-05:00 try: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965362126-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965364526-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965371106-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965373556-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965381396-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965383976-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965386826-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965389336-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965391736-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965394126-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965396606-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965399055-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965401485-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965403935-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965406355-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965408775-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965411305-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965413705-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965416105-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965418505-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965420915-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965423355-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965425785-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965428225-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965430585-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965433115-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965435525-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965437955-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965440365-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965442755-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965445285-05:00 try: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965447825-05:00 yield [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965450275-05:00 except Exception as exc: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965452705-05:00 mapped_exc = None [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965455135-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965457595-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965460335-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965462765-05:00 continue [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965465215-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965467635-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965470045-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965472455-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965474865-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965477315-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965479745-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965486565-05:00 raise [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965489055-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965491495-05:00 message = str(exc) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965493905-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965496295-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965498605-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965500995-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965503335-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965505725-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965508065-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965510425-05:00 def test_parity_rundeck_execution(): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965512795-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965515245-05:00 ver = rc.config.extra.get("api_version", "48") [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965517655-05:00 proj = rc.config.extra.get("project", "storeminder") [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965521165-05:00 > execs = (_live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) or {}).get("executions") or [] [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965523665-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965525975-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965528395-05:00 tests/contract/test_fixture_parity.py:73: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965531165-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965533805-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965536305-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965538745-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965541755-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965544225-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965546865-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965549505-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965552355-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965555025-05:00 self = [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965557895-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965589475-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965593555-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965597385-05:00 def _request( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965601265-05:00 self, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965604865-05:00 method: str, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965608615-05:00 path: str, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965612645-05:00 *, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965616235-05:00 retry: bool = True, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965619735-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965624035-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965633045-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965637295-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965641025-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965644585-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965649075-05:00 try: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965652705-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965656875-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965660635-05:00 last_exc = exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965669605-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965676445-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965679455-05:00 continue [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965682165-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965684704-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965687154-05:00 ) from exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965689904-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965692214-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965694714-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965697214-05:00 __________________________ test_parity_rundeck_output __________________________ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965699544-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965701934-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965704494-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965706924-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965709404-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965711884-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965714344-05:00 try: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965716864-05:00 > yield [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965719274-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965721674-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965724084-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965726514-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965728994-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965731414-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965733884-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965736314-05:00 raise exc from None [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965738794-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965741204-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965743674-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965746094-05:00 raise exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965748564-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965751044-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965753454-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965755954-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965758444-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965760924-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965763334-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965766094-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965768514-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965770914-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965773334-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965775754-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965782384-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965784944-05:00 map = {: , : } [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965787304-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965789674-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965792194-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965794604-05:00 try: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965796994-05:00 yield [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965799444-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965801854-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965804234-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965806614-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965809104-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965811434-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965813924-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965816244-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965818634-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965820924-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965823334-05:00 self = [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965825724-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965828134-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965830484-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965832994-05:00 def _request( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965835404-05:00 self, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965837874-05:00 method: str, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965840294-05:00 path: str, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965842704-05:00 *, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965845094-05:00 retry: bool = True, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965847494-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965849884-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965852304-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965854734-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965857744-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965860204-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965862644-05:00 try: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965865104-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965867584-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965869904-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965872324-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965874744-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965877224-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965879654-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965882074-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965885744-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965888194-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965890604-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965893014-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965899834-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965906624-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965909164-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965911604-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965914074-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965916484-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965918934-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965921374-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965923864-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965926374-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965928794-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965931274-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965933584-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965936064-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965938584-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965941014-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965943424-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965945344-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965947264-05:00 try: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965949174-05:00 yield [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965951184-05:00 except Exception as exc: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965953094-05:00 mapped_exc = None [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965955024-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965956944-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965958904-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965961414-05:00 continue [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965963394-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965965384-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965967284-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965969243-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965971183-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965973123-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965975063-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965976983-05:00 raise [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965978903-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965981363-05:00 message = str(exc) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965983313-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965985243-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965987093-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965989033-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965990903-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965992833-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965994683-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965996603-05:00 def test_parity_rundeck_output(): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.965998613-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966000523-05:00 ver = rc.config.extra.get("api_version", "48") [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966002423-05:00 proj = rc.config.extra.get("project", "storeminder") [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966004433-05:00 > execs = (_live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) or {}).get("executions") or [] [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966009693-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966011583-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966013473-05:00 tests/contract/test_fixture_parity.py:90: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966015553-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966029593-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966033853-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966035833-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966037793-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966039793-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966041873-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966043793-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966045643-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966047613-05:00 self = [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966049583-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966051533-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966053383-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966055393-05:00 def _request( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966057393-05:00 self, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966059303-05:00 method: str, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966061193-05:00 path: str, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966063123-05:00 *, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966065053-05:00 retry: bool = True, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966066953-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966069013-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966070973-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966072973-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966074903-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966076903-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966078843-05:00 try: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966080783-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966082783-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966084883-05:00 last_exc = exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966086963-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966089023-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966090943-05:00 continue [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966092853-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966094753-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966096683-05:00 ) from exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966098633-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966100593-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966102713-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966104653-05:00 ____________________________ test_rundeck_reachable ____________________________ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966106503-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966108403-05:00 def test_rundeck_reachable(): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966113623-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966115633-05:00 health = rc.healthcheck() # GET /api/{v}/system/info [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966121563-05:00 > assert health.reachable, f"rundeck unreachable: {health.detail}" [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966123643-05:00 E AssertionError: rundeck unreachable: rundeck: GET /api/48/system/info failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966125603-05:00 E assert False [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966127703-05:00 E + where False = .reachable [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966129553-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966131493-05:00 tests/contract/test_rundeck_contract.py:37: AssertionError [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966133413-05:00 _________________________ test_rundeck_execution_shape _________________________ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966135253-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966137163-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966139103-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966141023-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966143013-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966145033-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966146953-05:00 try: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966148903-05:00 > yield [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966150743-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966152633-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966154653-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966156643-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966158573-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966160513-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966162463-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966164403-05:00 raise exc from None [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966166313-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966168293-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966170243-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966172223-05:00 raise exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966174133-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966176103-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966178043-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966179993-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966181923-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966183873-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966185803-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966187743-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966189643-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966191563-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966193493-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966195413-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966197263-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966199253-05:00 map = {: , : } [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966204613-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966206553-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966208493-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966210423-05:00 try: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966212353-05:00 yield [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966214283-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966216183-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966218103-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966220093-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966222013-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966223853-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966226143-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966227993-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966229893-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966231733-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966233903-05:00 self = [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966235863-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966237783-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966239663-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966241582-05:00 def _request( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966243542-05:00 self, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966245462-05:00 method: str, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966247372-05:00 path: str, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966249292-05:00 *, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966251242-05:00 retry: bool = True, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966253142-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966255052-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966256962-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966258902-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966260842-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966262762-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966264692-05:00 try: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966266762-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966268662-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966270522-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966272432-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966274372-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966276412-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966278352-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966280342-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966282272-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966284212-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966286112-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966288052-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966292942-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966294992-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966296912-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966302542-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966304522-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966306472-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966308392-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966310312-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966312282-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966314192-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966316162-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966318102-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966319952-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966321852-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966323752-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966325682-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966327622-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966329592-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966331522-05:00 try: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966333462-05:00 yield [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966335372-05:00 except Exception as exc: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966337302-05:00 mapped_exc = None [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966339222-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966341142-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966343032-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966344942-05:00 continue [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966346852-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966348802-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966350722-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966352722-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966354642-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966356592-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966358532-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966360452-05:00 raise [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966362352-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966364342-05:00 message = str(exc) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966366362-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966368262-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966370112-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966372022-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966373862-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966375772-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966377612-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966379532-05:00 def test_rundeck_execution_shape(): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966381462-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966383382-05:00 > ex = _recent_execution(rc) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966385282-05:00 ^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966387132-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966389032-05:00 tests/contract/test_rundeck_contract.py:42: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966390972-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966396232-05:00 tests/contract/test_rundeck_contract.py:24: in _recent_execution [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966398192-05:00 data = _live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966400102-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966402002-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966403902-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966405782-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966407712-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966409632-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966411532-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966413512-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966415352-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966417282-05:00 self = [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966419202-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966421112-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966422962-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966424862-05:00 def _request( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966426802-05:00 self, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966428742-05:00 method: str, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966430662-05:00 path: str, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966432572-05:00 *, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966434492-05:00 retry: bool = True, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966436402-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966438292-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966440212-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966442192-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966444142-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966446042-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966447942-05:00 try: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966449852-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966451792-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966453732-05:00 last_exc = exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966455692-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966457652-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966459602-05:00 continue [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966461502-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966463432-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966465372-05:00 ) from exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966467352-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966469222-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966471702-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966473622-05:00 __________________________ test_rundeck_output_shape ___________________________ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966475502-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966477412-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966482502-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966484492-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966486412-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966491852-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966493812-05:00 try: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966495802-05:00 > yield [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966497662-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966499592-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966501512-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966503452-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966505382-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966507312-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966509242-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966512411-05:00 raise exc from None [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966514361-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966516351-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966518281-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966520441-05:00 raise exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966522451-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966524381-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966526401-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966528411-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966530411-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966532331-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966534341-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966536271-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966538181-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966540191-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966542431-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966544471-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966546331-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966548341-05:00 map = {: , : } [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966550201-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966552121-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966554051-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966556131-05:00 try: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966558061-05:00 yield [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966560021-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966561951-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966563891-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966565811-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966567741-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966569611-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966571521-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966573391-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966575321-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966580341-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966582301-05:00 self = [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966584221-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966586151-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966588011-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966589901-05:00 def _request( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966591821-05:00 self, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966593781-05:00 method: str, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966595671-05:00 path: str, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966597601-05:00 *, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966599601-05:00 retry: bool = True, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966601491-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966603511-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966605491-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966607421-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966609371-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966611371-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966613291-05:00 try: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966615301-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966617211-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966619051-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966620971-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966622901-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966624941-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966627001-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966628921-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966630841-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966632801-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966634781-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966636691-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966638631-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966640581-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966642511-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966644411-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966646351-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966648321-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966650221-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966652151-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966654101-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966658861-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966660841-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966662791-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966664831-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966666831-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966668761-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966670691-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966675841-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966677871-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966679821-05:00 try: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966681831-05:00 yield [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966684461-05:00 except Exception as exc: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966686391-05:00 mapped_exc = None [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966688321-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966690421-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966692381-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966694661-05:00 continue [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966696611-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966698551-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966700531-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966702531-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966704461-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966706401-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966708471-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966710401-05:00 raise [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966712311-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966714231-05:00 message = str(exc) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966716171-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966718091-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966719931-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966721851-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966723731-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966725731-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966727581-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966729491-05:00 def test_rundeck_output_shape(): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966731431-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966733351-05:00 > ex = _recent_execution(rc) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966735251-05:00 ^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966737091-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966739021-05:00 tests/contract/test_rundeck_contract.py:59: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966741001-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966743011-05:00 tests/contract/test_rundeck_contract.py:24: in _recent_execution [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966744931-05:00 data = _live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966747021-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966748951-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966750881-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966752811-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966754791-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966756771-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966758671-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966761141-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966763011-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966764931-05:00 self = [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966771881-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966773841-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966775721-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966777621-05:00 def _request( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966779571-05:00 self, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966781610-05:00 method: str, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966783600-05:00 path: str, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966785540-05:00 *, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966787460-05:00 retry: bool = True, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966789490-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966791450-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966793400-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966795340-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966797250-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966799140-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966801070-05:00 try: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966802980-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966804920-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966806870-05:00 last_exc = exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966808830-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966810770-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966812690-05:00 continue [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966815370-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966817370-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966819290-05:00 ) from exc [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966821250-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966823150-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966825040-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966826980-05:00 ================================ tests coverage ================================ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966828960-05:00 _______________ coverage: platform linux, python 3.12.7-final-0 ________________ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966830810-05:00 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966833020-05:00 Name Stmts Miss Branch BrPart Cover Missing [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966834940-05:00 ------------------------------------------------------------------------------------------------- [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966836870-05:00 config/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966838850-05:00 config/admin_gate.py 90 90 30 0 0% 32-203 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966840770-05:00 config/readiness.py 75 75 12 0 0% 47-184 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966858040-05:00 config/settings.py 58 2 6 3 92% 130->138, 139, 141 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966871410-05:00 config/urls.py 9 9 0 0 0% 2-18 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966880760-05:00 fleet/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966885640-05:00 fleet/admin.py 292 122 46 0 50% 74-75, 79, 82-85, 99, 103, 106, 140, 146-147, 169, 172, 193, 196, 207, 211, 258-267, 275-281, 286-296, 309-311, 340-344, 348-356, 360-363, 368-385, 390-404, 413-424, 460, 464-467, 471-500, 504-510, 524, 534-549, 584, 588 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966898870-05:00 fleet/api_consent.py 84 84 32 0 0% 23-170 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966901560-05:00 fleet/api_manifest.py 28 28 8 0 0% 38-90 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966904050-05:00 fleet/apps.py 7 0 0 0 100% [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966907060-05:00 fleet/contacts.py 26 18 8 0 24% 54, 63-70, 82-89, 102-129 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966909530-05:00 fleet/correlate.py 51 51 12 0 0% 28-170 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966911910-05:00 fleet/device_sts.py 65 65 14 0 0% 36-220 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966915590-05:00 fleet/deviceconfig.py 180 123 68 0 23% 106, 113, 118, 123, 129, 141, 166-219, 224, 238-253, 277-331, 342-353, 357-359, 363-374, 383-385, 395-397, 403-415 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966918140-05:00 fleet/forms.py 17 8 4 0 43% 17-19, 22-31 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966920640-05:00 fleet/home.py 13 13 4 0 0% 28-51 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966923160-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-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966926110-05:00 fleet/knowledge.py 48 36 22 0 17% 41-51, 57-76, 88-101, 107-109, 121 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966928580-05:00 fleet/knowledge_seed.py 4 4 0 0 0% 26-140 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966930960-05:00 fleet/logs.py 113 113 18 0 0% 26-287 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966933390-05:00 fleet/management/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966935850-05:00 fleet/management/commands/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966938300-05:00 fleet/management/commands/poll_selftests.py 24 24 6 0 0% 13-61 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966940770-05:00 fleet/management/commands/reconcile_consents.py 37 37 10 0 0% 19-96 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966943200-05:00 fleet/management/commands/reconcile_deviceconfig.py 60 60 24 0 0% 26-148 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966947920-05:00 fleet/management/commands/sync_devices.py 222 222 84 0 0% 34-364 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966950470-05:00 fleet/manifest.py 28 28 4 0 0% 37-126 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966952870-05:00 fleet/models.py 174 16 14 0 84% 584-598, 606-616 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966956210-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-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966958810-05:00 fleet/roles.py 27 14 6 0 39% 95-108, 129-133 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966961490-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-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966964120-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-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966967370-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-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966974510-05:00 fleet/tests_authority.py 125 125 2 0 0% 4-229 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966977010-05:00 fleet/tests_consent.py 149 149 0 0 0% 16-284 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966979470-05:00 fleet/tests_consent_event.py 113 113 2 0 0% 9-195 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966981870-05:00 fleet/tests_correlate.py 51 51 4 0 0% 2-83 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966984280-05:00 fleet/tests_device_sts.py 150 150 2 0 0% 12-280 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966986700-05:00 fleet/tests_deviceconfig.py 334 334 4 0 0% 24-516 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966989130-05:00 fleet/tests_knowledge.py 178 178 6 0 0% 18-322 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966996180-05:00 fleet/tests_logs.py 163 163 2 0 0% 11-242 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.966998760-05:00 fleet/tests_manifest.py 92 92 0 0 0% 15-218 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967001400-05:00 fleet/tests_memberships.py 179 179 2 0 0% 15-305 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967003950-05:00 fleet/tests_selftest.py 130 130 0 0 0% 14-255 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967006340-05:00 fleet/tests_status.py 219 219 2 0 0% 8-377 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967008790-05:00 fleet/tests_sync.py 178 178 8 0 0% 21-343 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967011370-05:00 fleet/tests_sync_integration.py 29 29 2 0 0% 17-83 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967013810-05:00 fleet/urls_consent.py 3 3 0 0 0% 5-9 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967016280-05:00 fleet/urls_logs.py 4 4 0 0 0% 7-13 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967030230-05:00 fleet/urls_manifest.py 3 3 0 0 0% 7-11 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967039460-05:00 fleet/urls_selftest.py 3 3 0 0 0% 6-10 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967044580-05:00 fleet/urls_status.py 4 4 0 0 0% 7-13 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967048170-05:00 fleet/validators.py 25 18 8 0 21% 27-29, 38-52 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967051649-05:00 integrations/__init__.py 18 5 0 0 72% 48, 52, 56, 60, 64 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967055089-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-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967058479-05:00 integrations/config.py 57 36 14 0 30% 18, 53-60, 64-66, 74-107, 111-116 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967061909-05:00 integrations/enroll.py 20 10 4 0 42% 28, 37-46, 50, 66 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967065419-05:00 integrations/errors.py 9 2 0 0 78% 35-36 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967069339-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-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967072779-05:00 integrations/headscale.py 33 8 12 4 64% 17, 26, 32-35, 42, 47->46, 49 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967082539-05:00 integrations/health.py 20 20 2 0 0% 6-43 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967085929-05:00 integrations/mender.py 116 85 38 0 20% 33-51, 61-79, 82-88, 92-97, 101-102, 111-121, 131-133, 143-153, 158, 161-162, 174-180, 189-190, 210-218, 221, 231 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967089689-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-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967092609-05:00 integrations/types.py 90 2 0 0 98% 68, 72 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967094999-05:00 integrations/urls.py 3 3 0 0 0% 1-5 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967097479-05:00 integrations/views.py 6 6 0 0 0% 7-16 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967100199-05:00 stores/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967102729-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-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967105139-05:00 stores/api.py 66 66 20 0 0% 35-159 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967107569-05:00 stores/apps.py 5 0 0 0 100% [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967110129-05:00 stores/forms.py 35 20 12 0 32% 73-77, 81-84, 87-105 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967112499-05:00 stores/geocoding.py 115 115 34 0 0% 15-210 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967114869-05:00 stores/management/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967117299-05:00 stores/management/commands/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967119779-05:00 stores/management/commands/check_authority.py 39 39 14 0 0% 14-76 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967122189-05:00 stores/management/commands/migrate_owner_staff.py 73 73 28 0 0% 32-204 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967124569-05:00 stores/management/commands/notify_new_enrolls.py 36 36 8 0 0% 11-75 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967126969-05:00 stores/management/commands/reattach_store.py 50 50 14 0 0% 29-94 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967142109-05:00 stores/management/commands/seed_e2e_fleet.py 231 231 34 0 0% 52-623 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967153059-05:00 stores/management/commands/seed_pilot_stores.py 68 68 16 0 0% 20-141 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967156369-05:00 stores/management/commands/sync_roles.py 24 24 8 0 0% 12-54 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967159129-05:00 stores/map.py 69 69 18 0 0% 19-155 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967161979-05:00 stores/models.py 112 4 0 0 96% 185, 211, 228, 231 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967164539-05:00 stores/scoping.py 5 3 2 0 29% 22-24 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967167759-05:00 stores/tests_api.py 105 105 0 0 0% 12-174 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967170339-05:00 stores/tests_authority.py 128 128 4 0 0% 7-238 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967172819-05:00 stores/tests_basemap.py 41 41 4 0 0% 7-80 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967175239-05:00 stores/tests_collector_config.py 66 66 2 0 0% 8-104 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967185859-05:00 stores/tests_geo.py 72 72 0 0 0% 8-127 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967188389-05:00 stores/tests_map.py 68 68 2 0 0% 6-106 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967191039-05:00 stores/tests_pilot_seed.py 94 94 0 0 0% 7-175 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967193419-05:00 stores/tests_report_config.py 29 29 0 0 0% 6-47 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967195869-05:00 stores/urls.py 4 4 0 0 0% 1-6 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967198859-05:00 stores/views.py 40 40 4 0 0% 2-117 [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967201409-05:00 ------------------------------------------------------------------------------------------------- [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967203819-05:00 TOTAL 6573 5433 968 19 15% [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967206679-05:00 Coverage XML written to file coverage.xml [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967209429-05:00 =========================== short test summary info ============================ [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967212639-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-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967215199-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-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967217709-05:00 =================== 5 failed, 16 passed, 10 skipped in 9.58s =================== [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967220409-05:00 ===CONTRACT_RC=1=== [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.967222909-05:00 ----- end contract Job logs ----- [pod/app-contract-nightly-staging-lr75g-contract-pod/step-run-contract] 2026-08-13T21:47:34.974036794-05:00 ==> contract run: Failed — STUB-VS-REALITY DRIFT or a live client broke — see the drift report in the Job logs above [pod/app-contract-nightly-staging-lr75g-contract-pod/prepare] 2026-08-13T21:47:05.372801357-05:00 2026/08/14 02:47:05 Entrypoint initialization [pod/app-contract-nightly-staging-lr75g-contract-pod/place-scripts] 2026-08-13T21:47:05.654325824-05:00 2026/08/14 02:47:05 Decoded script /tekton/scripts/script-0-czkgd