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

跨Azure DevOps组织的Pipeline触发失败及验证错误排查

解决跨组织Pipeline资源引用的"Input Must be Valid"错误

问题背景

原本同组织内的两个Pipeline,第一个负责触发第二个部署应用的Pipeline,运行正常。将第一个Pipeline迁移至其他组织后,触发功能失效,手动运行第二个Pipeline时抛出错误:(Line: 24, Col: 7): Pipeline Resource Coin Input Must be Valid。已添加新服务连接,但调整配置后问题依旧。

第二个Pipeline的资源配置片段:

resources:
  repositories:
    - repository: Stock-coin
      type: git
      name: Stock-coin/Stock-coin
      ref: main
      endpoint: Stock-coin-connection
    - repository: CICD
      type: git
      name: AzureDevOps/Templates
      ref: main
  pipelines:
    - pipeline: Coin
      source: 'Coin'
      project: Stock-coin
      trigger: true

注:第一个Pipeline位于Stock-coin项目中,名称为Coin,相关信息已填入上述pipelines配置段。

问题原因

跨组织引用Pipeline资源时,仅指定source和project参数不足以完成身份验证,Azure DevOps需要明确指定跨组织服务连接来建立信任关系,当前配置缺少该参数。

解决方案

  1. 确认跨组织服务连接有效性
    确保你创建的服务连接是Azure DevOps类型的服务连接,目标指向第一个Pipeline所在的新组织,且该连接拥有访问目标项目及Pipeline的权限(至少是读取权限)。

  2. 更新Pipeline资源配置,添加endpoint参数
    在pipelines段的Coin资源中添加endpoint字段,值为你创建的跨组织服务连接名称,修改后的配置如下:

    resources:
      repositories:
        - repository: Stock-coin
          type: git
          name: Stock-coin/Stock-coin
          ref: main
          endpoint: Stock-coin-connection
        - repository: CICD
          type: git
          name: AzureDevOps/Templates
          ref: main
      pipelines:
        - pipeline: Coin
          source: 'Coin'
          project: Stock-coin
          endpoint: [你的跨组织服务连接名称]
          trigger: true
    
  3. 验证权限配置

    • 检查第二个Pipeline所在项目是否允许使用该服务连接;
    • 确认第一个Pipeline所在组织的项目已授权外部组织通过该服务连接访问其Pipeline资源。
  4. 调整触发逻辑(可选)
    若自动触发仍失效,可在第一个Pipeline中添加显式的Pipeline触发任务,通过服务连接调用第二个Pipeline,确保跨组织触发的身份验证正确。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 15:54:57