2011-04-26 40 views
4

我試圖在構建過程中將文件複製到網絡目錄,並且不斷收到「No such file or directory」錯誤消息。Jenkins複製構建中的目錄/文件

複製到本地驅動器正常工作: CP -Rf C:/詹金斯/部署/ TW_ISSUE_A/src目錄C:/詹金斯/部署/ TW_ISSUE_A /目標

下都會拋出了同樣的信息:

  • CP -Rf C:/詹金斯/部署/ TW_ISSUE_A/SRC H:/ some_dir

  • CP -Rf C:/詹金斯/部署/ TW_ISSUE_A/SRC H:\ some_dir

  • CP -Rf C:/詹金斯/部署/ TW_ISSUE_A/SRC //哈貝爾/ MISGenl/some_dir

  • CD C:/詹金斯/部署/ TW_ISSUE_A/SRC rsync的-avuzb //哈貝爾/ MISGenl /項目/ Tronweb/TronwebBuilds /測試/ ORA/SQL/

  • CP -Rf C:/詹金斯/部署/ TW_ISSUE_A/src目錄/ cygdrive/H/some_dir

我甚至創造了一個shell腳本詹金斯的電話,但我繼續收到這個消息。

#!/bin/bash 

url="http://as-test02:8080/job/TW_ISSUE_A_BUILD/lastSuccessfulBuild/artifact/bui 
ld-TW_ISSUE_A_BUILD.tar"; 

remote_stage_dir="/cygdrive/h/some_dir" 

#fetch the artifacts 

(cd "$remote_stage_dir" && wget "$url" && tar xvf build-TW_ISSUE_A_BUILD.tar dat 
java ora && rm -rf *.tar && cp -r ./ora/* ../INTEGRATION) 

有沒有辦法將文件複製到生成機器上的映射驅動器?

謝謝!

回答

5

我猜測映射的驅動器在服務上下文中不可用,或者執行Jenkins的用戶無法訪問它。詹金斯運行的用戶是什麼?

編輯: 我認爲你的問題有兩個方面:

  1. 運行詹金斯服務不允許用戶連接到網絡。
  2. h:用戶不知道。

如果您還沒有對其進行修改,該服務很可能在LocalSystem account下運行。您可以通過運行services.msc(或通過Windows控制面板導航到服務)並找到jenkins服務來修改此項。這應該解決第一個問題。

第二個問題可以通過使用UNC路徑(如上面的嘗試)而不是網絡驅動器來解決。

Jenkins wiki大約有這樣問題的文章:My software builds on my computer but not on Jenkins

+0

詹金斯是一個VM服務器上運行 - I(trandal)是當服務啓動後登錄。我沒有在上面說過,但是當我在服務器上時,我可以使用任何/所有命令(並運行腳本)。我要去看看它 - 不知道你的意思是「服務環境」 – 2011-04-26 19:38:54

+0

我已經更新了我的答案,以澄清。 – 2011-04-26 20:19:03

+0

非常感謝您的澄清!我更新了Jenkins以在一個指定的用戶下運行,並且根據Jenkins維基鏈接映射了一個驅動器。再次感謝你!! – 2011-04-26 21:20:30

相關問題