我整天都在嘗試除錯這個問題,但沒有成功。
問題:Bash 腳本在 Linux CentOS7 VM(jenkins 構建代理)上成功執行,但在 Jenkins 構建期間失敗。
這是簡單的腳本。
#! /bin/bash
echo "before beyond compare command"
bcompare @"bc_report.ps1" "./Output_Base/<Folder_Name>" "./Output_Compare/<Folder Name>" "Report.html"
echo "after beyond compare command"
Jenkins 構建日志中的輸出只是:
before beyond compare command
after beyond compare command
在 Jenkins 構建期間查看 VM 時,我沒有看到正在生成的工件。Jenkins構建期間的用戶是Root,在本地執行腳本時,我也是以Root成功執行的。
我很確定這是一個 Jenkins 問題,只是似乎無法弄清楚。有人見過類似的東西嗎?
uj5u.com熱心網友回復:
Beyond Compare 4 for Linux 需要運行 X-Window/GUI 會話,即使是腳本也是如此。作為 cron 作業或在沒有 X-Window 客戶端的 SSH 終端中,Beyond Compare for Linux 腳本將無法運行。這可能是導致您的 Jenkins 作業失敗的原因。
Beyond Compare 4 for Windows 沒有腳本的 GUI 會話要求。Beyond Compare 4 for Linux 和 macOS 都需要腳本的 GUI 會話。洗掉在 Linux 和 macOS 上撰寫腳本的 GUI 會話要求已在未來版本的功能請求串列中。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/493731.html
下一篇:基于bash中特定列的排序錯誤
