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

Azure Pipelines中如何将无代理作业关口输出值传递到代理作业

Azure Pipelines无代理作业输出值传递到代理作业操作方案

操作步骤

  • 第一步:将ServiceNow关口输出注册为无代理作业的全局输出变量
    进入包含ServiceNow关口的无代理作业配置页,在作业的输出变量区域新增映射,将你需要用到的ServiceNow任务输出字段绑定到作业级变量,示例映射值格式为$[dependencies.<关口作业名称>.outputs['<ServiceNow任务名称>.<输出字段名>']]。微软官方ServiceNow创建工单插件的常用输出字段包括workItemId(工单ID)、workItemNumber(工单编号)、status(工单状态),你可以根据需求选择对应的字段。
  • 第二步:配置代理作业的依赖与变量引用
    首先将代理作业的依赖项设置为上述无代理作业,再在代理作业的变量配置中新增变量,值的格式为$[dependencies.<无代理作业名称>.outputs['<你上一步定义的作业级变量名>']],配置完成后该变量即可在代理作业的所有任务中直接调用。

YAML配置示例

jobs:
# 包含ServiceNow关口的无代理作业
- job: Agentless_SNOW_Job
  pool: server
  steps:
  - task: ServiceNowCreateWorkItem@1
    name: CreateSNOWTicket
    inputs:
      serviceNowConnection: '你的ServiceNow服务连接名称'
      shortDescription: '流水线部署申请工单'
      # 其余ServiceNow插件配置参数略
  # 注册作业级输出变量
  outputs:
    snowTicketId: $[dependencies.Agentless_SNOW_Job.outputs['CreateSNOWTicket.workItemId']]

# 后续代理作业
- job: Agent_Deployment_Job
  dependsOn: Agentless_SNOW_Job
  variables:
    # 引用无代理作业的输出变量
    SNOW_TICKET_ID: $[dependencies.Agentless_SNOW_Job.outputs['snowTicketId']]
  pool:
    vmImage: 'ubuntu-latest'
  steps:
  - script: echo "获取到的ServiceNow工单ID为 $(SNOW_TICKET_ID)"
    displayName: 打印ServiceNow工单信息

经典编辑器操作说明

  • 无代理作业侧:在作业设置的「输出变量」板块按上述规则添加变量映射即可。
  • 代理作业侧:先在作业的「依赖项」设置中勾选对应的无代理作业,再在变量区域用$(<无代理作业名>.<输出变量名>)格式引用即可。

注意事项

  • 跨作业读取输出变量必须使用依赖项语法,不能直接用任务级变量的引用方式。
  • 如果你不确定当前版本ServiceNow插件的输出字段名,可以先在无代理作业中添加调试步骤打印完整输出,确认字段名后再配置映射。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 03:03:01