我正在嘗試將 referencedParameter ('product') 發送到由包含 activeChoiceReactiveParam 的命令 readFileFromWorkspace 觸發的 Groovy 腳本 (services.groovy)。
預期結果:獲取包含檔案內容的下拉串列。
實際結果:處理DSL腳本時作業失敗
ERROR: (services.groovy, line 5) No such property: product for class: dsl.jobs.argocd.services
我試圖將產品參考的引數定義為環境變數(并在 services.groovy 腳本中更新),但它不起作用。
我嘗試在目錄 /tmp/ 中重新創建 services.groovy 檔案,但在查找檔案時遇到問題。
產品.groovy:
package dsl.jobs.argocd
return ['a','b','c']
services.groovy:
package dsl.jobs.argocd
return_value = []
if (product.equals("a")){
return_value = ['e']
}
if (product.equals("b")){
return_value = ['f']
}
if (product.equals("c")){
return_value = ['g']
}
return return_value;
管道:
pipelineJob("test") {
description("test")
keepDependencies(false)
parameters {
activeChoiceParam('product') {
description('What product would you like to update?')
filterable()
choiceType('SINGLE_SELECT')
groovyScript {
script(readFileFromWorkspace('dsl/jobs/argocd/products.groovy'))
fallbackScript('return ["ERROR"]')
}
}
activeChoiceReactiveParam('service') {
description('Which services would you like to update?')
filterable()
choiceType('CHECKBOX')
groovyScript {
script(readFileFromWorkspace('dsl/jobs/argocd/services.groovy'))
fallbackScript('return ["ERROR"]')
}
referencedParameter("product")
}
}
}
我接近這個錯誤嗎?在幾個 Groovy 檔案中使用相同的引數有不同的方法嗎?
uj5u.com熱心網友回復:
好吧,似乎上面的代碼很完美,唯一的問題是 services.groovy 腳本的位置。
我將檔案從 DSL 目錄中取出(因為我不希望它被決議為 DSL 檔案),將其參考到正確的位置,并且效果很好。
更新的管道:
pipelineJob("test") {
description("test")
keepDependencies(false)
parameters {
activeChoiceParam('product') {
description('What product would you like to update?')
filterable()
choiceType('SINGLE_SELECT')
groovyScript {
script(readFileFromWorkspace('dsl/jobs/argocd/products.groovy'))
fallbackScript('return ["ERROR"]')
}
}
activeChoiceReactiveParam('service') {
description('Which services would you like to update?')
filterable()
choiceType('CHECKBOX')
groovyScript {
script(readFileFromWorkspace('services.groovy'))
fallbackScript('return ["ERROR"]')
}
referencedParameter("product")
}
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/446831.html
