===== app-contract-nightly-staging-jppkb-archive-logs-pod.log ===== [pod/app-contract-nightly-staging-jppkb-archive-logs-pod/prepare] 2026-08-19T21:47:35.516547693-05:00 2026/08/20 02:47:35 Entrypoint initialization [pod/app-contract-nightly-staging-jppkb-archive-logs-pod/place-scripts] 2026-08-19T21:47:35.741664893-05:00 2026/08/20 02:47:35 Decoded script /tekton/scripts/script-0-drjd4 [pod/app-contract-nightly-staging-jppkb-archive-logs-pod/place-scripts] 2026-08-19T21:47:35.761519105-05:00 2026/08/20 02:47:35 Decoded script /tekton/scripts/script-1-b62cl [pod/app-contract-nightly-staging-jppkb-archive-logs-pod/step-collect-logs] 2026-08-19T21:47:39.207961532-05:00 ==> collecting pod logs for PipelineRun=app-contract-nightly-staging-jppkb ===== app-contract-nightly-staging-jppkb-contract-pod.log ===== [pod/app-contract-nightly-staging-jppkb-contract-pod/place-scripts] 2026-08-19T21:47:03.667934698-05:00 2026/08/20 02:47:03 Decoded script /tekton/scripts/script-0-c4gdm [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:07.143822674-05:00 resolved deployed image: registry.storeminder.ai/storeminder/app:897aaef4d910654c81c263d81763b995f342fade [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:07.233696000-05:00 job.batch/app-contract-20260820-024707 created [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.065185929-05:00 ----- contract Job logs (app-contract-20260820-024707) ----- [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355544356-05:00 Installing pytest (runtime image has no test deps)… [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355656566-05:00 Running LIVE read-only contract + parity suite: tests/contract [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355663686-05:00 ============================= test session starts ============================== [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355669146-05:00 platform linux -- Python 3.12.7, pytest-9.1.1, pluggy-1.6.0 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355672995-05:00 django: version: 5.2.16, settings: config.settings (from env) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355676875-05:00 rootdir: /app [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355681325-05:00 configfile: pytest.ini [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355685795-05:00 plugins: django-4.14.0, cov-7.1.0, anyio-4.14.2 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355689675-05:00 collected 31 items [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355693385-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355697495-05:00 tests/contract/test_fixture_parity.py .FFsss [ 19%] [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355701285-05:00 tests/contract/test_grafana_contract.py sss [ 29%] [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355705145-05:00 tests/contract/test_headscale_contract.py ... [ 38%] [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355708945-05:00 tests/contract/test_mender_contract.py ssss [ 51%] [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355712665-05:00 tests/contract/test_rundeck_contract.py FFF [ 61%] [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355716775-05:00 tests/contract/test_shape_selfcheck.py ............ [100%] [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355720415-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355724225-05:00 =================================== FAILURES =================================== [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355727995-05:00 ________________________ test_parity_rundeck_execution _________________________ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355731675-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355735985-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355739885-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355743665-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355747765-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355751655-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355755715-05:00 try: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355760395-05:00 > yield [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355773175-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355777695-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355782405-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355786835-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355792185-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355796095-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355799945-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355803785-05:00 raise exc from None [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355809245-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355813165-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355819715-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355823525-05:00 raise exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355838765-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355841625-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355844525-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355847125-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355849725-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355852245-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355854845-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355857465-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355860075-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355862765-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355865475-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355868145-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355870595-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355874144-05:00 map = {: , : } [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355877354-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355879964-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355882714-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355885324-05:00 try: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355887854-05:00 yield [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355890484-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355893054-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355895604-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355898204-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355900784-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355903284-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355905984-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355908454-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355911014-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355913474-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355916094-05:00 self = [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355918684-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355921294-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355923854-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355926374-05:00 def _request( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355928954-05:00 self, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355932904-05:00 method: str, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355935544-05:00 path: str, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355938064-05:00 *, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355940604-05:00 retry: bool = True, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355945384-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355947994-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355950634-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355953184-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355955734-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355958314-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355960854-05:00 try: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355963444-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355965964-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355973524-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355976194-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355984444-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355987314-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355990014-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355992624-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355995194-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.355997844-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356000444-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356003124-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356005784-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356008414-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356012864-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356015574-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356018214-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356020824-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356023434-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356026094-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356028754-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356031424-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356033974-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356036614-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356039084-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356041884-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356044484-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356047064-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356049704-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356052244-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356054944-05:00 try: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356057584-05:00 yield [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356060144-05:00 except Exception as exc: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356062834-05:00 mapped_exc = None [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356065464-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356068044-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356070684-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356073434-05:00 continue [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356076923-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356079543-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356082153-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356084783-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356087363-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356090003-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356092643-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356100163-05:00 raise [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356102793-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356105383-05:00 message = str(exc) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356107903-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356110483-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356112913-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356115523-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356118033-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356120553-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356123023-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356125553-05:00 def test_parity_rundeck_execution(): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356128073-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356130713-05:00 ver = rc.config.extra.get("api_version", "48") [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356133303-05:00 proj = rc.config.extra.get("project", "storeminder") [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356135903-05:00 > execs = (_live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) or {}).get("executions") or [] [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356139403-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356141843-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356144313-05:00 tests/contract/test_fixture_parity.py:73: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356147173-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356149823-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356152403-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356155223-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356157733-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356177193-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356182913-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356186003-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356188493-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356191033-05:00 self = [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356193673-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356196233-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356198663-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356201633-05:00 def _request( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356204203-05:00 self, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356206713-05:00 method: str, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356209223-05:00 path: str, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356211823-05:00 *, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356214423-05:00 retry: bool = True, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356216923-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356219443-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356221963-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356224553-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356227233-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356229833-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356232363-05:00 try: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356234923-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356237433-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356240043-05:00 last_exc = exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356248583-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356254703-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356257503-05:00 continue [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356260093-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356262723-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356265283-05:00 ) from exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356268503-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356270943-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356273493-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356276063-05:00 __________________________ test_parity_rundeck_output __________________________ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356278533-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356281152-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356283752-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356286292-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356288862-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356291532-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356294072-05:00 try: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356296622-05:00 > yield [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356299072-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356301632-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356304292-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356306832-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356309472-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356312022-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356314672-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356317222-05:00 raise exc from None [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356319782-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356322332-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356325082-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356327652-05:00 raise exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356330222-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356332762-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356335312-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356337852-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356340392-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356343002-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356345602-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356348172-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356350912-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356353422-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356356022-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356358602-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356365722-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356368452-05:00 map = {: , : } [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356370962-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356373442-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356376192-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356378722-05:00 try: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356381262-05:00 yield [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356383782-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356386322-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356388932-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356391652-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356394182-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356396632-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356399192-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356401652-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356404252-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356406802-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356409482-05:00 self = [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356412112-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356414782-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356418062-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356420612-05:00 def _request( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356423132-05:00 self, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356425682-05:00 method: str, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356428282-05:00 path: str, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356430772-05:00 *, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356433392-05:00 retry: bool = True, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356436052-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356438562-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356441082-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356443622-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356446332-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356448892-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356451462-05:00 try: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356454082-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356456682-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356459382-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356462712-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356467112-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356502571-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356507151-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356512001-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356516851-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356520921-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356524791-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356528591-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356535791-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356547041-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356549841-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356552461-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356555061-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356557571-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356560121-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356562631-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356565161-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356567701-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356570211-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356572791-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356575331-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356577871-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356580451-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356583031-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356585591-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356588161-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356590691-05:00 try: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356593361-05:00 yield [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356597101-05:00 except Exception as exc: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356599691-05:00 mapped_exc = None [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356602311-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356604821-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356607371-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356609921-05:00 continue [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356612551-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356615381-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356618081-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356620681-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356623191-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356625761-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356628331-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356630891-05:00 raise [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356633421-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356636141-05:00 message = str(exc) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356638681-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356641231-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356643681-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356646231-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356648681-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356651871-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356654301-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356656861-05:00 def test_parity_rundeck_output(): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356659381-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356662001-05:00 ver = rc.config.extra.get("api_version", "48") [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356664651-05:00 proj = rc.config.extra.get("project", "storeminder") [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356667251-05:00 > execs = (_live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) or {}).get("executions") or [] [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356675381-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356677901-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356680431-05:00 tests/contract/test_fixture_parity.py:90: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356683071-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356685580-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356688900-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356691470-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356693980-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356696710-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356699200-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356701800-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356704290-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356706890-05:00 self = [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356709440-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356712050-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356714500-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356717020-05:00 def _request( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356719610-05:00 self, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356722150-05:00 method: str, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356724740-05:00 path: str, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356727310-05:00 *, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356729840-05:00 retry: bool = True, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356732360-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356734900-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356737510-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356740120-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356742680-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356745360-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356747960-05:00 try: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356750570-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356753120-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356755680-05:00 last_exc = exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356758210-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356760790-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356763310-05:00 continue [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356765940-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356768490-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356771020-05:00 ) from exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356773750-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356776220-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356778750-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356781300-05:00 ____________________________ test_rundeck_reachable ____________________________ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356783800-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356786430-05:00 def test_rundeck_reachable(): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356791840-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356794440-05:00 health = rc.healthcheck() # GET /api/{v}/system/info [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356801290-05:00 > assert health.reachable, f"rundeck unreachable: {health.detail}" [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356804010-05:00 E AssertionError: rundeck unreachable: rundeck: GET /api/48/system/info failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356806640-05:00 E assert False [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356809190-05:00 E + where False = .reachable [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356811710-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356814320-05:00 tests/contract/test_rundeck_contract.py:37: AssertionError [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356817640-05:00 _________________________ test_rundeck_execution_shape _________________________ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356820090-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356822620-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356825160-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356827710-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356830230-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356832800-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356835360-05:00 try: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356837950-05:00 > yield [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356840390-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356842850-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356845440-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356848020-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356850660-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356853250-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356855820-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356858360-05:00 raise exc from None [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356860890-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356865050-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356868250-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356870810-05:00 raise exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356873320-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356875960-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356878540-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356881080-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356883610-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356886200-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356888779-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356891339-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356893879-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356896469-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356899049-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356901609-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356904089-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356906679-05:00 map = {: , : } [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356909149-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356920639-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356923279-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356927569-05:00 try: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356930149-05:00 yield [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356932689-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356935209-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356937799-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356940339-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356942909-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356945349-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356947889-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356950379-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356952929-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356955429-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356957999-05:00 self = [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356960539-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356963089-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356965529-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356968089-05:00 def _request( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356970659-05:00 self, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356973189-05:00 method: str, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356975759-05:00 path: str, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356978299-05:00 *, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356980789-05:00 retry: bool = True, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356983289-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356985779-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356989559-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356992179-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356994749-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356997289-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.356999789-05:00 try: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357002389-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357004949-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357007369-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357009939-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357012459-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357015049-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357018339-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357020899-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357023399-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357025949-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357030079-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357032679-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357038219-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357040809-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357043419-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357046129-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357053269-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357055919-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357058659-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357061229-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357063739-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357066229-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357068739-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357071409-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357073919-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357076529-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357079179-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357081709-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357084239-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357087299-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357089869-05:00 try: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357092368-05:00 yield [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357095298-05:00 except Exception as exc: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357097888-05:00 mapped_exc = None [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357100468-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357102998-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357105598-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357108128-05:00 continue [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357110698-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357113228-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357115758-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357118278-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357120878-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357123468-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357126198-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357128748-05:00 raise [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357131398-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357134638-05:00 message = str(exc) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357137258-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357139828-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357142298-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357144878-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357147358-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357149938-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357152368-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357155578-05:00 def test_rundeck_execution_shape(): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357158168-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357175068-05:00 > ex = _recent_execution(rc) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357180478-05:00 ^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357182928-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357185498-05:00 tests/contract/test_rundeck_contract.py:42: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357188038-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357190588-05:00 tests/contract/test_rundeck_contract.py:24: in _recent_execution [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357197958-05:00 data = _live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357200528-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357203038-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357205618-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357208158-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357210678-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357213238-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357215868-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357218438-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357220888-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357223498-05:00 self = [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357226978-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357229588-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357232008-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357234538-05:00 def _request( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357237088-05:00 self, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357239608-05:00 method: str, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357242248-05:00 path: str, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357244818-05:00 *, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357247378-05:00 retry: bool = True, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357249898-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357252378-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357254948-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357257568-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357260118-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357262688-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357265198-05:00 try: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357267868-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357270388-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357272928-05:00 last_exc = exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357275448-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357277958-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357280468-05:00 continue [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357282998-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357285508-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357288098-05:00 ) from exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357290737-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357293257-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357295747-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357298277-05:00 __________________________ test_rundeck_output_shape ___________________________ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357300717-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357303197-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357309097-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357311687-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357314227-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357316747-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357323657-05:00 try: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357326207-05:00 > yield [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357328667-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357331207-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:101: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357333817-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357336337-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:250: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357338937-05:00 resp = self._pool.handle_request(req) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357341457-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357344107-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:256: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357346647-05:00 raise exc from None [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357349727-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection_pool.py:236: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357352257-05:00 response = connection.handle_request( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357354897-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:101: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357357447-05:00 raise exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357360117-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:78: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357362637-05:00 stream = self._connect(request) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357365157-05:00 ^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357367747-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_sync/connection.py:124: in _connect [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357370367-05:00 stream = self._network_backend.connect_tcp(**kwargs) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357372957-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357375507-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_backends/sync.py:207: in connect_tcp [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357378087-05:00 with map_exceptions(exc_map): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357380587-05:00 ^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357383097-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357385627-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357388167-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357390607-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357393177-05:00 map = {: , : } [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357395707-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357398237-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357400817-05:00 def map_exceptions(map: ExceptionMapping) -> typing.Iterator[None]: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357403427-05:00 try: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357406297-05:00 yield [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357408897-05:00 except Exception as exc: # noqa: PIE786 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357411397-05:00 for from_exc, to_exc in map.items(): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357413967-05:00 if isinstance(exc, from_exc): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357417507-05:00 > raise to_exc(exc) from exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357420167-05:00 E httpcore.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357422597-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357425207-05:00 /usr/local/lib/python3.12/site-packages/httpcore/_exceptions.py:14: ConnectError [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357427657-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357430237-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357432717-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357435267-05:00 self = [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357442317-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357444917-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357447377-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357449867-05:00 def _request( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357452377-05:00 self, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357454857-05:00 method: str, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357457367-05:00 path: str, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357459937-05:00 *, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357462507-05:00 retry: bool = True, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357465017-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357467517-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357470037-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357472637-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357475157-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357477797-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357480317-05:00 try: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357482957-05:00 > resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357485536-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357487966-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357490486-05:00 integrations/base.py:135: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357493076-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357495616-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:825: in request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357498206-05:00 return self.send(request, auth=auth, follow_redirects=follow_redirects) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357500836-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357503466-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:914: in send [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357506006-05:00 response = self._send_handling_auth( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357508536-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357511046-05:00 response = self._send_handling_redirects( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357513696-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357516306-05:00 response = self._send_single_request(request) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357518856-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357521496-05:00 /usr/local/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357524076-05:00 response = transport.handle_request(request) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357526666-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357529236-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:249: in handle_request [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357531766-05:00 with map_httpcore_exceptions(): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357535346-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357541896-05:00 /usr/local/lib/python3.12/contextlib.py:158: in __exit__ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357544506-05:00 self.gen.throw(value) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357547276-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357549796-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357552326-05:00 @contextlib.contextmanager [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357554946-05:00 def map_httpcore_exceptions() -> typing.Iterator[None]: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357557456-05:00 global HTTPCORE_EXC_MAP [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357559986-05:00 if len(HTTPCORE_EXC_MAP) == 0: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357566836-05:00 HTTPCORE_EXC_MAP = _load_httpcore_exceptions() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357569376-05:00 try: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357571966-05:00 yield [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357574556-05:00 except Exception as exc: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357577126-05:00 mapped_exc = None [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357579736-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357582286-05:00 for from_exc, to_exc in HTTPCORE_EXC_MAP.items(): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357584806-05:00 if not isinstance(exc, from_exc): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357587406-05:00 continue [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357589996-05:00 # We want to map to the most specific exception we can find. [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357593396-05:00 # Eg if `exc` is an `httpcore.ReadTimeout`, we want to map to [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357595996-05:00 # `httpx.ReadTimeout`, not just `httpx.TimeoutException`. [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357598686-05:00 if mapped_exc is None or issubclass(to_exc, mapped_exc): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357601276-05:00 mapped_exc = to_exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357603786-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357606326-05:00 if mapped_exc is None: # pragma: no cover [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357608956-05:00 raise [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357611546-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357614136-05:00 message = str(exc) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357616776-05:00 > raise mapped_exc(message) from exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357619336-05:00 E httpx.ConnectError: [Errno 111] Connection refused [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357621756-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357624556-05:00 /usr/local/lib/python3.12/site-packages/httpx/_transports/default.py:118: ConnectError [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357626996-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357629586-05:00 The above exception was the direct cause of the following exception: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357632016-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357634656-05:00 def test_rundeck_output_shape(): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357637316-05:00 rc = _live.live_rundeck() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357640156-05:00 > ex = _recent_execution(rc) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357642656-05:00 ^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357645046-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357647986-05:00 tests/contract/test_rundeck_contract.py:59: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357650626-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357653246-05:00 tests/contract/test_rundeck_contract.py:24: in _recent_execution [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357655886-05:00 data = _live.get_json(rc, f"/api/{ver}/project/{proj}/executions", max=1) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357658456-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357661066-05:00 tests/contract/_live.py:116: in get_json [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357663576-05:00 return client._get_json(path, params=params or None) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357666096-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357668736-05:00 integrations/base.py:174: in _get_json [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357671236-05:00 return self._request("GET", path, **kwargs).json() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357673906-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357676506-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357679185-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357681735-05:00 self = [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357684445-05:00 method = 'GET', path = '/api/48/project/storeminder/executions', retry = True [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357691515-05:00 kwargs = {'params': {'max': 1}} [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357693975-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357696525-05:00 def _request( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357699225-05:00 self, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357701805-05:00 method: str, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357704435-05:00 path: str, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357706975-05:00 *, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357710315-05:00 retry: bool = True, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357713015-05:00 **kwargs: Any, [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357715525-05:00 ) -> httpx.Response: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357718045-05:00 client = self._ensure_client() [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357720695-05:00 attempts = (self.config.retries + 1) if retry else 1 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357723305-05:00 last_exc: Exception | None = None [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357725965-05:00 for attempt in range(attempts): [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357728545-05:00 try: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357731065-05:00 resp = client.request(method, path, **kwargs) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357733745-05:00 except (httpx.TimeoutException, httpx.TransportError) as exc: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357736335-05:00 last_exc = exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357738905-05:00 if attempt + 1 < attempts: [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357741955-05:00 time.sleep(self._backoff(attempt)) [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357744525-05:00 continue [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357747145-05:00 > raise IntegrationUnavailable( [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357749765-05:00 f"{self.name}: {method} {path} failed: {exc}" [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357752305-05:00 ) from exc [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357754945-05:00 E integrations.errors.IntegrationUnavailable: rundeck: GET /api/48/project/storeminder/executions failed: [Errno 111] Connection refused [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357757405-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357759955-05:00 integrations/base.py:141: IntegrationUnavailable [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357762515-05:00 ================================ tests coverage ================================ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357765185-05:00 _______________ coverage: platform linux, python 3.12.7-final-0 ________________ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357767615-05:00 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357770225-05:00 Name Stmts Miss Branch BrPart Cover Missing [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357772945-05:00 ------------------------------------------------------------------------------------------------- [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357775515-05:00 config/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357778555-05:00 config/admin_gate.py 90 90 30 0 0% 32-203 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357781145-05:00 config/readiness.py 75 75 12 0 0% 47-184 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357795875-05:00 config/settings.py 60 2 6 3 92% 132->140, 141, 143 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357808925-05:00 config/urls.py 9 9 0 0 0% 2-18 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357818505-05:00 fleet/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357824285-05:00 fleet/admin.py 302 122 46 0 52% 75-76, 80, 83-86, 100, 104, 107, 141, 147-148, 170, 173, 194, 197, 208, 212, 259-268, 276-282, 287-297, 310-312, 341-345, 349-357, 361-364, 369-386, 391-405, 414-425, 461, 465-468, 472-501, 505-511, 525, 535-550, 585, 589 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357828665-05:00 fleet/api_consent.py 84 84 32 0 0% 23-170 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357841785-05:00 fleet/api_manifest.py 28 28 8 0 0% 38-90 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357844525-05:00 fleet/api_uplink.py 64 64 20 0 0% 20-140 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357847265-05:00 fleet/apps.py 7 0 0 0 100% [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357850155-05:00 fleet/contacts.py 26 18 8 0 24% 54, 63-70, 82-89, 102-129 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357852745-05:00 fleet/correlate.py 51 51 12 0 0% 28-170 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357855345-05:00 fleet/device_sts.py 65 65 14 0 0% 36-220 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357859585-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-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357862435-05:00 fleet/forms.py 17 8 4 0 43% 17-19, 22-31 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357865025-05:00 fleet/home.py 13 13 4 0 0% 28-51 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357867625-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-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357870515-05:00 fleet/knowledge.py 48 36 22 0 17% 41-51, 57-76, 88-101, 107-109, 121 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357873135-05:00 fleet/knowledge_seed.py 4 4 0 0 0% 26-140 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357875694-05:00 fleet/logs.py 113 113 18 0 0% 26-287 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357878494-05:00 fleet/management/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357881094-05:00 fleet/management/commands/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357883734-05:00 fleet/management/commands/poll_selftests.py 24 24 6 0 0% 13-61 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357886294-05:00 fleet/management/commands/reconcile_consents.py 37 37 10 0 0% 19-96 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357888864-05:00 fleet/management/commands/reconcile_deviceconfig.py 60 60 24 0 0% 26-148 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357891494-05:00 fleet/management/commands/sync_devices.py 273 273 116 0 0% 34-447 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357894084-05:00 fleet/management/commands/uplink_dataplane.py 72 72 22 0 0% 24-122 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357896744-05:00 fleet/manifest.py 28 28 4 0 0% 37-126 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357899394-05:00 fleet/models.py 208 19 16 0 84% 657-684, 688-698 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357903714-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-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357906314-05:00 fleet/roles.py 27 14 6 0 39% 95-108, 129-133 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357909404-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-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357912024-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-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357919734-05:00 fleet/status.py 145 82 26 0 37% 79, 102-107, 111-121, 125, 129, 133, 136-137, 164-165, 169, 186-189, 201-216, 220-222, 233-236, 242-256, 261-280, 285-288, 300-305, 309-314 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357922424-05:00 fleet/tests_authority.py 125 125 2 0 0% 4-229 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357925024-05:00 fleet/tests_consent.py 149 149 0 0 0% 16-284 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357927614-05:00 fleet/tests_consent_event.py 113 113 2 0 0% 9-195 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357930274-05:00 fleet/tests_correlate.py 51 51 4 0 0% 2-83 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357932874-05:00 fleet/tests_device_sts.py 150 150 2 0 0% 12-280 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357940074-05:00 fleet/tests_deviceconfig.py 334 334 4 0 0% 24-516 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357944244-05:00 fleet/tests_knowledge.py 178 178 6 0 0% 18-322 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357947854-05:00 fleet/tests_logs.py 163 163 2 0 0% 11-242 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357951004-05:00 fleet/tests_manifest.py 92 92 0 0 0% 15-218 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357954454-05:00 fleet/tests_memberships.py 179 179 2 0 0% 15-305 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357957184-05:00 fleet/tests_selftest.py 130 130 0 0 0% 14-255 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357959834-05:00 fleet/tests_status.py 240 240 2 0 0% 8-410 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357963414-05:00 fleet/tests_sync.py 232 232 8 0 0% 21-458 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357966134-05:00 fleet/tests_sync_integration.py 29 29 2 0 0% 17-83 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357968804-05:00 fleet/tests_uplink.py 66 66 4 0 0% 8-111 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357971434-05:00 fleet/tests_uplink_dataplane.py 130 130 2 0 0% 10-253 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357974004-05:00 fleet/tests_uplink_profile.py 130 130 0 0 0% 9-211 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357977804-05:00 fleet/uplink.py 79 35 14 0 47% 58-59, 68, 72, 76, 80, 84-88, 92-98, 102-108, 112, 117, 121, 125, 129, 133-134, 138, 144, 149 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357980514-05:00 fleet/uplink_dataplane.py 145 145 56 0 0% 40-330 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357983234-05:00 fleet/urls_consent.py 3 3 0 0 0% 5-9 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357985824-05:00 fleet/urls_logs.py 4 4 0 0 0% 7-13 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357988394-05:00 fleet/urls_manifest.py 3 3 0 0 0% 10-14 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357991054-05:00 fleet/urls_selftest.py 3 3 0 0 0% 6-10 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357993674-05:00 fleet/urls_status.py 4 4 0 0 0% 7-13 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357996954-05:00 fleet/validators.py 25 18 8 0 21% 27-29, 38-52 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.357999654-05:00 fleet/vault.py 71 71 16 0 0% 21-156 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358007404-05:00 integrations/__init__.py 18 5 0 0 72% 48, 52, 56, 60, 64 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358010184-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-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358012864-05:00 integrations/config.py 57 36 14 0 30% 18, 53-60, 64-66, 74-107, 111-116 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358016354-05:00 integrations/enroll.py 20 10 4 0 42% 28, 37-46, 50, 66 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358019044-05:00 integrations/errors.py 9 2 0 0 78% 35-36 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358022344-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-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358024894-05:00 integrations/headscale.py 33 8 12 4 64% 17, 26, 32-35, 42, 47->46, 49 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358027724-05:00 integrations/health.py 20 20 2 0 0% 6-43 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358030804-05:00 integrations/mender.py 132 97 42 0 20% 33-51, 61-79, 82-88, 92-97, 101-102, 111-121, 131-133, 143-153, 158, 166-170, 177-183, 186-187, 209-215, 224-225, 245-253, 256, 266 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358033564-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-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358036164-05:00 integrations/types.py 97 2 0 0 98% 87, 91 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358038784-05:00 integrations/urls.py 3 3 0 0 0% 1-5 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358041514-05:00 integrations/views.py 6 6 0 0 0% 7-16 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358044164-05:00 scheduling/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358046754-05:00 scheduling/admin.py 19 2 0 0 89% 37, 40 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358049324-05:00 scheduling/api.py 125 125 48 0 0% 25-260 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358056134-05:00 scheduling/apps.py 5 0 0 0 100% [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358059994-05:00 scheduling/models.py 74 4 0 0 95% 251-255 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358063904-05:00 scheduling/roster.py 60 60 22 0 0% 15-134 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358066934-05:00 scheduling/selectors.py 12 12 0 0 0% 8-54 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358069493-05:00 scheduling/services.py 48 48 12 0 0% 11-113 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358072073-05:00 scheduling/tests_api.py 41 41 0 0 0% 6-100 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358074913-05:00 scheduling/tests_roster.py 39 39 0 0 0% 2-60 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358077453-05:00 scheduling/urls.py 3 3 0 0 0% 2-6 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358080013-05:00 stores/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358082583-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-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358090693-05:00 stores/api.py 66 66 20 0 0% 35-159 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358093623-05:00 stores/apps.py 5 0 0 0 100% [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358096513-05:00 stores/forms.py 35 20 12 0 32% 73-77, 81-84, 87-105 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358099343-05:00 stores/geocoding.py 115 115 34 0 0% 15-210 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358101943-05:00 stores/management/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358104513-05:00 stores/management/commands/__init__.py 0 0 0 0 100% [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358107063-05:00 stores/management/commands/check_authority.py 39 39 14 0 0% 14-76 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358109683-05:00 stores/management/commands/migrate_owner_staff.py 73 73 28 0 0% 32-204 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358112283-05:00 stores/management/commands/notify_new_enrolls.py 36 36 8 0 0% 11-75 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358114983-05:00 stores/management/commands/reattach_store.py 50 50 14 0 0% 29-94 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358117563-05:00 stores/management/commands/seed_e2e_fleet.py 231 231 34 0 0% 52-623 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358120203-05:00 stores/management/commands/seed_pilot_stores.py 68 68 16 0 0% 20-141 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358122773-05:00 stores/management/commands/sync_roles.py 24 24 8 0 0% 12-54 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358125463-05:00 stores/map.py 69 69 18 0 0% 19-155 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358128353-05:00 stores/models.py 112 4 0 0 96% 185, 211, 228, 231 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358130953-05:00 stores/scoping.py 5 3 2 0 29% 22-24 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358133583-05:00 stores/tests_api.py 105 105 0 0 0% 12-174 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358136183-05:00 stores/tests_authority.py 128 128 4 0 0% 7-238 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358138863-05:00 stores/tests_basemap.py 41 41 4 0 0% 7-80 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358141503-05:00 stores/tests_collector_config.py 66 66 2 0 0% 8-104 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358144323-05:00 stores/tests_geo.py 72 72 0 0 0% 8-127 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358147033-05:00 stores/tests_map.py 68 68 2 0 0% 6-106 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358149663-05:00 stores/tests_pilot_seed.py 94 94 0 0 0% 7-175 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358152283-05:00 stores/tests_report_config.py 29 29 0 0 0% 6-47 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358155463-05:00 stores/urls.py 4 4 0 0 0% 1-6 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358158223-05:00 stores/views.py 40 40 4 0 0% 2-117 [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358165363-05:00 ------------------------------------------------------------------------------------------------- [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358173293-05:00 TOTAL 7952 6621 1222 19 15% [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358176313-05:00 Coverage XML written to file coverage.xml [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358178923-05:00 =========================== short test summary info ============================ [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358187153-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-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358189843-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-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358200163-05:00 =================== 5 failed, 16 passed, 10 skipped in 9.88s =================== [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358204953-05:00 ===CONTRACT_RC=1=== [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.358208043-05:00 ----- end contract Job logs ----- [pod/app-contract-nightly-staging-jppkb-contract-pod/step-run-contract] 2026-08-19T21:47:33.360740460-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-jppkb-contract-pod/prepare] 2026-08-19T21:47:02.977525900-05:00 2026/08/20 02:47:02 Entrypoint initialization