sethmlarson / truststore

Verify certificates using OS trust stores
https://truststore.readthedocs.io
MIT License
154 stars 19 forks source link

0.8.0: test_trustme_cert_loaded_via_capath fails #124

Closed dvzrv closed 9 months ago

dvzrv commented 9 months ago

Hi! :wave:

I'm currently trying to package this project for Arch Linux and ran into one failing test (test_trustme_cert_loaded_via_capath).

Maybe you have any ideas what might be going wrong here. I think I have all required (development) dependencies installed.

test_trustme_cert_loaded_via_capath failed (1 runs remaining out of 2).
        <class 'urllib3.exceptions.MaxRetryError'>
        HTTPSConnectionPool(host='localhost', port=32851): Max retries exceeded with url: / (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed:
 unable to get local issuer certificate (_ssl.c:1006)')))
        [<TracebackEntry /usr/lib/python3.11/site-packages/_pytest/runner.py:341>, <TracebackEntry /usr/lib/python3.11/site-packages/_pytest/runner.py:262>, <TracebackEntry /usr/lib/python3.11/site-pa
ckages/pluggy/_hooks.py:493>, <TracebackEntry /usr/lib/python3.11/site-packages/pluggy/_manager.py:115>, <TracebackEntry /usr/lib/python3.11/site-packages/pluggy/_callers.py:152>, <TracebackEntry /usr
/lib/python3.11/site-packages/pluggy/_result.py:114>, <TracebackEntry /usr/lib/python3.11/site-packages/pluggy/_callers.py:77>, <TracebackEntry /usr/lib/python3.11/site-packages/_pytest/runner.py:177>
, <TracebackEntry /usr/lib/python3.11/site-packages/_pytest/runner.py:169>, <TracebackEntry /usr/lib/python3.11/site-packages/_pytest/python.py:1792>, <TracebackEntry /usr/lib/python3.11/site-packages
/pluggy/_hooks.py:493>, <TracebackEntry /usr/lib/python3.11/site-packages/pluggy/_manager.py:115>, <TracebackEntry /usr/lib/python3.11/site-packages/pluggy/_callers.py:152>, <TracebackEntry /usr/lib/p
ython3.11/site-packages/pluggy/_result.py:114>, <TracebackEntry /usr/lib/python3.11/site-packages/pluggy/_callers.py:77>, <TracebackEntry /usr/lib/python3.11/site-packages/_pytest/python.py:194>, <Tra
cebackEntry /build/python-truststore/src/truststore-0.8.0/tests/test_api.py:316>, <TracebackEntry /usr/lib/python3.11/site-packages/urllib3/request.py:77>, <TracebackEntry /usr/lib/python3.11/site-pac
kages/urllib3/request.py:99>, <TracebackEntry /usr/lib/python3.11/site-packages/urllib3/poolmanager.py:376>, <TracebackEntry /usr/lib/python3.11/site-packages/urllib3/connectionpool.py:827>, <Tracebac
kEntry /usr/lib/python3.11/site-packages/urllib3/connectionpool.py:827>, <TracebackEntry /usr/lib/python3.11/site-packages/urllib3/connectionpool.py:827>, <TracebackEntry /usr/lib/python3.11/site-pack
ages/urllib3/connectionpool.py:799>, <TracebackEntry /usr/lib/python3.11/site-packages/urllib3/util/retry.py:592>]
test_trustme_cert_loaded_via_capath failed; it passed 0 out of the required 1 times.
        <class 'urllib3.exceptions.MaxRetryError'>
        HTTPSConnectionPool(host='localhost', port=32851): Max retries exceeded with url: / (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed:
 unable to get local issuer certificate (_ssl.c:1006)')))
        [<TracebackEntry /usr/lib/python3.11/site-packages/_pytest/runner.py:341>, <TracebackEntry /usr/lib/python3.11/site-packages/_pytest/runner.py:262>, <TracebackEntry /usr/lib/python3.11/site-pa
ckages/pluggy/_hooks.py:493>, <TracebackEntry /usr/lib/python3.11/site-packages/pluggy/_manager.py:115>, <TracebackEntry /usr/lib/python3.11/site-packages/pluggy/_callers.py:152>, <TracebackEntry /usr
/lib/python3.11/site-packages/pluggy/_result.py:114>, <TracebackEntry /usr/lib/python3.11/site-packages/pluggy/_callers.py:77>, <TracebackEntry /usr/lib/python3.11/site-packages/_pytest/runner.py:177>
, <TracebackEntry /usr/lib/python3.11/site-packages/_pytest/runner.py:169>, <TracebackEntry /usr/lib/python3.11/site-packages/_pytest/python.py:1792>, <TracebackEntry /usr/lib/python3.11/site-packages
/pluggy/_hooks.py:493>, <TracebackEntry /usr/lib/python3.11/site-packages/pluggy/_manager.py:115>, <TracebackEntry /usr/lib/python3.11/site-packages/pluggy/_callers.py:152>, <TracebackEntry /usr/lib/p
ython3.11/site-packages/pluggy/_result.py:114>, <TracebackEntry /usr/lib/python3.11/site-packages/pluggy/_callers.py:77>, <TracebackEntry /usr/lib/python3.11/site-packages/_pytest/python.py:194>, <Tra
cebackEntry /build/python-truststore/src/truststore-0.8.0/tests/test_api.py:316>, <TracebackEntry /usr/lib/python3.11/site-packages/urllib3/request.py:77>, <TracebackEntry /usr/lib/python3.11/site-pac
kages/urllib3/request.py:99>, <TracebackEntry /usr/lib/python3.11/site-packages/urllib3/poolmanager.py:376>, <TracebackEntry /usr/lib/python3.11/site-packages/urllib3/connectionpool.py:827>, <Tracebac
kEntry /usr/lib/python3.11/site-packages/urllib3/connectionpool.py:827>, <TracebackEntry /usr/lib/python3.11/site-packages/urllib3/connectionpool.py:827>, <TracebackEntry /usr/lib/python3.11/site-pack
ages/urllib3/connectionpool.py:799>, <TracebackEntry /usr/lib/python3.11/site-packages/urllib3/util/retry.py:592>]
test_trustme_cert_still_uses_system_certs passed 1 out of the required 1 times. Success!
test_macos_10_7_import_error passed 1 out of the required 1 times. Success!

===End Flaky Test Report===
=========================== short test summary info ============================
FAILED tests/test_api.py::test_trustme_cert_loaded_via_capath - urllib3.excep...
================== 1 failed, 41 passed, 10 skipped in 17.85s ===================

Full build and test logs:

python-truststore-0.8.0-1-x86_64-check.log python-truststore-0.8.0-1-x86_64-build.log

sethmlarson commented 9 months ago

We also have had issues with capath tests being inconsistent unfortunately, I am unsure if it's an issue with CPython or how trustme is generating certificates, but I don't think we're doing anything incorrect?

Anything you find on this topic would be useful, is the failure consistent for Arch or is it inconsistent as we've experienced?

sethmlarson commented 9 months ago

Going to close this issue.