[英]Permission denied error - jenkins (shell script)
我正在使用 jenkinsfile 來測試我們的一個實例。 為此,我創建了一個 bash 腳本。 問題是詹金斯沒有運行腳本的權限。 知道如何解決這個問題嗎?
詹金斯檔案:
stage("Testing instances"){
if (terragruntAction == 'apply' || terragruntAction == 'test'){
echo "Testing"
sh '../check_services.sh'
}
}
輸出:
../check_services.sh:權限被拒絕
我試圖做:
git update-index --chmod=+x check_services.sh
在 Jenkins 檢出的 git 文件夾上,但沒有運氣。
任何幫助,提前致謝!
我開始將它添加到 GIT 存儲庫中: git update-index --chmod=+x check_services.sh
我的偏好是將單個文件的訪問權限保留在我的 git 存儲庫之外,而是傾向於在管道內部處理此問題的方法。 只需在執行腳本之前運行 chmod,即可授予工作區權限。 使用聲明:
stage('My Stage') {
steps {
sh "chmod +x -R ${env.WORKSPACE}"
sh "./my-script.sh"
}
}
注意:對於那些還不知道這一點的人,另一個要求是明確告訴管道腳本相對於工作區的位置。 僅使用 sh "my-script.sh" 是行不通的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.