windows - Indstilling af jenkins git returnerer fejlen 'Host key verification failed'

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg vil sætte en af ​​mine jenkins projekter i kildekoden ledelse med git.


Men da jeg skrev git@gitlab.com:myGitlabAccount/myProjectName.git til Repository URL under Source Code Management -fanen på projektets konfigurationsside. Jeg så følgende fejlmeddelelse:


Failed to connect to repository : Command "git.exe ls-remote -h git@gitlab.com:myGitlabAccount/myProjectName.git" returned status code 128:
stdout: 
stderr: Host key verification failed. 
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.


Der er ingen fejlmeddelelse, når jeg skriver git.exe ls-remote -h git@gitlab.com:myGitlabAccount/myProjectName.git under Windows kommandolinje.


Jeg kan git clone git@gitlab.com:myGitlabAccount/myProjectName.git med succes.


Og jeg tror, ​​at Jenkins Host-nøgleverifikation mislykkedes, er en løsning på mit problem, hvis jeg var en Linux-jenkins-bruger.


Men jeg bruger jenkins under windows miljø, og jeg finder ingen bruger kaldet jenkins i Windows.


Hvordan kan jeg skifte til jenkins bruger og skrive git ls-remote -h git@bitbucket.org:person/projectmarket.git HEAD manuelt i Windows-miljø?

Bedste reference


Hvis du installerede Jenkins som standard som en Windows-tjeneste, kan du kopiere en fil med navnet 'known\_hosts' under mappen


C: \ Windows \ System32 \ Config \ SystemProfile \ .ssh


Dette vil blive læst af Jenkins så og tillade det at få adgang til din Git-server.

Andre referencer 1


Indtast billedbeskrivelse her [10]


Fordi jeg installerede jenkins som en windows service, skal jeg gå til jenkins service side og ændre sin login konto til den konto, jeg bruger til login windows.


På denne måde kan jenkins få adgang til filen known\_hosts, jeg brugte i mit Windows-miljø.

Andre referencer 2


Du skal generere ssh-nøgler på din jenkins-maskine og føje dem til din gitlab-konto


Hvis du bruger Windows Åbn Git Bash og skriv følgende:


# generate keys
ssh-keygen -t rsa


klik på ENTER på hvert trin, og hvis du allerede har en nøgle, får du en advarsel om, at der allerede findes et certifikat.


Kopier nu den offentlige nøgle og indsæt den under din gitlab-konto


# grab the key
cat ~/.ssh/id\_rsa.pub


Log ind på din gitlab-konto og tilføj denne nøgle (du vil se ssh-nøgler i topmenuen, når du er logget ind)


Indtast billedbeskrivelse her [11]

Andre referencer 3


Et alternativ, som fungerede for mig, er at bruge HTTPS snarere end SSH-link under 'Klon eller Download-fanen'.
Med SSH ser jeg stadig et problem, som jeg skal analysere mere, men HTTPS har til tiden arbejdet lige fremad.