Open dashaveraksa opened 5 years ago
@cjmyers - have you made a SynBioHub change recently that might be affecting this?
Which SBH instance?
Doug moved this server which I think means the IP address may have changed. I know the first time I accessed it after he did this from a browser, I had to do something to get it to update. I'm not sure how this works for API logins.
I just tried to login from SBOLDesigner, and it worked fine. It is likely due to the fact that I fixed this via the browser. I'm not very aware of how SSL certificates work, but maybe try browsing to it with a browser and see if you can get the certificate to update.
@dashaveraksa , is this sufficient information for you to try to update, or do you need more help from Chris?
@jakebeal Hmm... I have tried to look into this but I still cannot figure out what I can change from my end -- it seems to be the PartShop request itself that is returning this response. I can try updating the certificate, do you know how I can do that/where I can find it?
I'm afraid that I don't. Maybe it's cached in the notebook somewhere, so maybe try rebuilding the notebook from scratch on Binder?
@dashaveraksa have you tried to access from the browser directly to see if it works?
@cjmyers Yes, and I have been able to login and upload collections when running the same code from my terminal as well.
Hmm, so it sounds like it is specific to Python then. Maybe as Jake suggests, you need to rebuild the notebook from scratch.
@cjmyers Unfortunately even that does not work for me (Binder already rebuilds the notebook from scratch every time I add anything to my repository, but I also tested it by rebuilding it from their website as if I were creating it for the first time). I still get the same issue.
@cjmyers , could you try connecting to SynBioHub from Binder and see if you run into the same issue?
@jakebeal sorry I don't know what Binder is. If this is a python thing, I'm sorry I don't use python. Maybe Bryan can check. I think this is likely a pySBOL issue.
This problem occurs because the path to SSL certificates is not standard across different Linuxes (e.g. Red Hat vs. Ubuntu), thus requests to synbiohub using secure HTTP fail. By default, pySBOL is configured to work with Red Hat but will fail on Ubuntu
The latest version of pySBOL now has a workaround for this issue. Before sending a request to synbiohub, you can configure the certificate path for your Linux distribution, as follows:
Config.setOption('ca-path', path_to_ca_file)
Where path_to_ca_file is defined as follows for different Linux distros: Debian/Ubuntu: "/etc/ssl/certs/ca-certificates.crt" Fedora/RHEL: "/etc/pki/tls/certs/ca-bundle.crt" OpenSUSE : "/var/lib/ca-certificates/ca-bundle.pem"
@bbartley Would you be able to help us try to apply this in Binder? https://mybinder.org/v2/gh/TASBE/SBOL-Sample-Creator/master?filepath=SynBioHub%20Data%20Visualization.ipynb
When trying to log in to SynBioHub through Binder, there is a Runtime Error that says: "Login failed due to an HTTP error: Problem with the SSL CA cert (path? access rights?)"