certificate verify failed
Opened this issue · 8 comments
When try to create a new status page, i get this message:
Traceback (most recent call last):
File "<string>", line 233, in <module>
File "site-packages/click/core.py", line 716, in __call__
File "site-packages/click/core.py", line 696, in main
File "site-packages/click/core.py", line 1060, in invoke
File "site-packages/click/core.py", line 889, in invoke
File "site-packages/click/core.py", line 534, in invoke
File "<string>", line 47, in create
File "<string>", line 155, in run_create
File "github/AuthenticatedUser.py", line 542, in create_repo
File "github/Requester.py", line 171, in requestJsonAndCheck
File "github/Requester.py", line 212, in requestJson
File "github/Requester.py", line 251, in __requestEncode
File "github/Requester.py", line 275, in __requestRaw
File "http/client.py", line 1083, in request
File "http/client.py", line 1128, in _send_request
File "http/client.py", line 1079, in endheaders
File "http/client.py", line 911, in _send_output
File "http/client.py", line 854, in send
File "http/client.py", line 1237, in connect
File "ssl.py", line 376, in wrap_socket
File "ssl.py", line 747, in __init__
File "ssl.py", line 983, in do_handshake
File "ssl.py", line 628, in do_handshake
ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:646)
statuspage returned -1
Are you using the Mac OS X or the Linux binary?
OS X 10.11.3 (15D21)
Same error happens to me.
That's probably an incompatibility between python and openssl http://stackoverflow.com/questions/27804710/python-urllib2-ssl-error/27826829#27826829
I get the same on Fedora 23
Man, I get the same.
This is an easy fix. Set the environment variable SSL_CERT_FILE
to point to your cert.pem
or similar certificate file. These are not bundled with the binary (nor should they be!).
Honestly, @jayfk IMHO this is a README fix.
Bundling the certs with the binary seems like a bad choice IMHO. It is not done currently so we are doing the right thing now. If we just specify that this environment variable needs to be set, one should be fine.
Alternatively, we could search multiple paths setting that variable after checking a bunch. This is what libcloud
does as shown by this code. We just can't use certifi
as that amounts to bundling the certs too.