-
Notifications
You must be signed in to change notification settings - Fork 98
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unable to get scalar clone to use test cache-server #513
Comments
@jeffhostetler If you get a chance, do you know if there is a special way to pass a flag to curl to allow self-signed certs? Do you know how hard it would be to add such a flag in the |
This actually gave me a clue. From http.sslbackend=openssl
http.sslcainfo=C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt Found this: How to trust self-signed certificate in cURL command line? Will give the second answer a try. |
A better alternative might be to switch to |
Yeah, I always use schannel. |
Ill give that a shot. Tried to get the self signed cert to be happy by creating a CA, but was not having any luck. If that does not work might try passing -k to curl for a test locally. If that works maybe put it behind an option for scalar. Like --test or something? |
Even by editing
For testing, that might be fine, and there is even a way to tell Git to not verify the SSL certificate, but it is a highly-discouraged practice. |
As it turns out. Setting the backend to schannel works great if your under a windows based shell. Turns out I was running under mingw64/bash. schannel looks in the ca-budle.crt, and not the build in windows repository for certs. I did not add it to the /mingw64/ssl cert as that was tricky and yes, a hack. Instead just running from the windows shell worked fine as schannel used the windows cert store, that I had copied the cert from the server to for this test. The issue is not with GIT actually, but with the use of CURL inside gvfs-helper. I debugged this a little. But once I figured out how to work around it all is good. It was basically my lack of knowledge around the differences in the impls of CURL from linux vs windows I think. Thanks @dscho for the pointer to using schannel and the fact that it auths correctly on windows. Personally it might be nice to have the CURL usage in gvfs-helper look at the git setting to NOT verify the cert and add the |
@deshaw-ms: wow, thanks for digging in so deeply here. I'd love to see that contribution if you have everything fresh in your mind. The one thing I will say is that Git 2.37.0 is about to come out and we will switch our default branch from |
I find it strange that there is a difference of behavior between using Git Bash or Git CMD. The So I think that we will need to find out more before we can think about ways to solve the problem, as we seem not to have gotten quite to the root cause yet. |
or closed issue matching
what I'm seeing, including in the
git-for-windows/git
tracker.Setup
microsoft/git
are you using? Is it 32-bit or 64-bit?Are you using Scalar or VFS for Git?
Yes, Scalar.
If VFS for Git, then what version?
Microsoft Windows [Version 10.0.22000.739]
to the issue you're seeing?
GVFS Proxy setup as a VM. Windows Server 2019. ADO Server. Response from cache server url/gvfs/info
Details
Git Bash, or CMD.
Minimal, Complete, and Verifiable example
this will help us understand the issue.
Expected the cache server to be used, to make the perf reasonable.
Instead its falling back on the origin url. There are some really long delays as well between outputting the cache-server url and starting the prefetch ( which also takes a long time, but thats another issue ).
I noticed the ssl cert error in the trace2 log (attached). The cert for the cache server is registered on the machine I am trying to clone from as a Trusted Root Cert. I can browse the server with Edge and hit the gvfs/info point without getting any cert errors. Name resolution only works because I added it to my hosts.ini file locally.
You can also see the long delays in the perf trace attached as well.
Full command response:
If the problem was occurring with a specific repository, can you specify
the repository?
git_perf.log
The text was updated successfully, but these errors were encountered: