2012-07-08 51 views
1

我正在使用Quickbuild 1.3 我想將構建作業的所有運行時變量導出到屬性文件。Quickbuild - 導出運行時變量

我知道在Quickbuild中可以引用每個變量並使用OGNL來獲取它的值,但我不知道如何在運行時獲取所有可用變量並列出它們。

你知道該怎麼做嗎?

謝謝!

回答

1

這是quickbuild的一個非常舊的版本,如果可能的話,您應該將更改定義爲更新的版本。 您可以通過使用該表達式訪問變量:

${vars.getValue("yourVariableName")} 

在新版本中,你也可以使用Groovy腳本來訪問所有內部Java對象,並寫出更復雜的條件語句,如:

${groovy: 
message="Some message"; 
if(step.isFailed()) { 
variable = vars.get("BUILD_DESCRIPTION"); 
if(variable != null) { 
    variable.setValue(message); 
\} 
\} 
} 
+0

謝謝!所以沒有辦法將它們全部列出而不用硬編碼... – 2012-08-26 15:01:54

1

好像很長一段時間以來,有人想這個...無論如何它可能有助於某人一天:)

${groovy: 
    import com.pmease.quickbuild.variable.VariableWrapper 
    for (VariableWrapper var : vars.getAll()) { 
     logger.warn(var.getName()) 
     logger.warn(var.getValue()) 
     logger.warn(var.asInt()) 
     logger.warn(var.asBool()) 
     if (var.getName().equals("CoolVar")) 
      var.setValue(666) 
     else 
      var.setValue("Strings are ok too") 
    /} 
}