2017-04-11 74 views
0

我正在使用來自我的組織的私有存儲庫和Deploy key身份驗證方法。 Thistutorials用於部署密鑰配置非常簡單。這只是我有一個困惑。從機實例don't actually have jenkins installed,因此無法在從機中以sudo -u jenkins的身份登錄。另一方面,作業實際上並不在主服務器上運行,而是在從服務器實例中運行,因此部署密鑰必須是從服務器生成的公鑰。但是當我嘗試在jenkins服務器上設置作業時,它說Host key verification failed我猜測是因爲它無法識別主服務器上的密鑰。Jenkins主/從架構上的Github部署密鑰

我錯過了什麼?我很困惑。

enter image description here

編輯:

我想,也許主人不承認奴隸將是一個運行此工作,並給出因爲試圖從自己的認證錯誤公鑰。所以我決定繼續並且無論如何都要開展這項工作。而現在我更加困惑......工作成功運行,但仍然給出了timeout(我不知道它是否與之相關,仍在搜索中)。有什麼想法嗎?

Started by user User 
Building remotely on android-slave (android) in workspace /home/ubuntu/workspace/android-repo 
> git rev-parse --is-inside-work-tree # timeout=10 
Fetching changes from the remote Git repository 
> git config remote.origin.url [email protected]:Organization/Repo-Droid.git # timeout=10 
Fetching upstream changes from [email protected]:Organization/Repo-Droid.git 
> git --version # timeout=10 
> git fetch --tags --progress [email protected]:Organization/Repo-Droid.git +refs/heads/*:refs/remotes/origin/* 
> git rev-parse refs/remotes/origin/master^{commit} # timeout=10 
> git rev-parse refs/remotes/origin/origin/master^{commit} # timeout=10 
Checking out Revision 32e37279cb794b9f8eebbdf5f0d47671eea522c7 (refs/remotes/origin/master) 
> git config core.sparsecheckout # timeout=10 
> git checkout -f 32e37279cb794b9f8eebbdf5f0d47671eea522c7 
> git rev-list 32e37279cb794b9f8eebbdf5f0d47671eea522c7 # timeout=10 
Finished: SUCCESS 

回答

0

我證實這實際上不是一個錯誤,儘管我仍然想知道這#timeout=10是什麼。我檢查了作業主頁面中的工作區文件夾,我看到成功克隆了該項目。我還將一個gradle clean命令添加到作業配置中,以確保它編譯正常。一切看起來不錯。

注:我仍然可以在任務配置的Host key verification failed錯誤,但正如我上面所說,可能是因爲主服務器正試圖以配合其自身的公共密鑰存儲庫的部署重點,而不是從服務器的公鑰。所以當我忽略這個錯誤並嘗試構建這個工作時,它會成功執行它,因爲它被配置爲始終在slave機器上運行。