4
我有一個簡單的流水線作業: 1)檢出的Git分支 2)CD複製到運行目錄 3)執行現有的腳本來運行測試詹金斯管道 - 找不到文件
管道腳本本身在這一點上是非常簡單的:
stage 'build'
node {
git url: '[email protected]:nip_5g_fpga', branch: "Phase_UL_1a"
sh "pwd"
sh "echo $PATH"
sh "ls"
dir ('nip_fpga/verification/src/UE/env/top_level/run') {
sh "source vcs_bash.sh 1"
}
}
當我運行它,我得到以下錯誤(只顯示在控制檯的一部分):
Running
in /var/lib/jenkins/workspace/nip_regression_nightly/nip_fpga/verification/src/UE/env/top_level/run
[Pipeline] {
[Pipeline] sh
[run] Running shell script
+ source vcs_bash.sh 1
/var/lib/jenkins/workspace/nip_regression_nightly/nip_fpga/verification/src/UE/env/top_level/[email protected]/durable-c40e151e/script.sh: line 2: source: vcs_bash.sh: file not found
我檢查過vcs_bash.sh本身存在,但它存在於.../top_level/run
目錄中,而不存在於top_level/[email protected]
目錄中。所以,我很困惑如何解決這個問題。
另外,我不明白tmp目錄中的管道創建
詹金斯將創建一個臨時文件,並基本上覆制您的內容,然後執行該文件,因此'@ tmp'目錄/文件。 可能發生的情況是jenkins會告訴你'文件未找到',當jenkins中的默認shell是bash,但沒有安裝在節點上(即它是一個沒有bash的windows節點或docker容器) – Rik
@Rik - 我懷疑如果這是上述問題的情況。我會執行一個bash命令並明天檢查。我很好奇爲什麼詹金斯創建tmp目錄執行。我只想讓詹金斯在我的工作區執行。 – Sharanbr
哦,現在我明白了。如果您輸入文件。你不能執行它嗎? – Rik