我想使用scp/ssh將某些文件上傳到服務器。我發現我需要使用基於證書的身份驗證,但問題是如何?真的,我想要做的就是使用與git相同的憑證 - 在Jenkins中存儲密碼的ssh證書。然而,我無法弄清楚 - 代碼片段生成器沒有明顯的選擇。使用ssh,scp或sftp在jenkins管道中使用ssh憑證
別人做什麼?是否有無證的功能可以做到這一點?
我想使用scp/ssh將某些文件上傳到服務器。我發現我需要使用基於證書的身份驗證,但問題是如何?真的,我想要做的就是使用與git相同的憑證 - 在Jenkins中存儲密碼的ssh證書。然而,我無法弄清楚 - 代碼片段生成器沒有明顯的選擇。使用ssh,scp或sftp在jenkins管道中使用ssh憑證
別人做什麼?是否有無證的功能可以做到這一點?
如果安裝SSH Agent plugin,則可以使用ssh-agent
管道步驟運行ssh-agent活動的shell腳本。 ssh-agent
需要一個Jenkins證書ID(一個密碼ssh證書,就像你擁有的git證書一樣)。
withCredentials([sshUserPrivateKey(credentialsId: "yourkeyid", keyFileVariable: 'keyfile')]) {
stage('scp-f/b') {
sh "scp -i ${keyfile} do sth here"
}
}
也許這就是你想要的。安裝Credentials Plugin
和
Credentials Binding Plugin
。添加一些憑據,然後你會得到「yourkeyid」。