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

Posted

技术标签:

【中文标题】Jenkins 在 groovy 脚本中检索主动选择参数【英文标题】:Jenkins retrieve active choice parameter in groovy script 【发布时间】:2016-09-18 19:54:17 【问题描述】:

我有一个名为 ENVIRONMENT 的主动选择参数。我想在下一个主动选择参数中使用该参数。如何找回之前的选择?

这是我的代码。我无法弄清楚如何从前一个参数中检索 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

【问题讨论】:

【参考方案1】:

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

需要将参数类型改为

Active Choices 反应参考参数

这允许您将 ENVIRONMENT 参数添加为引用参数。 有关详细信息,请参阅Active Choices Plugin 文档

【讨论】:

谢谢,这正是我需要使用的。

以上是关于Jenkins 在 groovy 脚本中检索主动选择参数的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Jenkins Email-Ext 中引用 groovy 脚本

Groovy Jenkins 脚本中的 sh 命令

jenkins执行groovy 脚本报错

如何在同一个 Jenkins 节点中加载另一个 groovy 脚本?

如何使用Groovy脚本在Jenkins中显示绘图?

jenkins2 -pipeline 常用groovy脚本