我目前面臨一個問題,我必須在同一個 shell 字串中使用引數和憑據,這給我帶來了很多麻煩。
在 Jenkins 中處理密碼時,檔案強調使用單引號來避免敏感變數的插值:
雙引號示例:

單引號示例:

但是,使用單引號將導致我的引數沒有被插值,如下圖所示:

因此,我找不到一個允許我同時擁有兩者的解決方案,正如我所看到的,這給我留下了以下選項之一:
- 我可以選擇使用單引號,這會導致我的憑據被屏蔽,但我的引數不會被插值。
- 我可以選擇使用雙引號,但是我的用戶名和密碼不再被屏蔽,但我的引數正在被插值。
有人知道是否可以將兩者放在同一個字串中或知道某種解決方法嗎?
uj5u.com熱心網友回復:
您可以使用雙引號,但$對秘密變數進行轉義,如下所示:
sh("curl -u \$USERNAME:\$PASSWORD ${url}")
您還可以使用單引號:
sh('curl -u $USERNAME:$PASSWORD ' url)
您可以將它與withCredentials().
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/428320.html
上一篇:為什么Jenkins在workspace@script檔案夾中創建一個子檔案夾來檢查git代碼而不是workspace@script本身?
下一篇:AWSEC2、Jenkins、Docker、Spring-boot mysql我懷疑我的spring.datasource.url是錯誤的?
