I am getting the below error while creating a job from Jenkins. How do I disable certificate validation in Jenkins?
From Git Bash I can use git config --global http.sslVerify false
command to disable it, but not sure how to use it from Jenkins.
Error:
Failed to connect to repository : Command "C:\Program Files (x86)\Git\cmd\git.exe ls-remote -h url ofmy repository.git HEAD" returned status code 128:
stdout:
stderr: fatal: unable to access 'url of my git/': SSL certificate problem: self signed certificate in certificate chain
You can use JGit and can fix it by creating a .gitconfig file in JENKINS_HOME with this lines:
Set the environment variable in windows,
GIT_HOME=path
till the bin folder of your git installation and then add it to the path variable.to supplement, I've stuck on this for few hours, here's what i've found for SSL related
add
as parameter as java jnlp command,
and to set GIT_SSL_NO_VERIFY=true as environment variable, so the start slave command at slave side now looks like (not sure if some parameteres are duplicate)
you may need the same
while trying to call jenkins-cli.jar
(up to https://blog.csdn.net/froghui/article/details/39641221)
since everytime the jenkins slave initiazted a git operation, it's a clean env, that handled by jenkins git plugin
Best option is to add the self-signed certificate to your certificate store
Obtain the server certificate tree This can be done using chrome.
Navigate to be server address. Click on the padlock icon and view the certificates. Export all of the certificate chain as base64 encoded files (PEM) format.
Add the certificates to the trust chain of your GIT trust config file In Git bash on the the machine running the job run the following:
find the
http.sslcainfo
configuration this shows where the certificate trust file is located. 3. Copy all the certificates into the trust chain file including the"- -BEGIN- -"
and the"- -END- -"
. Make sure you add the ROOT certificate Chain to the certificates fileThis should solve your issue with the self-signed certificates and using GIT.
NOT RECOMMENDED
The other way is to remote into your slave and run the following:
This will save into the global config that this instance never does SSL verification, this is NOT recommended, it should be used only when testing and then disabled again. It should be done properly as above.
Create Freestyle project and Add "Windows Batch Command" and add the
git config http.sslVerify false or git config --config http.sslVerify false
Once this is done, save it and build the job
Now your jenkin is configured to as not to do ssl verification. After the successful build now you can remove the batch command build step and edit the same project for your configuration.
Login or switch to jenkins user; for switching run this command on terminal:
And then run