You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jenkins Active Choices参数脚本在受限节点无法运行问题咨询

问题原因及解决方案

核心原因

Active Choices Reference Parameter插件的Groovy参数脚本默认在Jenkins主节点(leader)执行,和任务配置里的"Restrict where this project can run"是两个独立阶段:

  • 参数渲染是任务启动前的预处理步骤,此时还没触发任务的节点分配逻辑
  • 任务的节点限制只作用于任务执行阶段的构建步骤,不影响参数生成阶段的脚本运行

解决步骤

  1. 修改Active Choices参数的执行节点配置
    打开你的Freestyle任务参数配置,找到Active Choices Reference Parameter的设置项:

    • 找到Run on node(部分版本显示为Execute script on agent)选项
    • 选择Label,填入你用来标识jenkins-follower节点的标签
    • 保存配置后,参数脚本会强制在符合标签的follower节点上执行,使用该节点的jenkins-follower IAM角色
  2. 验证执行环境
    在Groovy脚本中添加以下代码确认运行节点和身份:

    // 打印当前运行节点名称
    println "Current node: ${env.NODE_NAME}"
    // 打印当前IAM身份
    def callerIdentity = "aws sts get-caller-identity".execute().text
    println "IAM Identity: ${callerIdentity}"
    

    触发参数渲染时,检查输出确认是否使用了follower节点的身份

  3. 额外检查项

    • 确保jenkins-follower节点已安装AWS CLI,且节点的IAM角色确实拥有跨账户assume-role权限
    • 如果找不到Run on node选项,升级Active Choices插件到2.5及以上版本
    • 确认jenkins-follower节点在线,且Jenkins主节点能正常调度该节点

内容的提问来源于stack exchange,提问作者cvlcde

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 07:42:19