在 Jenkins 的 Promoted Build Plugin 中参数化批准者详细信息

Parameterize the approver detail in Promoted Build Plugin in Jenkins

我在 Jenkins 中使用 Promote Build 插件。 我需要从 Jenkins 中的用户那里获取批准者信息并向他提供批准权限。 这是我正在尝试做的事情:

可行吗?

不要认为你可以在那里使用变量。但是,您可以跳过该条件,而是使用 Execute Shell 构建步骤,然后检查变量 $PROMOTED_USER_NAME。解析名称,并据此做出决定。

Parent 参数不会自动传递给升级版本。但是,您可以将它们导出到文件,存档文件(重要的是存档而不是将其保留在工作区中),将文件带到升级步骤中,然后使用 [=20 将其加载到环境变量中=] 插件,或者直接使用脚本中的文件

在Parent工作

  • 配置参数approverid
  • 执行Shell构建步骤如下:
    echo approverid=$approverid > myfile
  • 最后,确保存档 myfile

关于促销配置

  • 跳过审批条件
  • 添加Copy Artifacts from another project
  • 对于项目名称,使用$PROMOTED_JOB_NAME
  • 对于哪个版本,使用特定版本,然后提供$PROMOTED_NUMBER
  • 对于要复制的工件,使用myfile
  • 添加Inject Environment Variables构建步骤
  • 对于属性文件路径,输入myfile
  • 添加执行Shell构建步骤
  • 在shell中,比较$approverid$PROMOTED_USER_NAME
  • 的值
  • 如果匹配,则继续,否则 abort/exit 升级。

当然,执行(和中止)的历史将被记录下来。