2022-08-09 21:06:04.742 | ERROR | commonwealth.utils.apis:custom_route_handler:34 - Unhandled service exception. 2022-08-09 21:06:04.743 | ERROR | commonwealth.utils.apis:custom_route_handler:35 - Traceback (most recent call last): File "/usr/local/lib/python3.9/urllib/request.py", line 1346, in do_open h.request(req.get_method(), req.selector, req.data, headers, │ │ │ │ │ │ │ │ └ {'Host': 'firmware.ardupilot.org', 'User-Agent': 'Python-urllib/3.9', 'Connection': 'close'} │ │ │ │ │ │ │ └ │ │ │ │ │ │ └ │ │ │ │ │ └ '/manifest.json.gz' │ │ │ │ └ │ │ │ └ │ │ └ │ └ File "/usr/local/lib/python3.9/http/client.py", line 1285, in request self._send_request(method, url, body, headers, encode_chunked) │ │ │ │ │ │ └ False │ │ │ │ │ └ {'Host': 'firmware.ardupilot.org', 'User-Agent': 'Python-urllib/3.9', 'Connection': 'close'} │ │ │ │ └ None │ │ │ └ '/manifest.json.gz' │ │ └ 'GET' │ └ File "/usr/local/lib/python3.9/http/client.py", line 1331, in _send_request self.endheaders(body, encode_chunked=encode_chunked) │ │ │ └ False │ │ └ None │ └ File "/usr/local/lib/python3.9/http/client.py", line 1280, in endheaders self._send_output(message_body, encode_chunked=encode_chunked) │ │ │ └ False │ │ └ None │ └ File "/usr/local/lib/python3.9/http/client.py", line 1040, in _send_output self.send(msg) │ │ └ b'GET /manifest.json.gz HTTP/1.1\r\nAccept-Encoding: identity\r\nHost: firmware.ardupilot.org\r\nUser-Agent: Python-urllib/3.... │ └ File "/usr/local/lib/python3.9/http/client.py", line 980, in send self.connect() │ └ File "/usr/local/lib/python3.9/http/client.py", line 1454, in connect self.sock = self._context.wrap_socket(self.sock, │ │ │ │ │ │ └ None │ │ │ │ │ └ │ │ │ │ └ │ │ │ └ │ │ └ │ └ None └ File "/usr/local/lib/python3.9/ssl.py", line 500, in wrap_socket return self.sslsocket_class._create( │ │ └ │ └ File "/usr/local/lib/python3.9/ssl.py", line 1040, in _create self.do_handshake() │ └ File "/usr/local/lib/python3.9/ssl.py", line 1309, in do_handshake self._sslobj.do_handshake() │ └ None └ ssl.SSLError: [SSL] unknown error (_ssl.c:1129) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/starlette-0.13.6-py3.9.egg/starlette/routing.py", line 41, in app response = await func(request) │ └ .custom_route_handler at 0xb56c2f58> > File "/usr/local/lib/python3.9/site-packages/commonwealth-0.1.0-py3.9.egg/commonwealth/utils/apis.py", line 29, in custom_route_handler return await original_route_handler(request) │ └ .app at 0xb56c2df0> File "/usr/local/lib/python3.9/site-packages/fastapi-0.63.0-py3.9.egg/fastapi/routing.py", line 201, in app raw_response = await run_endpoint_function( └ File "/usr/local/lib/python3.9/site-packages/fastapi-0.63.0-py3.9.egg/fastapi/routing.py", line 150, in run_endpoint_function return await run_in_threadpool(dependant.call, **values) │ │ │ └ {'vehicle': } │ │ └ │ └ File "/usr/local/lib/python3.9/site-packages/starlette-0.13.6-py3.9.egg/starlette/concurrency.py", line 34, in run_in_threadpool return await loop.run_in_executor(None, func, *args) │ │ │ └ (functools.partial(, vehicle=),) │ │ └ │ └ └ <_UnixSelectorEventLoop running=True closed=False debug=False> File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 58, in run result = self.fn(*self.args, **self.kwargs) │ │ └ None │ └ None └ None File "/home/pi/services/ardupilot_manager/main.py", line 83, in get_available_firmwares return autopilot.get_available_firmwares(vehicle, autopilot.current_board.platform) │ │ │ │ └ │ │ │ └ │ │ └ │ └ File "/home/pi/services/ardupilot_manager/ArduPilotManager.py", line 434, in get_available_firmwares return self.firmware_manager.get_available_firmwares(vehicle, platform) │ │ │ │ └ │ │ │ └ │ │ └ │ └ File "/home/pi/services/ardupilot_manager/firmware/FirmwareManagement.py", line 63, in get_available_firmwares versions = self.firmware_download.get_available_versions(vehicle, platform) │ │ │ │ └ │ │ │ └ │ │ └ │ └ File "/home/pi/services/ardupilot_manager/firmware/FirmwareDownload.py", line 146, in get_available_versions if not self._manifest_is_valid(): │ └ File "/home/pi/services/ardupilot_manager/firmware/FirmwareDownload.py", line 85, in _manifest_is_valid return "format-version" in self._manifest or self.download_manifest() │ │ │ └ │ │ └ │ └ {} └ File "/home/pi/services/ardupilot_manager/firmware/FirmwareDownload.py", line 93, in download_manifest with urlopen(FirmwareDownloader._manifest_remote) as http_response: │ │ └ 'https://firmware.ardupilot.org/manifest.json.gz' │ └ File "/usr/local/lib/python3.9/urllib/request.py", line 214, in urlopen return opener.open(url, data, timeout) │ │ │ │ └ │ │ │ └ None │ │ └ 'https://firmware.ardupilot.org/manifest.json.gz' │ └ File "/usr/local/lib/python3.9/urllib/request.py", line 517, in open response = self._open(req, data) │ │ │ └ None │ │ └ │ └ File "/usr/local/lib/python3.9/urllib/request.py", line 534, in _open result = self._call_chain(self.handle_open, protocol, protocol + │ │ │ │ │ └ 'https' │ │ │ │ └ 'https' │ │ │ └ {'unknown': [], 'http': [ │ └ File "/usr/local/lib/python3.9/urllib/request.py", line 494, in _call_chain result = func(*args) │ └ (,) └ > File "/usr/local/lib/python3.9/urllib/request.py", line 1389, in https_open return self.do_open(http.client.HTTPSConnection, req, │ │ │ │ │ └ │ │ │ │ └ │ │ │ └ )> │ │ └ │ └ File "/usr/local/lib/python3.9/urllib/request.py", line 1349, in do_open raise URLError(err) └ urllib.error.URLError: