Azure DevOps

借助 Azure DevOps 连接器,您可以对 Azure DevOps 数据执行插入、删除、更新和读取操作。

支持的版本

此连接器支持以下 Azure DevOps 版本。

  • Azure DevOps 2022、2020、2019
  • Team Foundation Server 2018

准备工作

在 Google Cloud 项目中,执行以下任务:

  • 确保已设置网络连接。如需了解网络模式,请参阅网络连接
  • 向配置连接器的用户授予 roles/connectors.admin IAM 角色。
  • 向您要用于连接器的服务账号授予 roles/secretmanager.viewerroles/secretmanager.secretAccessor IAM 角色。
  • 启用以下服务:
    • secretmanager.googleapis.com (Secret Manager API)
    • connectors.googleapis.com (Connectors API)

    如需了解如何启用服务,请参阅启用服务。如果之前没有为您的项目启用这些服务或权限,则在您配置连接器时,系统会提示您启用。

配置连接器

一个连接需专用于一个数据源。这意味着,如果您有许多数据源,则必须为每个数据源创建单独的连接。如需创建连接,请执行以下操作:

  1. Cloud 控制台 中,进入 Integration Connectors > 连接页面,然后选择或创建一个 Google Cloud 项目。

    转到“连接”页面

  2. 点击 + 新建以打开创建连接页面。
  3. 位置部分中,选择连接的位置。
    1. 区域:从下拉列表中选择一个位置。

      如需查看所有受支持区域的列表,请参阅位置

    2. 点击下一步
  4. 连接详情部分中,完成以下操作:
    1. 连接器:从可用连接器的下拉列表中选择 Azure DevOps
    2. 连接器版本:从可用版本的下拉列表中选择一个连接器版本。
    3. 连接名称字段中,输入连接实例的名称。

      连接名称必须符合以下条件:

      • 连接名称可以使用字母、数字或连字符。
      • 字母必须小写。
      • 连接名称必须以字母开头,以字母或数字结尾。
      • 连接名称不能超过 49 个字符。
    4. (可选)输入连接实例的说明
    5. 您可以选择启用 Cloud Logging,然后选择日志级别。默认情况下,日志级别设置为 Error
    6. 服务账号:选择具有所需角色的服务账号。
    7. (可选)配置连接节点设置

      • 节点数下限:输入连接节点数下限。
      • 节点数上限:输入连接节点数上限。

      节点是处理事务的连接单元(或副本)。 连接处理越多事务就需要越多节点,相反,处理越少事务需要越少节点。 如需了解节点如何影响连接器价格,请参阅连接节点的价格。如果未输入任何值,则默认情况下,节点数下限设置为 2(以便提高可用性),节点数上限设置为 50。

    8. Azure 租户:提供 Azure DevOps 租户的名称或 ID。
    9. 组织:提供使用 Azure DevOps 的组织或集合的名称。
    10. 架构:输入架构,例如信息、项目。
    11. 目录:输入目录的名称。
    12. 应用转换:输入以英文逗号分隔的转换列表。
    13. Azure DevOps 版本:输入 Azure DevOps 的版本。
    14. Azure DevOps Service API:输入 Azure DevOps 的 REST API 版本。
    15. 网址:提供 Azure DevOps 实例的网址。
    16. 包含自定义字段:选择此选项可在列中列出自定义字段。
    17. (可选)点击 + 添加标签,以键值对的形式向连接添加标签。
    18. 点击下一步
  5. 目标部分中,输入要连接到的远程主机(后端系统)的详细信息。
    1. 目标类型:选择目标类型
      • 如需指定目标主机名或 IP 地址,请选择主机地址,然后在主机 1 字段中输入相应地址。
      • 如需建立专用连接,请选择端点连接,然后从端点连接列表中选择所需的连接。

      如果要与后端系统建立公共连接以提高安全性,您可以考虑为连接配置静态出站 IP 地址,然后将防火墙规则配置为仅将特定静态 IP 地址列入许可名单。

      要输入其他目标,请点击 + 添加目标

    2. 点击下一步
  6. 身份验证部分中,输入身份验证详细信息。
    1. 选择身份验证类型,然后输入相关详细信息。

      Azure DevOps 连接支持以下身份验证类型:

      • AzureAD
      • 基本
    2. 如需了解如何配置这些身份验证类型,请参阅配置身份验证

    3. 点击下一步
  7. 查看:查看您的连接和身份验证详细信息。
  8. 点击创建

配置身份验证

根据您要使用的身份验证输入详细信息。

  • AzureAD
    • ClientID:输入您创建的应用的客户端 ID。
    • 范围:指定所有范围,以英文逗号分隔,例如 read、write。
    • 客户端密钥:输入包含您创建的关联应用的客户端密钥的 Secret Manager 密文。
    • Secret 版本:为上面选择的 Secret 选择 Secret 版本。
    • 授权网址:提供客户端的授权网址。
  • 基本
    • 个人访问令牌:输入生成的个人访问令牌。
    • 密钥版本:选择所输入密钥的密钥版本。

连接配置示例

本部分列出了创建连接时配置的各个字段的示例值。

在 Azure DevOps 中,各种数据架构用于整理和管理项目的不同方面。 每种架构都侧重于特定类型的数据,以便根据项目需求有效地组织信息。

  • 项目数据模型:一种架构,用于定义如何在 Azure DevOps 中组织、关联和管理项目相关数据,例如制品、代码库、流水线和团队。
  • 信息数据模型:一种架构,用于定义如何在 Azure DevOps 项目中构建、存储和访问文档、元数据和通信制品。
  • 代码库数据模型:一种架构,用于定义如何在 Azure DevOps 中组织和管理代码库、分支、提交、拉取请求和相关元数据。
  • 分析数据模型:一种架构,用于捕获和整理来自 Azure DevOps 的历史数据和实时数据,以便生成报告、信息中心和高级分析。
  • 所有数据模型:通过单个连接即可访问所有数据模型。
字段名称 信息模型 项目模型 代码库模型 Google Analytics 模型 所有模型 AzureAD 连接
位置europe-west1europe-west1europe-west1europe-west1asia-east1europe-west1
连接器Azure DevOpsAzure DevOpsAzure DevOpsAzure DevOpsAzure DevOpsAzure DevOps
连接器版本111111
连接名称azuredevops-informationmodelazuredevops-projectmodelazuredevops-repositorymodelazuredevops-analyticsmodelDevOpsazuredevops-oauth
启用 Cloud Logging
日志级别调试调试调试调试调试调试
服务账号Your_Project_Number@serviceaccountYour_Project_Number@serviceaccountYour_Project_Number@serviceaccountYour_Project_Number@serviceaccountYour_Project_Number@serviceaccountYour_Project_Number@serviceaccount
Azure 租户Tenant_IdTenant_IdTenant_IdTenant_IdTenant_IdTenant_Id
组织Organization_NameOrganization_NameOrganization_NameOrganization_NameOrganization_NameOrganization_Name
架构信息项目Repository__RepositoryId分析项目
目录DevopsProject_ProjectIdProject_ProjectIdProject_ProjectIdProject_ProjectId
Azure Dev Ops 版AzureDevOps OnlineAzureDevOps OnlineAzureDevOps OnlineAzureDevOps OnlineAzureDevOps OnlineAzureDevOps Online
Azure DevOps 服务 API6.06.06.06.06.06.0
添加自定义字段
CustomizedDefaultCatalogNameCustomizedDefaultCatalogName=GoogleCustomizedDefaultCatalogName=Google
节点数下限222222
节点数上限505050505050
身份验证
基本
API 令牌您的应用提供的 API 令牌您的应用提供的 API 令牌您的应用提供的 API 令牌您的应用提供的 API 令牌您的应用提供的 API 令牌
Secret 版本111111
AzureAD
客户端 ID客户端 ID
客户端密钥值客户端密钥值
范围user_impersonation
授权网址https://login.microsoftonline.com/c6f32d0e-6725-4007-81c2-951e853061a6/oauth2/authorize

您可以使用以下连接属性来管理从 Azure DevOps 提取的数据。

目录

此属性用于指定要连接的项目的名称或 ID。如需获取项目 ID 和名称的列表,请针对 Projects 表执行 SELECT 查询。

  • 如需查询特定项目的数据,请将 Catalog 设置为项目名称或其 ID,格式为 Project_projectname。
    如果项目名称为 dev,ID 为 2ee729d6-804d-4ece-84af-d5befa94abe8,请将 Catalog 设置为 Project_devProject_2ee729d6-804d-4ece-84af-d5befa94abe8
  • 如需查询独立于特定项目的数据,请将 Catalog 设置为 Devops。 如果目录名称为 Devops,您可以使用任何名称来代替 Devops

架构

此属性用于指定要使用的架构,可用架构取决于指定的代码库。如需获取代码库 ID 和名称的列表,请针对 Repositories 表执行 SELECT 查询。

  • 如果您在连接配置中将目录架构设置为 INFORMATION,则只能访问信息数据模型架构。其他项目目录或架构不会公开。
  • 如果将目录设置为项目目录,您可以将架构设置为以下值之一:AnalyticsProject 或某个代码库架构。 选择合适的架构后,您就可以查询特定仓库中的数据了。
    如需查询 ID 为 3ee729d6-804d-4ece-84af-d5befa94abe8 的代码库中的数据,请将 Catalog 设置为 Repository_3ee729d6-804d-4ece-84af-d5befa94abe8

如需在 Azure 门户/MS Entra 中创建应用,并在 Azure AD 连接级别利用所创建应用的所有参数,请参阅快速入门:向 Microsoft 身份平台注册应用在 Microsoft Entra ID 中注册客户端应用

系统限制

Azure DevOps 连接器每个节点每秒最多可处理 6 个事务,超出此限制的任何事务都会受到限制。默认情况下,Integration Connectors 会为连接分配 2 个节点(以提高可用性)。

如需了解适用于 Integration Connectors 的限制,请参阅限制

在集成中使用 Azure DevOps 连接

创建连接后,该连接将在 Apigee Integration 和 Application Integration 中可用。您可以通过“连接器”任务在集成中使用该连接。

  • 如需了解如何在 Apigee Integration 中创建和使用连接器任务,请参阅连接器任务
  • 如需了解如何在 Application Integration 中创建和使用连接器任务,请参阅连接器任务

操作

本部分列出了连接器支持的操作。 如需了解如何配置操作,请参阅操作示例

CreateWorkItem 操作

此操作会创建一个工作项。

CreateWorkItem 操作的输入参数

参数名称 数据类型 必需 说明
ProjectId 字符串 Azure DevOps 项目的 ID。
类型 字符串 要创建的工作项的类型。
发件人 字符串 复制或移动操作的源路径。
Op 字符串 用于修改工作项的 patch 操作,例如添加、复制、移动、移除、替换或测试。
路径 字符串 操作的路径。
字符串 相应操作的值。

如需查看有关如何配置 CreateWorkItem 操作的示例,请参阅示例

UpdateWorkItem 操作

UpdateWorkItem 操作的输入参数

此操作用于更新工作项。

参数名称 数据类型 必需 说明
ProjectId 字符串 Azure DevOps 项目的 ID。
WorkItemId 字符串 工作项的 ID。
发件人 字符串 复制或移动操作的源路径。
Op 字符串 用于修改工作项的 patch 操作,例如添加、复制、移动、移除、替换或测试。
路径 字符串 操作的路径。
字符串 相应操作的值。

如需查看有关如何配置 UpdateWorkItem 操作的示例,请参阅示例

GetPullRequestCommits 操作

此操作可获取指定拉取请求的提交。

GetPullRequestCommits 操作的输入参数

参数名称 数据类型 必需 说明
ProjectId 字符串 Azure DevOps 项目的 ID。
RepositoryId 字符串 代码库的 ID 或名称。如果未设置 ProjectId,则必须设置 RepositoryId。
PullRequestId 字符串 拉取请求的 ID。

GetPullRequestCommits 操作的输出参数

如需查看有关如何配置 GetPullRequestCommits 操作的示例,请参阅示例

PushChanges 操作

此操作会将更改推送到 Azure DevOps 实例中的代码库。

PushChanges 操作的输入参数

参数名称 数据类型 必需 说明
ProjectId 字符串 Azure DevOps 项目的 ID。
RepositoryId 字符串 代码库的 ID 或名称。如果未设置 ProjectId,则必须设置 RepositoryId。
BranchRefName 字符串 Git 分支的名称。
OldObjectId 字符串 分支的当前对象 ID。
CommitComment 字符串 指定提交中包含的注释。
ChangesAggregate 字符串 一个汇总对象,包含提交中每次更改的详细信息。

如需查看有关如何配置 PushChanges 操作的示例,请参阅示例

DownloadReleaseLogs 操作

此操作会下载特定版本的日志。

DownloadReleaseLogs 操作的输入参数

参数名称 数据类型 必需 说明
ProjectId 字符串 Azure DevOps 项目的 ID。
ReleaseId 整数 发布版本的 ID。
FileLocation 字符串 相应文件的位置。
编码 字符串 FileData 输入编码类型。 允许的值为 NONE 和 BASE64。默认值为 BASE64。
FileStream 字符串 用于写入文件数据的输出流的实例。仅在未提供 FileLocation 时使用。

如需查看有关如何配置 DownloadReleaseLogs 操作的示例,请参阅示例

DownloadTestAttachment 操作

此操作会下载测试结果/运行附件。

DownloadTestAttachment 操作的输入参数

参数名称 数据类型 必需 说明
ProjectId 字符串 Azure DevOps 项目的 ID。
ResultId 整数 测试结果的 ID。
RunId 整数 测试运行的 ID。
AttachmentId 字符串 附件的 ID。
FileLocation 字符串 相应文件的位置。
编码 字符串 FileData 输入编码类型。 允许的值为 NONE 和 BASE64。默认值为 BASE64。
FileStream 字符串 用于写入文件数据的输出流的实例。仅在未提供 FileLocation 时使用。

如需查看有关如何配置 DownloadTestAttachment 操作的示例,请参阅示例

SetProjectProperties 操作

此操作可以创建、更新和删除团队项目属性。

SetProjectProperties 操作的输入参数

参数名称 数据类型 必需 说明
ProjectId 字符串 Azure DevOps 项目的 ID。
发件人 字符串 移动或复制操作的源路径。
Op 字符串 用于修改项目属性的 patch 操作,例如添加、复制、移动、移除、替换或测试。
路径 字符串 操作的路径。
字符串 相应操作的值。

如需查看有关如何配置 SetProjectProperties 操作的示例,请参阅示例

DeleteTestCase 操作

此操作会删除测试用例。

DeleteTestCase 操作的输入参数

参数名称 数据类型 必需 说明
ProjectId 字符串 Azure DevOps 项目的 ID。
TestcaseId 整数 测试用例的 ID。

如需查看有关如何配置 DeleteTestCase 操作的示例,请参阅示例

RunPipeline 操作

此操作会使用指定的配置运行流水线。

RunPipeline 操作的输入参数

参数名称 数据类型 必需 说明
ProjectId 字符串 Azure DevOps 项目的 ID。
PipelineId 整数 流水线的 ID。
PipelineVersion 整数 要运行的流水线的版本。
资源 字符串 运行所需的资源。
变量 字符串 在流水线执行期间使用的变量和值列表。
StagesToSkip 字符串 要跳过的阶段名称的数组。
TemplateParameters 字符串 流水线执行期间使用的参数的键值对映射。

如需查看有关如何配置 RunPipeline 操作的示例,请参阅示例

CreatePullRequest 操作

此操作会创建具有指定配置的拉取请求。

CreatePullRequest 操作的输入参数

参数名称 数据类型 必需 说明
ProjectId 字符串 Azure DevOps 项目的 ID。
RepositoryId 字符串 代码库的 ID。
标题 字符串 拉取请求的标题。
说明 字符串 拉取请求的说明。
SourceRefName 字符串 相应拉取请求的源分支的名称。
TargetRefName 字符串 拉取请求的目标分支的名称。
CompletionOptions 字符串 影响拉取请求完成时合并方式的选项。
IsDraft 布尔值 草稿 / WIP 拉取请求。
标签 字符串 与拉取请求关联的标签。
MergeOptions 字符串 拉取请求合并运行时使用的选项。
Reviewers 字符串 拉取请求的审核者列表。
WorkItemRefs 字符串 与此拉取请求关联的任何工作项引用。

如需查看有关如何配置 CreatePullRequest 操作的示例,请参阅示例

UpdatePullRequest 操作

此操作会使用指定的配置更新拉取请求。

UpdatePullRequest 操作的输入参数

参数名称 数据类型 必需 说明
ProjectId 字符串 Azure DevOps 项目的 ID。
RepositoryId 字符串 代码库的 ID。
PullRequestId 字符串 拉取请求的 ID。
标题 字符串 拉取请求的标题。
说明 字符串 拉取请求的说明。
状态 字符串 拉取请求的状态。
TargetRefName 字符串 拉取请求的目标分支的名称。仅在启用 PR 重新定位功能时可用。
CompletionOptions 字符串 影响拉取请求完成时合并方式的选项。
MergeOptions 字符串 拉取请求合并运行时使用的选项。
AutoCompleteSetById 字符串 启用自动补全功能的用户 ID。

如需查看有关如何配置 UpdatePullRequest 操作的示例,请参阅示例

GetPullRequestCommits 操作

此操作会获取指定拉取请求的提交,并采用指定的配置。

GetPullRequestCommits 操作的输入参数

参数名称 数据类型 必需 说明
ProjectId 字符串 Azure DevOps 项目的 ID。
RepositoryId 字符串 代码库的 ID。
PullRequestId 字符串 拉取请求的 ID。

如需查看有关如何配置 GetPullRequestCommits 操作的示例,请参阅示例

AddBuildTag 操作

此操作会向 build 添加标记。

AddBuildTag 操作的输入参数

参数名称 数据类型 必需 说明
ProjectId 字符串 Azure DevOps 项目的 ID。
BuildId 字符串 build 的 ID。
标记 字符串 要添加到 build 中的标记。

如需查看有关如何配置 AddBuildTag 操作的示例,请参阅示例

DeleteBuildTag 操作

此操作会从 build 中删除标记。

DeleteBuildTag 操作的输入参数

参数名称 数据类型 必需 说明
ProjectId 字符串 Azure DevOps 项目的 ID。
BuildId 字符串 build 的 ID。
标记 字符串 要从 build 中移除的标记。

如需查看有关如何配置 DeleteBuildTag 操作的示例,请参阅示例

DownloadBuildReports 操作

此操作会下载 build 报告。

DownloadBuildReports 操作的输入参数

参数名称 数据类型 必需 说明
ProjectId 字符串 Azure DevOps 项目的 ID。
BuildId 整数 build 的 ID。
FileLocation 字符串 相应文件的位置。
编码 字符串 FileData 输入编码类型。 允许的值为 NONE 和 BASE64。 默认值为 BASE64。
FileStream 字符串 用于写入文件数据的输出流的实例。仅在未提供 FileLocation 时使用。

如需查看有关如何配置 DownloadBuildReports 操作的示例,请参阅示例

DownloadBuildLogs 操作

此操作会下载 build 日志。

DownloadBuildLogs 操作的输入参数

参数名称 数据类型 必需 说明
ProjectId 字符串 Azure DevOps 项目的 ID。
BuildId 整数 build 的 ID。
LogId 整数 日志的 ID。
StartLine 整数 相应 build 的起始行。
EndLine 整数 构建的结束行。
FileLocation 字符串 相应文件的位置。
编码 字符串 FileData 输入编码类型。 允许的值为 NONE 和 BASE64。 默认值为 BASE64。
FileStream 字符串 用于写入文件数据的输出流的实例。仅在未提供 FileLocation 时使用。

如需查看有关如何配置 DownloadBuildLogs 操作的示例,请参阅示例

UpdateUser 操作

此操作用于更新用户详细信息。

UpdateUser 操作的输入参数

参数名称 数据类型 必需 说明
UserId 字符串 用户的 ID。
发件人 字符串 移动或复制操作的源路径。
Op 字符串 用于修改用户的 patch 操作,例如添加、复制、移动、移除、替换或测试。
路径 字符串 操作的路径。
字符串 相应操作的值。

如需查看有关如何配置 UpdateUser 操作的示例,请参阅示例

CloneTestPlan 操作

此操作会克隆测试计划。

CloneTestPlan 操作的输入参数

参数名称 数据类型 必需 说明
ProjectId 字符串 Azure DevOps 项目的 ID。
DeepClone 布尔值 还会克隆所有关联的测试用例。
CloneRequirements 布尔值 如果设置为 true,则会克隆要求。默认值为 false。
CopyAllSuites 布尔值 从源方案复制所有套装。
CopyAncestorHierarchy 布尔值 复制祖先层次结构。
DestinationWorkItemType 字符串 克隆的工作项类型的名称。
OverrideParameters 字符串 键值对,其中每个键的值都被指定的值替换。
RelatedLinkComment 字符串 向克隆的测试计划添加评论。
DestinationPlanAreaPath 字符串 测试计划的区域。
DestinationPlanBuildId 字符串 要测试的 build。
DestinationPlanDescription 字符串 测试计划的说明。
DestinationPlanEndDate 字符串 测试计划的结束日期。
DestinationPlanIteration 字符串 测试计划的迭代路径。
DestinationPlanName 字符串 测试计划的名称。
DestinationPlanOwnerId 字符串 测试计划所有者的用户 ID。
DestinationPlanProject 字符串 目的地的项目名称。
DestinationPlanStartDate 字符串 测试方案的开始日期。
DestinationPlanState 字符串 测试计划的状态。
DestinationPlanSync 布尔值 指定测试计划中各个套件中的重复测试必须如何运行。
SourceTestPlanId 整数 源测试计划的 ID。
SourceTestPlanSuiteId 整数 以英文逗号分隔的测试套件 ID 列表,用于在源测试计划中克隆。

如需查看有关如何配置 CloneTestPlan 操作的示例,请参阅示例

CloneTestSuite 操作

此操作会克隆测试套件详细信息。

CloneTestSuite 操作的输入参数

参数名称 数据类型 必需 说明
ProjectId 字符串 Azure DevOps 项目的 ID。
DeepClone 布尔值 克隆所有关联的测试用例。
CloneRequirements 布尔值 如果设置为 true,则会克隆要求。默认值为 false。
CopyAllSuites 布尔值 从源方案复制所有套装。
CopyAncestorHierarchy 布尔值 复制祖先层次结构。
DestinationWorkItemType 字符串 克隆的工作项类型的名称。
OverrideParameters 字符串 键值对,其中每个键的值都会被指定的值替换。
RelatedLinkComment 字符串 向克隆的测试套件添加注释。
DestinationTestSuiteId 整数 目标测试套件的 ID。
DestinationProjectName 字符串 目标项目名称。
SourceTestSuiteId 整数 源测试套件的 ID。

如需查看有关如何配置 CloneTestSuite 操作的示例,请参阅示例

CloneTestCase 操作

此操作会克隆测试用例详细信息。

CloneTestCase 操作的输入参数

参数名称 数据类型 必需 说明
ProjectId 字符串 Azure DevOps 项目的 ID。
IncludeAttachments 布尔值 如果设置为 true,则包含测试用例的附件;默认值设置为 false。
IncludeLinks 布尔值 如果设置为 true,则包含链接。默认值为 false。
RelatedLinkComment 字符串 向克隆的测试用例添加评论。
DestinationTestPlanId 整数 目标测试方案的 ID。
DestinationTestSuiteId 整数 目标测试套件的 ID。
SourceTestPlanId 整数 源测试计划的 ID。
SourceTestSuiteId 整数 源测试套件的 ID。
TestCaseId 整数 以英文逗号分隔的要克隆的测试用例 ID 列表。

如需查看有关如何配置 CloneTestCase 操作的示例,请参阅示例

DeletePullRequestAttachment 操作

此操作会删除 pull 请求附件详细信息。

DeletePullRequestAttachment 操作的输入参数

参数名称 数据类型 必需 说明
ProjectId 字符串 Azure DevOps 项目的 ID。
RepositoryId 字符串 代码库的 ID。
PullRequestId 整数 拉取请求的 ID。
FileName 字符串 附件的名称。

如需查看有关如何配置 DeletePullRequestAttachment 操作的示例,请参阅示例

操作示例

示例 - 创建工作项

  1. Configure connector task 对话框中,点击 Actions
  2. 选择 CreateWorkItem 操作,然后点击完成
  3. 连接器任务的任务输入部分中,点击 connectorInputPayload,然后在 Default Value 字段中输入类似于以下内容的值:
    { "Type": "Bug", "Value": "Googlecloud_Testing_Bug_M", "Op": "add", "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "Path": "/fields/System.Title" }
    
  4. 如果操作成功,CreateWorkItem 任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    [{
    "Success": "True"
    }]
    

如需创建各种实体(例如任务、史诗、用户故事、测试用例、功能和问题),您只需修改输入载荷中“Type”字段的值。
如需将类型设置为“史诗”,您可以设置 "Type": "Epic"。同样,您可以将值更改为“类型”:“任务”“类型”:“用户故事”“类型”:“测试用例”“类型”:“功能”或“类型”:“问题”,以创建相应的实体。

示例 - 更新工作项

  1. Configure connector task 对话框中,点击 Actions
  2. 选择 UpdateWorkItem 操作,然后点击完成
  3. 连接器任务的任务输入部分中,点击 connectorInputPayload,然后在 Default Value 字段中输入类似于以下内容的值:
    { "WorkItemId": "35", "Value": "Update Workitem", "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "Op": "replace", "Path": "/fields/System.Title" }
    
  4. 如果操作成功,UpdateWorkItem 任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    [{
    "Success": "True"
    }]
    

示例 - 获取提交的拉取请求

  1. Configure connector task 对话框中,点击 Actions
  2. 选择 GetPullRequestCommits 操作,然后点击完成
  3. 连接器任务的任务输入部分中,点击 connectorInputPayload,然后在 Default Value 字段中输入类似于以下内容的值:
    { "PullRequestId": "2", "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "RepositoryId": "e848b49e-704f-4df3-94ce-4f23176715b6" }
    
  4. 如果操作成功,GetPullRequestCommits 任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    [ { "CommitId": "7299b6623d7d146751d8cf280af301f9a345ff05", "AuthorName": "jeffersonloveshi.k", "AuthorEmail": "jeffersonloveshiking@gmail.com", "AuthoredDate": "2024-08-12 11:25:23.0", "CommitterName": "lakshminarayana.k", "CommitterEmail": "jeffersonloveshiking@gmail.com", "CommittedDate": "2024-08-12 11:25:23.0", "Comment": "Added sample.txt", "CommentTruncated": null, "Url": "https://dev.azure.com/charliecruz/64058663-6419-4b11-8ef0-2ebf985949bc/_apis/git/repositories/e848b49e-704f-4df3-94ce-4f23176715b6/commits/7299b6623d7d146751d8cf280af301f9a345ff05" } ]
    

示例 - 将更改推送到代码库

  1. Configure connector task 对话框中,点击 Actions
  2. 选择 PushChanges 操作,然后点击完成
  3. 连接器任务的任务输入部分中,点击 connectorInputPayload,然后在 Default Value 字段中输入类似于以下内容的值:
    { "RepositoryId": "89f79340-8659-4927-9d9f-e8836c19af55", "BranchRefName": "refs/heads/US_Googlecloud_Push1", "OldObjectId": "4d66aafb75efda2bbdda7a2b609b152b1b715b7e", "CommitComment": "Googlecloud PUSH Changes", "ChangesAggregate": "{\n \"changeType\": \"edit\",\n \"item\": {\n \"path\": \"/tasks.md\"\n },\n \"newContent\": {\n \"content\": \"# Tasks\\n\\n* Item 1\\n* Item 2\",\n \"contentType\": \"rawtext\"\n }\n }" }
    
  4. 如果操作成功,PushChanges 任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    [ { "NewObjectId": "949e4710336bc5bdc779ca6b334e029c2f50a029", "CommitId": "949e4710336bc5bdc779ca6b334e029c2f50a029", "CommitTreeId": "7e7394dcfc5b4d4cf2c8c21d70a96fe34f8eaf3e", "AuthorName": "Charlie Cruz", "AuthorEmail": "baklavainthebalkans@gmail.onmicrosoft.com", "AuthoredDate": "2024-11-19 07:04:42.0", "CommitterName": "Charlie Cruz", "CommitterEmail": "baklavainthebalkans@gmail.onmicrosoft.com", "CommittedDate": "2024-11-19 07:04:42.0", "CommitUrl": "https://dev.azure.com/charliecruz/64058663-6419-4b11-8ef0-2ebf985949bc/_apis/git/repositories/89f79340-8659-4927-9d9f-e8836c19af55/commits/949e4710336bc5bdc779ca6b334e029c2f50a029", "RepositoryId": "89f79340-8659-4927-9d9f-e8836c19af55", "RepositoryName": "refs/heads/US_Googlecloud_Push1", "PushId": "193", "PushDate": "2024-11-19T07:04:42.5793751Z", "PushURL": "https://dev.azure.com/charliecruz/64058663-6419-4b11-8ef0-2ebf985949bc/_apis/git/repositories/89f79340-8659-4927-9d9f-e8836c19af55/pushes/193" } ]
    

示例 - 下载版本的日志

  1. Configure connector task 对话框中,点击 Actions
  2. 选择 DownloadReleaseLogs 操作,然后点击完成
  3. 连接器任务的任务输入部分中,点击 connectorInputPayload,然后在 Default Value 字段中输入类似于以下内容的值:
    { "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "ReleaseId": 2 }
    
  4. 如果操作成功,DownloadReleaseLogs 任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    [ { "Status": "Success", "FileData": "{Base64encodedvalue}]
    

示例 - 下载测试结果/运行附件

  1. Configure connector task 对话框中,点击 Actions
  2. 选择 DownloadTestAttachment 操作,然后点击完成
  3. 连接器任务的任务输入部分中,点击 connectorInputPayload,然后在 Default Value 字段中输入类似于以下内容的值:
    { "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "RunId": 50, "AttachmentId": "2" }
    
  4. 如果操作成功,DownloadTestAttachment 任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    [ { "Status": "Success", "FileData": "iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABlSURBVDhP7cxBCsAgDERR739pG/CnGJI0FopQ8O2cjNP6R85QbeNQU7wT1dkijaQ3vkZoWElaoTeJojW01cYh0jwfgiFBV/lEjOZtacijN/nLkOBHhIaVDgn+Wdycp6FXzlCl9wt0Y0cAzHo/zgAAAABJRU5ErkJggg==" } ]
    

示例 - 设置项目属性

  1. Configure connector task 对话框中,点击 Actions
  2. 选择 SetProjectProperties 操作,然后点击完成
  3. 连接器任务的任务输入部分中,点击 connectorInputPayload,然后在 Default Value 字段中输入类似于以下内容的值:
    { "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "Op": "add", "Path": "/Alias", "Value": "Google CLoud Properties" }
    
  4. 如果操作成功,SetProjectProperties 任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    [ { "Status": "Success" } ]
    

示例 - 删除测试用例

  1. Configure connector task 对话框中,点击 Actions
  2. 选择 DeleteTestCase 操作,然后点击完成
  3. 连接器任务的任务输入部分中,点击 connectorInputPayload,然后在 Default Value 字段中输入类似于以下内容的值:
    { "TestCaseId": 22255, "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc" }
    
  4. 如果操作成功,DeleteTestCase 任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    [ { "Status": "Success" } ]
    

示例 - 为项目运行流水线

  1. Configure connector task 对话框中,点击 Actions
  2. 选择 RunPipeline 操作,然后点击完成
  3. 连接器任务的任务输入部分中,点击 connectorInputPayload,然后在 Default Value 字段中输入类似于以下内容的值:
    { "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "PipelineId": 7, "Resources": "{\n \"repositories\": {\n \"self\": {\n \"refName\": \"refs/heads/main\" // Specify the branch or tag\n }\n }\n }" }
    
  4. 如果操作成功,RunPipeline 任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    [ { "State": "inProgress", "RunId": "16", "RunName": "20241113.2", "RunHref": "https://dev.azure.com/charliecruz/64058663-6419-4b11-8ef0-2ebf985949bc/_apis/pipelines/7/runs/16", "CreatedDate": "2024-11-13 12:07:38.9237296" } ]
    

示例 - 更新拉取请求

  1. Configure connector task 对话框中,点击 Actions
  2. 选择 UpdatePullRequest 操作,然后点击完成
  3. 连接器任务的任务输入部分中,点击 connectorInputPayload,然后在 Default Value 字段中输入类似于以下内容的值:
    { "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "RepositoryId": "e848b49e-704f-4df3-94ce-4f23176715b6", "PullRequestId": "26", "Description": "updated pull req", "Title": "Googlecloud M pull request" }
    
  4. 如果操作成功,UpdatePullRequest 任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    [ { "Status": "Success", "PullRequestId": 26 } ]
    

示例 - 创建拉取请求

  1. Configure connector task 对话框中,点击 Actions
  2. 选择 CreatePullRequest 操作,然后点击完成
  3. 连接器任务的任务输入部分中,点击 connectorInputPayload,然后在 Default Value 字段中输入类似于以下内容的值:
    { "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "RepositoryId": "e848b49e-704f-4df3-94ce-4f23176715b6", "Title": "Googlecloud M pull request", "SourceRefName": "refs/heads/Test_Branch", "TargetRefName": "refs/heads/main" }
    
  4. 如果操作成功,CreatePullRequest 任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    [ { "Status": "Success", "PullRequestId": 26 } ]
    

示例 - 获取拉取请求提交

  1. Configure connector task 对话框中,点击 Actions
  2. 选择 GetPullRequestCommits 操作,然后点击完成
  3. 连接器任务的任务输入部分中,点击 connectorInputPayload,然后在 Default Value 字段中输入类似于以下内容的值:
    { "PullRequestId": "23", "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "RepositoryId": "e848b49e-704f-4df3-94ce-4f23176715b6" }
    
  4. 如果操作成功,GetPullRequestCommits 任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    [ { "CommitId": "ebb720c5b93c52341cb86ccfb42258bb562a8406", "AuthorName": "dani.dana", "AuthorEmail": "baklavainthebalkans@gmail.com", "AuthoredDate": "2024-11-26 11:24:19.0", "CommitterName": "dani.dana", "CommitterEmail": "baklavainthebalkans@gmail.com", "CommittedDate": "2024-11-26 11:24:19.0", "Comment": "Updated sample.txt", "CommentTruncated": null, "Url": "https://dev.azure.com/charliecruz/64058663-6419-4b11-8ef0-2ebf985949bc/_apis/git/repositories/e848b49e-704f-4df3-94ce-4f23176715b6/commits/ebb720c5b93c52341cb86ccfb42258bb562a8406" }, { "CommitId": "353f74b48ada83111449b922f4660a338e058989", "AuthorName": "dani.dana", "AuthorEmail": "baklavainthebalkans@gmail.com", "AuthoredDate": "2024-11-26 11:23:01.0", "CommitterName": "dani.dana", "CommitterEmail": "baklavainthebalkans@gmail.com", "CommittedDate": "2024-11-26 11:23:01.0", "Comment": "Updated bcd", "CommentTruncated": null, "Url": "https://dev.azure.com/charliecruz/64058663-6419-4b11-8ef0-2ebf985949bc/_apis/git/repositories/e848b49e-704f-4df3-94ce-4f23176715b6/commits/353f74b48ada83111449b922f4660a338e058989" }, { "CommitId": "50a74dee46f8bcad4637d730994144f944c7d589", "AuthorName": "dani.dana", "AuthorEmail": "baklavainthebalkans@gmail.com", "AuthoredDate": "2024-11-26 11:21:59.0", "CommitterName": "dani.dana", "CommitterEmail": "baklavainthebalkans@gmail.com", "CommittedDate": "2024-11-26 11:21:59.0", "Comment": "Added bcd", "CommentTruncated": null, "Url": "https://dev.azure.com/charliecruz/64058663-6419-4b11-8ef0-2ebf985949bc/_apis/git/repositories/e848b49e-704f-4df3-94ce-4f23176715b6/commits/50a74dee46f8bcad4637d730994144f944c7d589" }, { "CommitId": "9813f562b0548144006f773314704db274c757c4", "AuthorName": "Alex amal", "AuthorEmail": "cloudysanfrancisco@gmail.com", "AuthoredDate": "2024-11-26 11:19:29.0", "CommitterName": "Alex amal", "CommitterEmail": "cloudysanfrancisco@gmail.com", "CommittedDate": "2024-11-26 11:19:29.0", "Comment": "hello", "CommentTruncated": null, "Url": "https://dev.azure.com/charliecruz/64058663-6419-4b11-8ef0-2ebf985949bc/_apis/git/repositories/e848b49e-704f-4df3-94ce-4f23176715b6/commits/9813f562b0548144006f773314704db274c757c4" } ]
    

示例 - 添加 build 标记

  1. Configure connector task 对话框中,点击 Actions
  2. 选择 AddBuildTag 操作,然后点击完成
  3. 连接器任务的任务输入部分中,点击 connectorInputPayload,然后在 Default Value 字段中输入类似于以下内容的值:
    { "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc","BuildId": "14","Tag": "AddGooglecloud_Tag" }
    
  4. 如果操作成功,AddBuildTag 任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    [{ "Status": "Success" }]
    

示例 - 删除 build 标记

  1. Configure connector task 对话框中,点击 Actions
  2. 选择 DeleteBuildTag 操作,然后点击完成
  3. 连接器任务的任务输入部分中,点击 connectorInputPayload,然后在 Default Value 字段中输入类似于以下内容的值:
    { "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc","BuildId": "14","Tag": "AddGooglecloud_Tag"}
    
  4. 如果操作成功,DeleteBuildTag 任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    [{ "Status": "Success" }] 
    

示例 - 下载 build 报告

  1. Configure connector task 对话框中,点击 Actions
  2. 选择 DownloadBuildReports 操作,然后点击完成
  3. 连接器任务的任务输入部分中,点击 connectorInputPayload,然后在 Default Value 字段中输入类似于以下内容的值:
    { "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "BuildId": 16 }
    
  4. 如果操作成功,DownloadBuildReports 任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    [ { "Status": "Success", "FileData": "Base64-format data" } ]
    

示例 - 下载 build 日志

  1. Configure connector task 对话框中,点击 Actions
  2. 选择 DownloadBuildLogs 操作,然后点击完成
  3. 连接器任务的任务输入部分中,点击 connectorInputPayload,然后在 Default Value 字段中输入类似于以下内容的值:
    { "BuildId": 16, "LogId": 1, "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc" }
    
  4. 如果操作成功,DownloadBuildLogs 任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    [ { "Status": "Success", "FileData": "Base64-format data" } ]
    

示例 - 更新用户

  1. Configure connector task 对话框中,点击 Actions
  2. 选择 UpdateUser 操作,然后点击完成
  3. 连接器任务的任务输入部分中,点击 connectorInputPayload,然后在 Default Value 字段中输入类似于以下内容的值:
    { "UserId": "088a8c28-1b83-4538-9c74-b7ca97eb4ef2", "Op": "add", "Path": "/projectEntitlements/50fac9d4-37aa-4a13-a81a-887d12be7b9f", "Value": "{ \"projectRef\": {\n \"id\": \"50fac9d4-37aa-4a13-a81a-887d12be7b9f\",\n \"name\": \"Postman_Testing_Project\"\n }, \n \"group\": {\n \"groupType\": \"projectContributor\"\n }}" }
    
  4. 如果操作成功,Update User 任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    [ { "Status": "Success" } ]
    

示例 - 克隆测试计划

  1. Configure connector task 对话框中,点击 Actions
  2. 选择 CloneTestPlan 操作,然后点击完成
  3. 连接器任务的任务输入部分中,点击 connectorInputPayload,然后在 Default Value 字段中输入类似于以下内容的值:
    { "CloneRequirements": true, "CopyAllSuites": true, "RelatedLinkComment": "Cloned from existing test plan googlecloud", "DestinationPlanName": "TestPlan 2", "DestinationPlanAreaPath": "GCPTesting_New_Project", "DestinationPlanIteration": "GCPTesting_New_Project", "DestinationPlanProject": "GCPTesting_New_Project", "SourceTestPlanId": 1, "CopyAncestorHierarchy": true }
    
  4. 如果操作成功,CloneTestPlan 任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    [ { "CloneOperationId": null, "CloneOperationState": "queued", "sourcetestplan_project_id": "ea4270d3-d335-4ef1-b1af-37a7591880cf", "sourcetestplan_project_name": "GCPTesting_New_Project", "sourcetestplan_project_state": "unchanged", "sourcetestplan_project_visibility": "unchanged", "sourcetestplan_project_lastupdatetime": "0001-01-01T00:00:00", "sourcetestplan_id": "1", "sourcetestplan_name": "Test Plan 1", "destinationtestplan_id": "15", "destinationtestplan_project_id": "ea4270d3-d335-4ef1-b1af-37a7591880cf", "destinationtestplan_project_name": "GCPTesting_New_Project", "destinationtestplan_project_state": "unchanged", "destinationtestplan_project_visibility": "unchanged", "destinationtestplan_project_lastupdatetime": "0001-01-01T00:00:00", "destinationtestplan_updateddate": "2025-01-07T14:02:31.247Z", "destinationtestplan_updatedby_displayname": "Charlie Cruz", "destinationtestplan_updatedby_url": "https://spsprodcin1.vssps.visualstudio.com/A0f5fd5e8-7721-4842-b504-2a8ddb8efeb0/_apis/Identities/df102a0c-59d2-6d69-aecd-556086d6d8d6", "destinationtestplan_updatedby__links_avatar_href": "https://dev.azure.com/sunitavenkata2024/_apis/GraphProfile/MemberAvatars/msa.ZGYxMDJhMGMtNTlkMi03ZDY5LWFlY2QtNTU2MDg2ZDZkOGQ2", "destinationtestplan_updatedby_id": "df102a0c-59d2-6d69-aecd-556086d6d8d6", "destinationtestplan_updatedby_uniquename": "sunitavenkata2024@outlook.com", "destinationtestplan_updatedby_imageurl": "https://dev.azure.com/sunitavenkata2024/_apis/GraphProfile/MemberAvatars/msa.ZGYxMDJhMGMtNTlkMi03ZDY5LWFlY2QtNTU2MDg2ZDZkOGQ2", "destinationtestplan_updatedby_descriptor": "msa.ZGYxMDJhMGMtNTlkMi03ZDY5LWFlY2QtNTU2MDg2ZDZkOGQ2", "destinationtestplan_rootsuite_id": "16", "destinationtestplan_rootsuite_name": "TestPlan 2", "destinationtestplan__links__self_href": "https://dev.azure.com/sunitavenkata2024/GCPTesting_New_Project/_apis/testplan/Plans/15", "destinationtestplan__links_clienturl_href": "mtms://dev.azure.com:443/sunitavenkata2024/p:GCPTesting_New_Project/Testing/testplan/connect?id=15", "destinationtestplan__links_rootsuite_href": "https://dev.azure.com/sunitavenkata2024/GCPTesting_New_Project/_apis/testplan/Plans/15/Suites/16", "destinationtestplan_revision": "1", "destinationtestplan_name": "TestPlan 2", "destinationtestplan_areapath": "GCPTesting_New_Project", "destinationtestplan_startdate": "2025-01-07T14:02:31.0878913Z", "destinationtestplan_enddate": "2025-01-14T14:02:31.0878913Z", "destinationtestplan_iteration": "GCPTesting_New_Project", "destinationtestplan_owner_displayname": "sunita m V", "destinationtestplan_owner_url": "https://spsprodcin1.vssps.visualstudio.com/A0f5fd5e8-7721-4842-b504-2a8ddb8efeb0/_apis/Identities/df102a0c-59d2-6d69-aecd-556086d6d8d6", "destinationtestplan_owner__links_avatar_href": "https://dev.azure.com/sunitavenkata2024/_apis/GraphProfile/MemberAvatars/msa.ZGYxMDJhMGMtNTlkMi03ZDY5LWFlY2QtNTU2MDg2ZDZkOGQ2", "destinationtestplan_owner_id": "df102a0c-59d2-6d69-aecd-556086d6d8d6", "destinationtestplan_owner_uniquename": "sunitavenkata2024@outlook.com", "destinationtestplan_owner_imageurl": "https://dev.azure.com/sunitavenkata2024/_apis/GraphProfile/MemberAvatars/msa.ZGYxMDJhMGMtNTlkMi03ZDY5LWFlY2QtNTU2MDg2ZDZkOGQ2", "destinationtestplan_owner_descriptor": "msa.ZGYxMDJhMGMtNTlkMi03ZDY5LWFlY2QtNTU2MDg2ZDZkOGQ2", "destinationtestplan_state": "Active", "destinationtestplan_testoutcomesettings_syncoutcomeacrosssuites": "false", "cloneoptions_relatedlinkcomment": "Cloned from existing test plan gcp", "cloneoptions_copyallsuites": "true", "cloneoptions_copyancestorhierarchy": "true", "cloneoptions_clonerequirements": "true", "cloneoperationresponse_state": "queued", "cloneoperationresponse_links__self_href": "https://dev.azure.com/sunitavenkata2024/GCPTesting_New_Project/_apis/testplan/Plans/CloneOperation/0" } ]
    

示例 - 克隆测试套件

  1. Configure connector task 对话框中,点击 Actions
  2. 选择 CloneTestSuite 操作,然后点击完成
  3. 连接器任务的任务输入部分中,点击 connectorInputPayload,然后在 Default Value 字段中输入类似于以下内容的值:
    { "SourceTestSuiteId": 18, "CopyAllSuites": true, "CopyAncestorHierarchy": true, "DestinationTestSuiteId": 2 }
    
  4. 如果操作成功,CloneTestSuite 任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    [ { "CloneOperationId": 2, "CloneOperationState": "queued", "sourcetestsuite_project_id": "ea4270d3-d335-4ef1-b1af-37a7591880cf", "sourcetestsuite_project_name": "GCPTesting_New_Project", "sourcetestsuite_project_state": "unchanged", "sourcetestsuite_project_visibility": "unchanged", "sourcetestsuite_project_lastupdatetime": "0001-01-01T00:00:00", "sourcetestsuite_id": "18", "sourcetestsuite_name": "Test Plan 3", "destinationtestsuite_project_id": "ea4270d3-d335-4ef1-b1af-37a7591880cf", "destinationtestsuite_project_name": "GCPTesting_New_Project", "destinationtestsuite_project_state": "unchanged", "destinationtestsuite_project_visibility": "unchanged", "destinationtestsuite_project_lastupdatetime": "0001-01-01T00:00:00", "destinationtestsuite_id": "2", "destinationtestsuite_name": "Test Plan 1", "cloneoptions_copyallsuites": "true", "cloneoptions_copyancestorhierarchy": "true", "cloneoptions_clonerequirements": "false", "cloneoperationresponse_opid": "2", "cloneoperationresponse_state": "queued", "cloneoperationresponse_links__self_href": "https://dev.azure.com/sunitavenkata2024/GCPTesting_New_Project/_apis/testplan/Suites/CloneOperation/2" } ]
    

示例 - 克隆测试用例

  1. Configure connector task 对话框中,点击 Actions
  2. 选择 CloneTestCase 操作,然后点击完成
  3. 连接器任务的任务输入部分中,点击 connectorInputPayload,然后在 Default Value 字段中输入类似于以下内容的值:
    { "SourceTestPlanId": 1, "DestinationTestPlanId": 20, "SourceTestSuiteId": 2, "DestinationTestSuiteId": 21, "TestCaseId": 3 }
    
  4. 如果操作成功,CloneTestCase 任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    [ { "CloneOperationId": 3, "CloneOperationState": "queued", "sourcetestsuite_project_id": "ea4270d3-d335-4ef1-b1af-37a7591880cf", "sourcetestsuite_project_name": "GCPTesting_New_Project", "sourcetestsuite_project_state": "unchanged", "sourcetestsuite_project_visibility": "unchanged", "sourcetestsuite_project_lastupdatetime": "0001-01-01T00:00:00", "sourcetestsuite_testcaseids": "3", "sourcetestsuite_id": "2", "sourcetestsuite_name": "Test Plan 1", "destinationtestsuite_project_id": "ea4270d3-d335-4ef1-b1af-37a7591880cf", "destinationtestsuite_project_name": "GCPTesting_New_Project", "destinationtestsuite_project_state": "unchanged", "destinationtestsuite_project_visibility": "unchanged", "destinationtestsuite_project_lastupdatetime": "0001-01-01T00:00:00", "destinationtestsuite_id": "21", "destinationtestsuite_name": "Test Plan 4", "cloneoptions_includelinks": "false", "cloneoptions_includeattachments": "false", "cloneoperationresponse_opid": "3", "cloneoperationresponse_state": "queued", "cloneoperationresponse_links__self_href": "https://dev.azure.com/sunitavenkata2024/GCPTesting_New_Project/_apis/testplan/Plans/CloneOperation/3" } ]
    

示例 - 删除拉取请求附件

  1. Configure connector task 对话框中,点击 Actions
  2. 选择 DeletePullRequestAttachment 操作,然后点击完成
  3. 连接器任务的任务输入部分中,点击 connectorInputPayload,然后在 Default Value 字段中输入类似于以下内容的值:
    { "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "RepositoryId": "e848b49e-704f-4df3-94ce-4f23176715b6", "PullRequestId": 26, "FileName": "Company.jpg" }
    
  4. 此操作会返回 DeletePullRequestAttachment 的确认消息。如果操作成功,DeletePullRequestAttachment 任务的 connectorOutputPayload 响应参数将具有类似于以下内容的值:

    [ { "Status": "Success" } ]
    

实体操作示例

检索项目中的所有信息中心

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 Dashboards
  3. 选择 List 操作,然后点击完成
  4. 连接器任务的任务输入部分中,您可以根据客户要求设置 filterClause。请查看下方的“注意”部分

  5. filterClause 的值应始终以这种格式用单引号 (') 传递。
    您可以使用 filterClause 根据任意列过滤特定的一组记录。

示例 - 使用信息中心的 ID 检索单个信息中心

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 Dashboards
  3. 选择 Get 操作,然后点击完成
  4. 将实体 ID 设置为“2f671e29-e48f-4d26-8869-859e154b5f20”,这是要传递的键。如需设置实体 ID,请在数据映射数据映射器部分,点击打开数据映射编辑器,然后在输入值字段中输入 "2f671e29-e48f-4d26-8869-859e154b5f20",并选择 EntityId 作为局部变量。

    实体 ID 的值应直接传递,例如“2f671e29-e48f-4d26-8869-859e154b5f20”。 其中,“2f671e29-e48f-4d26-8869-859e154b5f20”是传递的唯一主键值。

    在某些情况下,传递单个实体 ID 可能会导致错误,因为该实体具有两个复合键。在这种情况下,您可以使用 filterClause 并传递相应值,例如 id='2f671e29-e48f-4d26-8869-859e154b5f20'。

示例 - 使用信息中心的 ID 移除信息中心

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 Dashboards
  3. 选择 Delete 操作,然后点击完成
  4. 将实体 ID 设置为“2f671e29-e48f-4d26-8869-859e154b5f20”,这是要传递的键。如需设置实体 ID,请在数据映射数据映射器部分,点击打开数据映射编辑器,然后在输入值字段中输入 "2f671e29-e48f-4d26-8869-859e154b5f20",并选择 EntityId 作为局部变量。

    如果实体具有两个复合业务键或主键,您可以将 filterClause 设置为 id='2f671e29-e48f-4d26-8869-859e154b5f20',而不是指定 entityId

示例 - 在项目中创建新信息中心

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 Dashboard
  3. 选择 Create 操作,然后点击完成
  4. 数据映射任务的数据映射器部分中,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并选择 EntityId/ConnectorInputPayload 作为局部变量。
    { "Name": "TestingGooglecloud09", "TeamId": "9f2e4d3c-ed57-474f-bab1-3de5727e60a1" }
    

    如果集成成功,连接器任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    { "Id": "a2402c49-6c17-43a9-bfc4-3701d07bcfee" }
    

示例 - 在项目中创建新的用户使用权

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 Users
  3. 选择 Create 操作,然后点击完成
  4. 数据映射任务的数据映射器部分中,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并选择 EntityId/ConnectorInputPayload 作为局部变量。
    { "UserPrincipalName": "jeffersonloveshiking@gmail.com", "UserSubjectKind": "user", "AccessLevelAccountLicenseType": "Stakeholder", "UserOriginId": "e3d3e130-51dc-48c5-a510-cce7a9df63af" }
    

    如果集成成功,连接器任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    { "Id": "5e373a81-073d-4d64-a2c5-23d0b6cc287f" }
    

示例 - 在项目中创建新查询

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 Queries
  3. 选择 Create 操作,然后点击完成
  4. 数据映射任务的数据映射器部分中,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并选择 EntityId/ConnectorInputPayload 作为局部变量。
    { "Name": "New Queries Googlecloud", "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "IsFolder": true, "Wiql": "SELECT [System.Id], [System.Title], [System.State] FROM WorkItems WHERE [System.WorkItemType] = 'Bug' AND [System.State] = 'New' ORDER BY [System.ChangedDate] DESC", "ParentQueryId": "df947cf9-dbbe-43bc-93a4-3e4d7287adb8" }
    

    如果集成成功,连接器任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    { "Id": "cf4a25e8-d2d2-48b7-a483-dd901c78293b" }
    

示例 - 在项目中创建新流水线

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 Pipelines
  3. 选择 Create 操作,然后点击完成
  4. 数据映射任务的数据映射器部分中,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并选择 EntityId/ConnectorInputPayload 作为局部变量。
    { "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "Name": "Googlecloud pipeline", "Folder": "\\\\", "ConfigurationPath": "build-deploy.yml", "ConfigurationRepositoryId": "957b9cd1-f7f1-45d4-8665-ed7120021da9", "ConfigurationRepositoryType": "azureReposGit", "ConfigurationType": "yaml" }
    

    如果集成成功,连接器任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    { "Id": 9 }
    

示例 - 在项目中创建部署群组

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 DeploymentGroups
  3. 选择 Create 操作,然后点击完成
  4. 数据映射任务的数据映射器部分中,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并选择 EntityId/ConnectorInputPayload 作为局部变量。
    { "Name": "Deployment group 2 Googlecloud" }
    

    如果集成成功,连接器任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    { "Id": 139 }
    

示例 - 在项目中创建新的测试配置

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 TestPlan
  3. 选择 Create 操作,然后点击完成
  4. 数据映射任务的数据映射器部分中,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并选择 EntityId/ConnectorInputPayload 作为局部变量。
    { "Name": "Googlecloud_TestPlan" }
    

    如果集成成功,连接器任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    { "Id": 106 }
    

示例 - 在项目中创建测试套件

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 TestSuite
  3. 选择 Create 操作,然后点击完成
  4. 数据映射任务的数据映射器部分中,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并选择 EntityId/ConnectorInputPayload 作为局部变量。
    { "Name": "Googlecloud_Suite", "PlanId": 106, "SuiteType": "staticTestSuite", "ParentSuiteId": 108, "InheritDefaultConfigurations": false }
    

    如果集成成功,连接器任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    { "Id": 22264 }
    

示例 - 在项目中创建测试运行

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 TestRun
  3. 选择 Create 操作,然后点击完成
  4. 数据映射任务的数据映射器部分中,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并选择 EntityId/ConnectorInputPayload 作为局部变量。
    { "Name": "TestRun_Googlecloud1"}
    

    如果集成成功,连接器任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    { "Id": 46 }
    

示例 - 创建新项目

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 Projects
  3. 选择 Create 操作,然后点击完成
  4. 数据映射任务的数据映射器部分中,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并选择 EntityId/ConnectorInputPayload 作为局部变量。
    { "Name": "project from Googlecloud test 4", "Description": "This is new project", "CapabilitiesVersionControlType": "Git\n", "CapabilitiesProcessTemplateTypeId": "6b724908-ef14-45cf-84f8-768b5384da45" }
    

    如果集成成功,Projects 任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    { "Id": "c1a8e7f4-9afa-47a8-9862-b56229e134a9" }
    
  5. 对项目执行创建操作后生成的 ID 不是实际的项目 ID。
    如需检索确切的项目详细信息,您需要执行 List 操作,并将项目名称作为过滤条件,例如 Name= 'Google Project Integration'。

示例 - 在项目中创建团队

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 Teams
  3. 选择 Create 操作,然后点击完成
  4. 数据映射任务的数据映射器部分中,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并选择 EntityId/ConnectorInputPayload 作为局部变量。
    { "Name": "M new team"}
    

    如果集成成功,连接器任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    { "Id": "5285fb98-a1bc-42e1-9668-3c2780061367" }
    

示例 - 在项目中创建环境

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 Environments
  3. 选择 Create 操作,然后点击完成
  4. 数据映射任务的数据映射器部分中,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并选择 EntityId/ConnectorInputPayload 作为局部变量。
    { "Name": "Google CLoud Env M", "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "Description": "Google Cloud created environment" }
    

    如果集成成功,连接器任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    { "Id": "9" }
    

示例 - 在信息中心内创建新 widget

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 Widgets
  3. 选择 Create 操作,然后点击完成
  4. 数据映射任务的数据映射器部分中,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并选择 EntityId/ConnectorInputPayload 作为局部变量。
    { "Name": "Widget 2", "DashboardId": "6cb82f8d-393c-422e-b4e3-563d5e34fc31", "TeamId": "9f2e4d3c-ed57-474f-bab1-3de5727e60a1", "RowPosition": 4, "ColumnPosition": 4, "RowSpanSize": 1, "ColumnSpanSize": 2, "ContributionId": "ms.vss-dashboards-web.Microsoft.VisualStudioOnline.Dashboards.OtherLinksWidget" }
    

    此示例演示了如何添加 widget。如果集成成功,连接器任务的 connectorOutputPayload 响应参数将具有类似以下的值:

    { "Id": "7d049ae2-d995-4b3e-9ebd-662d94a53cc8" }
    

示例 - 向代码库中的拉取请求添加审核者

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 PullRequestReviewers
  3. 选择 Create 操作,然后点击完成
  4. 数据映射任务的数据映射器部分中,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并选择 EntityId/ConnectorInputPayload 作为局部变量。
    { "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "RepositoryId": "e848b49e-704f-4df3-94ce-4f23176715b6", "PullRequestId": 22, "Id": "38b14cd8-d8f2-4d79-9204-19adbcb62c81", "Vote": 0 }
    

    如果集成成功,连接器任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    { "Id": "38b14cd8-d8f2-4d79-9204-19adbcb62c81", "PullRequestId": null }
    

示例 - 在项目中创建变量组

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 VariableGroups
  3. 选择 Create 操作,然后点击完成
  4. 数据映射任务的数据映射器部分中,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并选择 EntityId/ConnectorInputPayload 作为局部变量。
    {
      "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc",
      "Type": "Vsts",
      "Variables": "{\n    \"SampleVariableName1\": {\n      \"value\": \"SampleValue1\"\n    },\n    \"SampleVariableName2\": {\n      \"value\": \"SampleValue2\"\n    }\n  }",
      "VariableGroupProjectRefs": "[\n    {\n      \"description\": \"SampleDescription\",\n      \"name\": \"Variable Group new test\",\n      \"projectReference\": {\n        \"id\": \"64058663-6419-4b11-8ef0-2ebf985949bc\",\n        \"name\": \"Googlecloud-Demo-Project\"\n      }\n    }\n  ]",
      "Name": "Variable Group new test"
    }

    如果集成成功,连接器任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    {"Id": "12"}
    

示例 - 在代码库中创建新的 build 定义

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 BuildDefinition
  3. 选择 Create 操作,然后点击完成
  4. 数据映射任务的数据映射器部分中,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并选择 EntityId/ConnectorInputPayload 作为局部变量。
    {"Name": "New Build definition from googlecloud test 11","RepositoryType": "TfsGit","ProcessYamlFilename": "data.txt","RepositoryId": "e848b49e-704f-4df3-94ce-4f23176715b6","Tags": "1"}
    

    如果集成成功,连接器任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    {"Id": "25"}
    

示例 - 在项目中创建版本

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 Releases
  3. 选择 Create 操作,然后点击完成
  4. 数据映射任务的数据映射器部分中,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并选择 EntityId/ConnectorInputPayload 作为局部变量。
    { "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "Reason": "manual", "Description": "This is a googlecloud release", "ReleaseDefinitionId": 1 }
    

    如果集成成功,连接器任务的 connectorOutputPayload 响应形参将具有类似以下的值:

    { "Id": "13" }
    

示例 - 更新项目中的团队名称或说明

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 Teams
  3. 选择 Update 操作,然后点击完成
  4. 数据映射任务的数据映射器部分,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。
    { "Name": "M new team update" }
    
  5. 在数据映射器中将实体 ID 设置为 Teams 的实体。如需设置实体 ID,请点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。

    您也可以将 filterClause 设置为 5285fb98-a1bc-42e1-9668-3c2780061367,而不是指定 entityId

    运行此示例后,连接器任务的 connectorOutputPayload 输出变量中会返回类似于以下内容的响应:

    { "Id": "5285fb98-a1bc-42e1-9668-3c2780061367" }
    

示例 - 更新项目中的查询

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 Queries
  3. 选择 Update 操作,然后点击完成
  4. 数据映射任务的数据映射器部分,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。
    { "Name": "Update Queries" }
    
  5. 在数据映射器中将实体 ID 设置为查询的实体。如需设置实体 ID,请点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似以下的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。

    您也可以将 filterClause 设置为 81797017-624d-4967-bc85-842a817bff48,而不是指定 entityId

    运行此示例后,连接器任务的 connectorOutputPayload 输出变量中会返回类似于以下内容的响应:

    { "Id": "81797017-624d-4967-bc85-842a817bff48" }
    

示例 - 更新项目中的信息中心

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 Dashboard
  3. 选择 Update 操作,然后点击完成
  4. 数据映射任务的数据映射器部分,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。
    { "Name": " update from googlecloud" }
    
  5. 在数据映射器中将实体 ID 设置为信息中心的实体。如需设置实体 ID,请点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似以下的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。

    您也可以将 filterClause 设置为 139,而不是指定 entityId

    运行此示例后,连接器任务的 connectorOutputPayload 输出变量中会返回类似于以下内容的响应:

    { "Id": "139" }
    

示例 - 更新项目中的测试套件

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 TestSuite
  3. 选择 Update 操作,然后点击完成
  4. 数据映射任务的数据映射器部分,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。
    { "Name": "UPdated_Suite", "ParentSuiteId": 108 }
    
  5. 在数据映射器中将实体 ID 设置为 TestSuite 的实体。如需设置实体 ID,请点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。

    您也可以将 filterClause 设置为 22264,而不是指定 entityId

    运行此示例后,连接器任务的 connectorOutputPayload 输出变量中会返回类似于以下内容的响应:

    { "Id": "22264" }
    

示例 - 更新项目中的部署组

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 DeploymentGroups
  3. 选择 Update 操作,然后点击完成
  4. 数据映射任务的数据映射器部分,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。
    { "Name": "Deployment" }
    
  5. 在数据映射器中将实体 ID 设置为 DeploymentGroups 的实体。如需设置实体 ID,请点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似以下的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。

    您也可以将 filterClause 设置为 138,而不是指定 entityId

    运行此示例后,连接器任务的 connectorOutputPayload 输出变量中会返回类似于以下内容的响应:

    { "Id": "138" }
    

示例 - 更新项目中的测试计划

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 TestPlan
  3. 选择 Update 操作,然后点击完成
  4. 数据映射任务的数据映射器部分,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。
    { "Name": "TestPlan_Update" }
    
  5. 在数据映射器中将实体 ID 设置为 TestPlan 的实体。如需设置实体 ID,请点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。

    您也可以将 filterClause 设置为 104,而不是指定 entityId

    运行此示例后,连接器任务的 connectorOutputPayload 输出变量中会返回类似于以下内容的响应:

    { "Id": "104" }
    

示例 - 更新项目中的测试运行

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 TestRuns
  3. 选择 Update 操作,然后点击完成
  4. 数据映射任务的数据映射器部分,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。
    { "Name": "Update Test Run", "Comment": "Google cloud has updated the test run use case." }
    
  5. 在数据映射器中将实体 ID 设置为 TestRuns 的实体如需设置实体 ID,请点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似以下的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。

    您也可以将 filterClause 设置为 46,而不是指定 entityId

    运行此示例后,连接器任务的 connectorOutputPayload 输出变量中会返回类似于以下内容的响应:

    { "Id": "46" }
    

示例 - 更新项目

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 Projects
  3. 选择 Update 操作,然后点击完成
  4. 数据映射任务的数据映射器部分,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。
    { "Name": "Projects Update" }
    
  5. 在数据映射器中将实体 ID 设置为项目的实体如需设置实体 ID,请点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似以下的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。

    您也可以将 filterClause 设置为 { "Id": "1677d4b0-eaf6-47c2-88ee-78819b00977d" },而不是指定 entityId

    运行此示例后,连接器任务的 connectorOutputPayload 输出变量中会返回类似于以下内容的响应:

    { "Id": "1677d4b0-eaf6-47c2-88ee-78819b00977d" }
    

示例 - 更新项目中的环境

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 Environments
  3. 选择 Update 操作,然后点击完成
  4. 数据映射任务的数据映射器部分,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。
    { "Name": "Environment Update M", "Description": "Update environment " }
    
  5. 在数据映射器中将实体 ID 设置为环境的实体。如需设置实体 ID,请点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似以下的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。

    您也可以将 filterClause 设置为 { "Id": "9" },而不是指定 entityId

    运行此示例后,连接器任务的 connectorOutputPayload 输出变量中会返回类似于以下内容的响应:

    { "Id": 9 }
    

示例 - 更新项目中的变量组

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 VariableGroups
  3. 选择 Update 操作,然后点击完成
  4. 数据映射任务的数据映射器部分,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。
    {
      "VariableGroupProjectRefs": "[\n    {\n      \"description\": \"SampleDescription\",\n      \"name\": \"New VariableGroup googlecloud updated\",\n      \"projectReference\": {\n        \"id\": \"64058663-6419-4b11-8ef0-2ebf985949bc\",\n        \"name\": \"GoogleCloud-Demo-Project\"\n      }\n    }\n  ]",
      "Variables": "{\n    \"SampleVariableName1\": {\n      \"value\": \"SampleValue1\"\n    },\n    \"SampleVariableName2\": {\n      \"value\": \"SampleValue2\"\n    }\n  }",
      "Name": "Variable Group new test updated"
    }
    
  5. 在数据映射器中将实体 ID 设置为 VariableGroups 的实体。如需设置实体 ID,请点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似以下的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。

    您也可以将 filterClause 设置为 { "Id": "12" },而不是指定 entityId

    运行此示例后,连接器任务的 connectorOutputPayload 输出变量中会返回类似于以下内容的响应:

    { "Id": 12 }
    

示例 - 更新项目中的 build 定义

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 BuildDefinition
  3. 选择 Update 操作,然后点击完成
  4. 数据映射任务的数据映射器部分,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。
    { "Name": "Build definition update 25","RepositoryId": "e848b49e-704f-4df3-94ce-4f23176715b6","RepositoryType": "TfsGit","ProcessYamlFilename": "data.txt","Revision": 1 }
    
  5. 在数据映射器中,将实体 ID 设置为 BuildDefinition 的实体。如需设置实体 ID,请点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。

    您也可以将 filterClause 设置为 { ProjectId='64058663-6419-4b11-8ef0-2ebf985949bc' and Id='25'},而不是指定 entityId

    运行此示例后,连接器任务的 connectorOutputPayload 输出变量中会返回类似于以下内容的响应:

    { "Id": 25 }
    

示例 - 更新项目中的拉取请求审核者

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 PullRequestReviewers
  3. 选择 Update 操作,然后点击完成
  4. 数据映射任务的数据映射器部分,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。
    {"isFlagged": true}
    
  5. 在 Data Mapper 中将实体 ID 设置为 PullRequestReviewers 的实体。如需设置实体 ID,请点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。

    您也可以将 filterClause 设置为 { ProjectId='64058663-6419-4b11-8ef0-2ebf985949bc' and RepositoryId='e848b49e-704f-4df3-94ce-4f23176715b6' and PullRequestId='22' and Id='38b14cd8-d8f2-4d79-9204-19adbcb62c81'},而不是指定 entityId

    运行此示例后,连接器任务的 connectorOutputPayload 输出变量中会返回类似于以下内容的响应:

    { "Id": "38b14cd8-d8f2-4d79-9204-19adbcb62c81","PullRequestId": null}
    

示例 - 更新项目中的发布版本

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 Releases
  3. 选择 Update 操作,然后点击完成
  4. 数据映射任务的数据映射器部分,点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。
    { "Description": "Update Release Description googlecloud","Name": "Update release googlecloud"}
    
  5. 在数据映射器中,将实体 ID 设置为版本的实体。如需设置实体 ID,请点击 Open Data Mapping Editor,然后在 Input Value 字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。

    您也可以将 filterClause 设置为 {"Id": 13},而不是指定 entityId

    运行此示例后,连接器任务的 connectorOutputPayload 输出变量中会返回类似于以下内容的响应:

    {"Id": 13 }
    

向 Google Cloud 社区寻求帮助

您可以在 Google Cloud 社区的 Cloud 论坛中发布您的问题以及讨论此连接器。

后续步骤