2017-02-02 203 views
0

我編寫了一個使用Linux特定命令的shell腳本,託管在RHEL7 EC2實例上,這不是一個問題,因爲它可以從任何Unix計算機上運行。通過在Windows Server 2008上運行的Jenkins運行shell腳本

我該如何創建一個Jenkins作業來成功運行這個腳本?這個腳本在任何Unix機器上都能正常工作,但是我似乎無法找到一種方法來通過託管在Windows Server 2008環境中的Jenkins作業運行該命令。

到目前爲止,我已經嘗試添加Jenkins的SSH插件(有關我的私鑰的錯誤,但是我已經證實它是正確的),並且我嘗試通過PuTTY命令行遠程連接到Linux服務器(plink )並通過用戶名/密碼,然後通過腳本我想運行但沒有運氣。

我只是想知道,如果有人遇到類似的挑戰,並可以指引我走下正確的道路,我花了幾個小時研究不同的方法/配置,沒有運氣。

在此先感謝。

注意:我也嘗試過在本地安裝Cygwin並運行腳本,但它沒有工作,可能是由於我自己的配置 - 但是,它確實對我的場景來說過分了。

+0

您可以讓服務器成爲詹金斯代理並將作業固定到該代理。 – jordanm

+0

我試過這個,它抱怨我的私鑰 - 但是,私鑰是正確的。我使用私鑰AWS將SSH提供給我的EC2實例,請問這是正確的嗎? – jto

+0

這是我試圖通過Jenkins控制檯登錄到代理的錯誤消息: 'code'連接超時:連接 錯誤:啓動從站時出現意外錯誤。這可能是詹金斯的一個錯誤。 java.lang.IllegalStateException:連接未建立! – jto

回答

0

我最終得到了它,我在@ jordanm的評論之後回到了代理人的想法 - 我無法通過用戶名/私鑰身份驗證來實現它,但是簡單的用戶名/密碼組合工作正常。

我在遠程機器上建立了一個Jenkins用戶並創建了一個我在Jenkins中定義的根目錄,並將構建步驟添加到我的作業中,並且第一次工作。