Jenkins 在 groovy 脚本中检索主动选择参数

标签 jenkins groovy parameters

我有一个名为“环境”的主动选择参数。我想在下一个主动选择参数中使用该参数。如何检索之前的选择?

这是我的代码。我无法弄清楚如何从前一个参数中检索 ENVIRONMENT 变量并将其分配给我的新 groovy 脚本中的第二个变量的 env 变量。

import groovy.sql.Sql

String env = $ENVIRONMENT

def output = []
def db = [url:'jdbc:oracle:thin:@database_host:1521:SID', user:'username', password:'password', driver:'oracle.jdbc.OracleDriver']
def sql = Sql.newInstance(db.url, db.user, db.password, db.driver)
String sqlString = ("select distinct logical_host from SERVER_NAME_VW where app='ME' and env = ${env} order by 1")

sql.eachRow(sqlString){ row ->  
    output.push(row[0])
}

return output

最佳答案

您对作业使用的参数类型不正确。

您需要将参数类型更改为

Active Choices Reactive Reference Parameter

这允许您添加 ENVIRONMENT 参数作为引用参数。
欲了解更多信息,请参阅Active Choices Plugin文档

关于Jenkins 在 groovy 脚本中检索主动选择参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39562033/

相关文章:

jenkins - 使用 YSlow 和 Jenkins 进行性能测试 UI

jenkins - 在 Jenkins 中对参数组进行分组和装饰

Jenkins :如何使用 Jenkins 管道多个参数

java - 使用 app.context 时 Grails 重定向到错误的地址?

sql-server-2008 - SSRS将参数传递给子报表

jenkins - 如何获取触发特定作业的项目详细信息?

data-binding - 从 Controller 中的参数绑定(bind) Grails 日期

groovy - Jenkins/Hudson Groovy 脚本控制台 : Flexibility

java - 在 Java 中将数组作为参数传递时创建数组

java - 这个数组的括号里应该写什么?