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.viewer
和roles/secretmanager.secretAccessor
IAM 角色。 - 启用以下服务:
secretmanager.googleapis.com
(Secret Manager API)connectors.googleapis.com
(Connectors API)
如需了解如何启用服务,请参阅启用服务。如果之前没有为您的项目启用这些服务或权限,则在您配置连接器时,系统会提示您启用。
配置连接器
一个连接需专用于一个数据源。这意味着,如果您有许多数据源,则必须为每个数据源创建单独的连接。如需创建连接,请执行以下操作:
- 在 Cloud 控制台 中,进入 Integration Connectors > 连接页面,然后选择或创建一个 Google Cloud 项目。
- 点击 + 新建以打开创建连接页面。
- 在位置部分中,选择连接的位置。
- 区域:从下拉列表中选择一个位置。
如需查看所有受支持区域的列表,请参阅位置。
- 点击下一步。
- 区域:从下拉列表中选择一个位置。
- 在连接详情部分中,完成以下操作:
- 连接器:从可用连接器的下拉列表中选择 Azure DevOps。
- 连接器版本:从可用版本的下拉列表中选择一个连接器版本。
- 在连接名称字段中,输入连接实例的名称。
连接名称必须符合以下条件:
- 连接名称可以使用字母、数字或连字符。
- 字母必须小写。
- 连接名称必须以字母开头,以字母或数字结尾。
- 连接名称不能超过 49 个字符。
- (可选)输入连接实例的说明。
- 您可以选择启用 Cloud Logging,然后选择日志级别。默认情况下,日志级别设置为
Error
。 - 服务账号:选择具有所需角色的服务账号。
- (可选)配置连接节点设置:
- 节点数下限:输入连接节点数下限。
- 节点数上限:输入连接节点数上限。
节点是处理事务的连接单元(或副本)。 连接处理越多事务就需要越多节点,相反,处理越少事务需要越少节点。 如需了解节点如何影响连接器价格,请参阅连接节点的价格。如果未输入任何值,则默认情况下,节点数下限设置为 2(以便提高可用性),节点数上限设置为 50。
- Azure 租户:提供 Azure DevOps 租户的名称或 ID。
- 组织:提供使用 Azure DevOps 的组织或集合的名称。
- 架构:输入架构,例如信息、项目。
- 目录:输入目录的名称。
- 应用转换:输入以英文逗号分隔的转换列表。
- Azure DevOps 版本:输入 Azure DevOps 的版本。
- Azure DevOps Service API:输入 Azure DevOps 的 REST API 版本。
- 网址:提供 Azure DevOps 实例的网址。
- 包含自定义字段:选择此选项可在列中列出自定义字段。
- (可选)点击 + 添加标签,以键值对的形式向连接添加标签。
- 点击下一步。
- 在目标部分中,输入要连接到的远程主机(后端系统)的详细信息。
- 目标类型:选择目标类型。
- 如需指定目标主机名或 IP 地址,请选择主机地址,然后在主机 1 字段中输入相应地址。
- 如需建立专用连接,请选择端点连接,然后从端点连接列表中选择所需的连接。
如果要与后端系统建立公共连接以提高安全性,您可以考虑为连接配置静态出站 IP 地址,然后将防火墙规则配置为仅将特定静态 IP 地址列入许可名单。
要输入其他目标,请点击 + 添加目标。
- 点击下一步。
- 目标类型:选择目标类型。
-
在身份验证部分中,输入身份验证详细信息。
- 选择身份验证类型,然后输入相关详细信息。
Azure DevOps 连接支持以下身份验证类型:
- AzureAD
- 基本
- 点击下一步。
如需了解如何配置这些身份验证类型,请参阅配置身份验证。
- 选择身份验证类型,然后输入相关详细信息。
- 查看:查看您的连接和身份验证详细信息。
- 点击创建。
配置身份验证
根据您要使用的身份验证输入详细信息。
-
AzureAD
- ClientID:输入您创建的应用的客户端 ID。
- 范围:指定所有范围,以英文逗号分隔,例如 read、write。
- 客户端密钥:输入包含您创建的关联应用的客户端密钥的 Secret Manager 密文。
- Secret 版本:为上面选择的 Secret 选择 Secret 版本。
- 授权网址:提供客户端的授权网址。
-
基本
- 个人访问令牌:输入生成的个人访问令牌。
- 密钥版本:选择所输入密钥的密钥版本。
连接配置示例
本部分列出了创建连接时配置的各个字段的示例值。
在 Azure DevOps 中,各种数据架构用于整理和管理项目的不同方面。 每种架构都侧重于特定类型的数据,以便根据项目需求有效地组织信息。
- 项目数据模型:一种架构,用于定义如何在 Azure DevOps 中组织、关联和管理项目相关数据,例如制品、代码库、流水线和团队。
- 信息数据模型:一种架构,用于定义如何在 Azure DevOps 项目中构建、存储和访问文档、元数据和通信制品。
- 代码库数据模型:一种架构,用于定义如何在 Azure DevOps 中组织和管理代码库、分支、提交、拉取请求和相关元数据。
- 分析数据模型:一种架构,用于捕获和整理来自 Azure DevOps 的历史数据和实时数据,以便生成报告、信息中心和高级分析。
- 所有数据模型:通过单个连接即可访问所有数据模型。
字段名称 | 信息模型 | 项目模型 | 代码库模型 | Google Analytics 模型 | 所有模型 | AzureAD 连接 |
---|---|---|---|---|---|---|
位置 | europe-west1 | europe-west1 | europe-west1 | europe-west1 | asia-east1 | europe-west1 |
连接器 | Azure DevOps | Azure DevOps | Azure DevOps | Azure DevOps | Azure DevOps | Azure DevOps |
连接器版本 | 1 | 1 | 1 | 1 | 1 | 1 |
连接名称 | azuredevops-informationmodel | azuredevops-projectmodel | azuredevops-repositorymodel | azuredevops-analyticsmodel | DevOps | azuredevops-oauth |
启用 Cloud Logging | 是 | 是 | 是 | 是 | 是 | 是 |
日志级别 | 调试 | 调试 | 调试 | 调试 | 调试 | 调试 |
服务账号 | Your_Project_Number@serviceaccount | Your_Project_Number@serviceaccount | Your_Project_Number@serviceaccount | Your_Project_Number@serviceaccount | Your_Project_Number@serviceaccount | Your_Project_Number@serviceaccount |
Azure 租户 | Tenant_Id | Tenant_Id | Tenant_Id | Tenant_Id | Tenant_Id | Tenant_Id |
组织 | Organization_Name | Organization_Name | Organization_Name | Organization_Name | Organization_Name | Organization_Name |
架构 | 信息 | 项目 | Repository__RepositoryId | 分析 | 项目 | |
目录 | Devops | Project_ProjectId | Project_ProjectId | Project_ProjectId | Project_ProjectId | |
Azure Dev Ops 版 | AzureDevOps Online | AzureDevOps Online | AzureDevOps Online | AzureDevOps Online | AzureDevOps Online | AzureDevOps Online |
Azure DevOps 服务 API | 6.0 | 6.0 | 6.0 | 6.0 | 6.0 | 6.0 |
添加自定义字段 | 是 | 是 | 是 | 是 | 是 | 是 |
CustomizedDefaultCatalogName | CustomizedDefaultCatalogName=Google | CustomizedDefaultCatalogName=Google | ||||
节点数下限 | 2 | 2 | 2 | 2 | 2 | 2 |
节点数上限 | 50 | 50 | 50 | 50 | 50 | 50 |
身份验证 | 是 | 是 | 是 | 是 | 是 | 是 |
基本 | 是 | 是 | 是 | 是 | 是 | |
API 令牌 | 您的应用提供的 API 令牌 | 您的应用提供的 API 令牌 | 您的应用提供的 API 令牌 | 您的应用提供的 API 令牌 | 您的应用提供的 API 令牌 | |
Secret 版本 | 1 | 1 | 1 | 1 | 1 | 1 |
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_dev
或Project_2ee729d6-804d-4ece-84af-d5befa94abe8
。 - 如需查询独立于特定项目的数据,请将 Catalog 设置为 Devops。 如果目录名称为 Devops,您可以使用任何名称来代替 Devops。
架构
此属性用于指定要使用的架构,可用架构取决于指定的代码库。如需获取代码库 ID 和名称的列表,请针对 Repositories 表执行 SELECT
查询。
- 如果您在连接配置中将目录和架构设置为
INFORMATION
,则只能访问信息数据模型架构。其他项目目录或架构不会公开。 - 如果将目录设置为项目目录,您可以将架构设置为以下值之一:
Analytics
、Project
或某个代码库架构。 选择合适的架构后,您就可以查询特定仓库中的数据了。
如需查询 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
操作的示例,请参阅示例。
操作示例
示例 - 创建工作项
- 在
Configure connector task
对话框中,点击Actions
。 - 选择
CreateWorkItem
操作,然后点击完成。 - 在连接器任务的任务输入部分中,点击
connectorInputPayload
,然后在Default Value
字段中输入类似于以下内容的值:{ "Type": "Bug", "Value": "Googlecloud_Testing_Bug_M", "Op": "add", "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "Path": "/fields/System.Title" }
如果操作成功,
CreateWorkItem
任务的 connectorOutputPayload
响应形参将具有类似以下的值:
[{ "Success": "True" }]
如需创建各种实体(例如任务、史诗、用户故事、测试用例、功能和问题),您只需修改输入载荷中“Type”字段的值。
如需将类型设置为“史诗”,您可以设置 "Type": "Epic"
。同样,您可以将值更改为“类型”:“任务”“类型”:“用户故事”“类型”:“测试用例”“类型”:“功能”或“类型”:“问题”,以创建相应的实体。
示例 - 更新工作项
- 在
Configure connector task
对话框中,点击Actions
。 - 选择
UpdateWorkItem
操作,然后点击完成。 - 在连接器任务的任务输入部分中,点击
connectorInputPayload
,然后在Default Value
字段中输入类似于以下内容的值:{ "WorkItemId": "35", "Value": "Update Workitem", "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "Op": "replace", "Path": "/fields/System.Title" }
如果操作成功,UpdateWorkItem
任务的 connectorOutputPayload
响应形参将具有类似以下的值:
[{ "Success": "True" }]
示例 - 获取提交的拉取请求
- 在
Configure connector task
对话框中,点击Actions
。 - 选择
GetPullRequestCommits
操作,然后点击完成。 - 在连接器任务的任务输入部分中,点击
connectorInputPayload
,然后在Default Value
字段中输入类似于以下内容的值:{ "PullRequestId": "2", "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "RepositoryId": "e848b49e-704f-4df3-94ce-4f23176715b6" }
如果操作成功,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" } ]
示例 - 将更改推送到代码库
- 在
Configure connector task
对话框中,点击Actions
。 - 选择
PushChanges
操作,然后点击完成。 - 在连接器任务的任务输入部分中,点击
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 }" }
如果操作成功,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" } ]
示例 - 下载版本的日志
- 在
Configure connector task
对话框中,点击Actions
。 - 选择
DownloadReleaseLogs
操作,然后点击完成。 - 在连接器任务的任务输入部分中,点击
connectorInputPayload
,然后在Default Value
字段中输入类似于以下内容的值:{ "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "ReleaseId": 2 }
如果操作成功,DownloadReleaseLogs
任务的 connectorOutputPayload
响应形参将具有类似以下的值:
[ { "Status": "Success", "FileData": "{Base64encodedvalue}]
示例 - 下载测试结果/运行附件
- 在
Configure connector task
对话框中,点击Actions
。 - 选择
DownloadTestAttachment
操作,然后点击完成。 - 在连接器任务的任务输入部分中,点击
connectorInputPayload
,然后在Default Value
字段中输入类似于以下内容的值:{ "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "RunId": 50, "AttachmentId": "2" }
如果操作成功,DownloadTestAttachment
任务的 connectorOutputPayload
响应形参将具有类似以下的值:
[ { "Status": "Success", "FileData": "iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABlSURBVDhP7cxBCsAgDERR739pG/CnGJI0FopQ8O2cjNP6R85QbeNQU7wT1dkijaQ3vkZoWElaoTeJojW01cYh0jwfgiFBV/lEjOZtacijN/nLkOBHhIaVDgn+Wdycp6FXzlCl9wt0Y0cAzHo/zgAAAABJRU5ErkJggg==" } ]
示例 - 设置项目属性
- 在
Configure connector task
对话框中,点击Actions
。 - 选择
SetProjectProperties
操作,然后点击完成。 - 在连接器任务的任务输入部分中,点击
connectorInputPayload
,然后在Default Value
字段中输入类似于以下内容的值:{ "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "Op": "add", "Path": "/Alias", "Value": "Google CLoud Properties" }
如果操作成功,SetProjectProperties
任务的 connectorOutputPayload
响应形参将具有类似以下的值:
[ { "Status": "Success" } ]
示例 - 删除测试用例
- 在
Configure connector task
对话框中,点击Actions
。 - 选择
DeleteTestCase
操作,然后点击完成。 - 在连接器任务的任务输入部分中,点击
connectorInputPayload
,然后在Default Value
字段中输入类似于以下内容的值:{ "TestCaseId": 22255, "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc" }
如果操作成功,DeleteTestCase
任务的 connectorOutputPayload
响应形参将具有类似以下的值:
[ { "Status": "Success" } ]
示例 - 为项目运行流水线
- 在
Configure connector task
对话框中,点击Actions
。 - 选择
RunPipeline
操作,然后点击完成。 - 在连接器任务的任务输入部分中,点击
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 }" }
如果操作成功,
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" } ]
示例 - 更新拉取请求
- 在
Configure connector task
对话框中,点击Actions
。 - 选择
UpdatePullRequest
操作,然后点击完成。 - 在连接器任务的任务输入部分中,点击
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" }
如果操作成功,UpdatePullRequest
任务的 connectorOutputPayload
响应形参将具有类似以下的值:
[ { "Status": "Success", "PullRequestId": 26 } ]
示例 - 创建拉取请求
- 在
Configure connector task
对话框中,点击Actions
。 - 选择
CreatePullRequest
操作,然后点击完成。 - 在连接器任务的任务输入部分中,点击
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" }
如果操作成功,CreatePullRequest
任务的 connectorOutputPayload
响应形参将具有类似以下的值:
[ { "Status": "Success", "PullRequestId": 26 } ]
示例 - 获取拉取请求提交
- 在
Configure connector task
对话框中,点击Actions
。 - 选择
GetPullRequestCommits
操作,然后点击完成。 - 在连接器任务的任务输入部分中,点击
connectorInputPayload
,然后在Default Value
字段中输入类似于以下内容的值:{ "PullRequestId": "23", "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "RepositoryId": "e848b49e-704f-4df3-94ce-4f23176715b6" }
如果操作成功,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 标记
- 在
Configure connector task
对话框中,点击Actions
。 - 选择
AddBuildTag
操作,然后点击完成。 - 在连接器任务的任务输入部分中,点击
connectorInputPayload
,然后在Default Value
字段中输入类似于以下内容的值:{ "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc","BuildId": "14","Tag": "AddGooglecloud_Tag" }
如果操作成功,AddBuildTag
任务的 connectorOutputPayload
响应形参将具有类似以下的值:
[{ "Status": "Success" }]
示例 - 删除 build 标记
- 在
Configure connector task
对话框中,点击Actions
。 - 选择
DeleteBuildTag
操作,然后点击完成。 - 在连接器任务的任务输入部分中,点击
connectorInputPayload
,然后在Default Value
字段中输入类似于以下内容的值:{ "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc","BuildId": "14","Tag": "AddGooglecloud_Tag"}
如果操作成功,DeleteBuildTag
任务的 connectorOutputPayload
响应形参将具有类似以下的值:
[{ "Status": "Success" }]
示例 - 下载 build 报告
- 在
Configure connector task
对话框中,点击Actions
。 - 选择
DownloadBuildReports
操作,然后点击完成。 - 在连接器任务的任务输入部分中,点击
connectorInputPayload
,然后在Default Value
字段中输入类似于以下内容的值:{ "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "BuildId": 16 }
如果操作成功,DownloadBuildReports
任务的 connectorOutputPayload
响应形参将具有类似以下的值:
[ { "Status": "Success", "FileData": "Base64-format data" } ]
示例 - 下载 build 日志
- 在
Configure connector task
对话框中,点击Actions
。 - 选择
DownloadBuildLogs
操作,然后点击完成。 - 在连接器任务的任务输入部分中,点击
connectorInputPayload
,然后在Default Value
字段中输入类似于以下内容的值:{ "BuildId": 16, "LogId": 1, "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc" }
如果操作成功,DownloadBuildLogs
任务的 connectorOutputPayload
响应形参将具有类似以下的值:
[ { "Status": "Success", "FileData": "Base64-format data" } ]
示例 - 更新用户
- 在
Configure connector task
对话框中,点击Actions
。 - 选择
UpdateUser
操作,然后点击完成。 - 在连接器任务的任务输入部分中,点击
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 }}" }
如果操作成功,Update User
任务的 connectorOutputPayload
响应形参将具有类似以下的值:
[ { "Status": "Success" } ]
示例 - 克隆测试计划
- 在
Configure connector task
对话框中,点击Actions
。 - 选择
CloneTestPlan
操作,然后点击完成。 - 在连接器任务的任务输入部分中,点击
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 }
如果操作成功,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" } ]
示例 - 克隆测试套件
- 在
Configure connector task
对话框中,点击Actions
。 - 选择
CloneTestSuite
操作,然后点击完成。 - 在连接器任务的任务输入部分中,点击
connectorInputPayload
,然后在Default Value
字段中输入类似于以下内容的值:{ "SourceTestSuiteId": 18, "CopyAllSuites": true, "CopyAncestorHierarchy": true, "DestinationTestSuiteId": 2 }
如果操作成功,
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" } ]
示例 - 克隆测试用例
- 在
Configure connector task
对话框中,点击Actions
。 - 选择
CloneTestCase
操作,然后点击完成。 - 在连接器任务的任务输入部分中,点击
connectorInputPayload
,然后在Default Value
字段中输入类似于以下内容的值:{ "SourceTestPlanId": 1, "DestinationTestPlanId": 20, "SourceTestSuiteId": 2, "DestinationTestSuiteId": 21, "TestCaseId": 3 }
如果操作成功,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" } ]
示例 - 删除拉取请求附件
- 在
Configure connector task
对话框中,点击Actions
。 - 选择
DeletePullRequestAttachment
操作,然后点击完成。 - 在连接器任务的任务输入部分中,点击
connectorInputPayload
,然后在Default Value
字段中输入类似于以下内容的值:{ "ProjectId": "64058663-6419-4b11-8ef0-2ebf985949bc", "RepositoryId": "e848b49e-704f-4df3-94ce-4f23176715b6", "PullRequestId": 26, "FileName": "Company.jpg" }
此操作会返回 DeletePullRequestAttachment 的确认消息。如果操作成功,
DeletePullRequestAttachment
任务的 connectorOutputPayload
响应参数将具有类似于以下内容的值:
[ { "Status": "Success" } ]
实体操作示例
检索项目中的所有信息中心
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择Dashboards
。 - 选择
List
操作,然后点击完成。 - 连接器任务的任务输入部分中,您可以根据客户要求设置 filterClause。请查看下方的“注意”部分
filterClause 的值应始终以这种格式用单引号 (') 传递。
您可以使用 filterClause 根据任意列过滤特定的一组记录。
示例 - 使用信息中心的 ID 检索单个信息中心
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择Dashboards
。 - 选择
Get
操作,然后点击完成。 - 将实体 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 移除信息中心
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择Dashboards
。 - 选择
Delete
操作,然后点击完成。 - 将实体 ID 设置为“2f671e29-e48f-4d26-8869-859e154b5f20”,这是要传递的键。如需设置实体 ID,请在数据映射的数据映射器部分,点击打开数据映射编辑器,然后在输入值字段中输入
"2f671e29-e48f-4d26-8869-859e154b5f20"
,并选择 EntityId 作为局部变量。如果实体具有两个复合业务键或主键,您可以将 filterClause 设置为
id='2f671e29-e48f-4d26-8869-859e154b5f20'
,而不是指定 entityId。
示例 - 在项目中创建新信息中心
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择Dashboard
。 - 选择
Create
操作,然后点击完成。 - 在数据映射任务的数据映射器部分中,点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似于以下内容的值,并选择 EntityId/ConnectorInputPayload 作为局部变量。{ "Name": "TestingGooglecloud09", "TeamId": "9f2e4d3c-ed57-474f-bab1-3de5727e60a1" }
如果集成成功,连接器任务的
connectorOutputPayload
响应形参将具有类似以下的值:{ "Id": "a2402c49-6c17-43a9-bfc4-3701d07bcfee" }
示例 - 在项目中创建新的用户使用权
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择Users
。 - 选择
Create
操作,然后点击完成。 - 在数据映射任务的数据映射器部分中,点击
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" }
示例 - 在项目中创建新查询
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择Queries
。 - 选择
Create
操作,然后点击完成。 - 在数据映射任务的数据映射器部分中,点击
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" }
示例 - 在项目中创建新流水线
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择Pipelines
。 - 选择
Create
操作,然后点击完成。 - 在数据映射任务的数据映射器部分中,点击
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 }
示例 - 在项目中创建部署群组
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择DeploymentGroups
。 - 选择
Create
操作,然后点击完成。 - 在数据映射任务的数据映射器部分中,点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似于以下内容的值,并选择 EntityId/ConnectorInputPayload 作为局部变量。{ "Name": "Deployment group 2 Googlecloud" }
如果集成成功,连接器任务的
connectorOutputPayload
响应形参将具有类似以下的值:{ "Id": 139 }
示例 - 在项目中创建新的测试配置
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择TestPlan
。 - 选择
Create
操作,然后点击完成。 - 在数据映射任务的数据映射器部分中,点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似于以下内容的值,并选择 EntityId/ConnectorInputPayload 作为局部变量。{ "Name": "Googlecloud_TestPlan" }
如果集成成功,连接器任务的
connectorOutputPayload
响应形参将具有类似以下的值:{ "Id": 106 }
示例 - 在项目中创建测试套件
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择TestSuite
。 - 选择
Create
操作,然后点击完成。 - 在数据映射任务的数据映射器部分中,点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似于以下内容的值,并选择 EntityId/ConnectorInputPayload 作为局部变量。{ "Name": "Googlecloud_Suite", "PlanId": 106, "SuiteType": "staticTestSuite", "ParentSuiteId": 108, "InheritDefaultConfigurations": false }
如果集成成功,连接器任务的
connectorOutputPayload
响应形参将具有类似以下的值:{ "Id": 22264 }
示例 - 在项目中创建测试运行
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择TestRun
。 - 选择
Create
操作,然后点击完成。 - 在数据映射任务的数据映射器部分中,点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似于以下内容的值,并选择 EntityId/ConnectorInputPayload 作为局部变量。{ "Name": "TestRun_Googlecloud1"}
如果集成成功,连接器任务的
connectorOutputPayload
响应形参将具有类似以下的值:{ "Id": 46 }
示例 - 创建新项目
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择Projects
。 - 选择
Create
操作,然后点击完成。 - 在数据映射任务的数据映射器部分中,点击
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" }
对项目执行创建操作后生成的 ID 不是实际的项目 ID。
如需检索确切的项目详细信息,您需要执行 List 操作,并将项目名称作为过滤条件,例如 Name= 'Google Project Integration'。
示例 - 在项目中创建团队
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择Teams
。 - 选择
Create
操作,然后点击完成。 - 在数据映射任务的数据映射器部分中,点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似于以下内容的值,并选择 EntityId/ConnectorInputPayload 作为局部变量。{ "Name": "M new team"}
如果集成成功,连接器任务的
connectorOutputPayload
响应形参将具有类似以下的值:{ "Id": "5285fb98-a1bc-42e1-9668-3c2780061367" }
示例 - 在项目中创建环境
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择Environments
。 - 选择
Create
操作,然后点击完成。 - 在数据映射任务的数据映射器部分中,点击
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
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择Widgets
。 - 选择
Create
操作,然后点击完成。 - 在数据映射任务的数据映射器部分中,点击
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" }
示例 - 向代码库中的拉取请求添加审核者
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择PullRequestReviewers
。 - 选择
Create
操作,然后点击完成。 - 在数据映射任务的数据映射器部分中,点击
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 }
示例 - 在项目中创建变量组
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择VariableGroups
。 - 选择
Create
操作,然后点击完成。 - 在数据映射任务的数据映射器部分中,点击
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 定义
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择BuildDefinition
。 - 选择
Create
操作,然后点击完成。 - 在数据映射任务的数据映射器部分中,点击
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"}
示例 - 在项目中创建版本
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择Releases
。 - 选择
Create
操作,然后点击完成。 - 在数据映射任务的数据映射器部分中,点击
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" }
示例 - 更新项目中的团队名称或说明
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择Teams
。 - 选择
Update
操作,然后点击完成。 - 在数据映射任务的数据映射器部分,点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。{ "Name": "M new team update" }
- 在数据映射器中将实体 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" }
示例 - 更新项目中的查询
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择Queries
。 - 选择
Update
操作,然后点击完成。 - 在数据映射任务的数据映射器部分,点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。{ "Name": "Update Queries" }
- 在数据映射器中将实体 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" }
示例 - 更新项目中的信息中心
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择Dashboard
。 - 选择
Update
操作,然后点击完成。 - 在数据映射任务的数据映射器部分,点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。{ "Name": " update from googlecloud" }
- 在数据映射器中将实体 ID 设置为信息中心的实体。如需设置实体 ID,请点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似以下的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。您也可以将 filterClause 设置为
139
,而不是指定 entityId。运行此示例后,连接器任务的
connectorOutputPayload
输出变量中会返回类似于以下内容的响应:{ "Id": "139" }
示例 - 更新项目中的测试套件
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择TestSuite
。 - 选择
Update
操作,然后点击完成。 - 在数据映射任务的数据映射器部分,点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。{ "Name": "UPdated_Suite", "ParentSuiteId": 108 }
- 在数据映射器中将实体 ID 设置为 TestSuite 的实体。如需设置实体 ID,请点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。您也可以将 filterClause 设置为
22264
,而不是指定 entityId。运行此示例后,连接器任务的
connectorOutputPayload
输出变量中会返回类似于以下内容的响应:{ "Id": "22264" }
示例 - 更新项目中的部署组
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择DeploymentGroups
。 - 选择
Update
操作,然后点击完成。 - 在数据映射任务的数据映射器部分,点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。{ "Name": "Deployment" }
- 在数据映射器中将实体 ID 设置为 DeploymentGroups 的实体。如需设置实体 ID,请点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似以下的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。您也可以将 filterClause 设置为
138
,而不是指定 entityId。运行此示例后,连接器任务的
connectorOutputPayload
输出变量中会返回类似于以下内容的响应:{ "Id": "138" }
示例 - 更新项目中的测试计划
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择TestPlan
。 - 选择
Update
操作,然后点击完成。 - 在数据映射任务的数据映射器部分,点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。{ "Name": "TestPlan_Update" }
- 在数据映射器中将实体 ID 设置为 TestPlan 的实体。如需设置实体 ID,请点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。您也可以将 filterClause 设置为
104
,而不是指定 entityId。运行此示例后,连接器任务的
connectorOutputPayload
输出变量中会返回类似于以下内容的响应:{ "Id": "104" }
示例 - 更新项目中的测试运行
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择TestRuns
。 - 选择
Update
操作,然后点击完成。 - 在数据映射任务的数据映射器部分,点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。{ "Name": "Update Test Run", "Comment": "Google cloud has updated the test run use case." }
- 在数据映射器中将实体 ID 设置为 TestRuns 的实体如需设置实体 ID,请点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似以下的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。您也可以将 filterClause 设置为
46
,而不是指定 entityId。运行此示例后,连接器任务的
connectorOutputPayload
输出变量中会返回类似于以下内容的响应:{ "Id": "46" }
示例 - 更新项目
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择Projects
。 - 选择
Update
操作,然后点击完成。 - 在数据映射任务的数据映射器部分,点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。{ "Name": "Projects Update" }
- 在数据映射器中将实体 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" }
示例 - 更新项目中的环境
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择Environments
。 - 选择
Update
操作,然后点击完成。 - 在数据映射任务的数据映射器部分,点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。{ "Name": "Environment Update M", "Description": "Update environment " }
- 在数据映射器中将实体 ID 设置为环境的实体。如需设置实体 ID,请点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似以下的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。您也可以将 filterClause 设置为
{ "Id": "9" }
,而不是指定 entityId。运行此示例后,连接器任务的
connectorOutputPayload
输出变量中会返回类似于以下内容的响应:{ "Id": 9 }
示例 - 更新项目中的变量组
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择VariableGroups
。 - 选择
Update
操作,然后点击完成。 - 在数据映射任务的数据映射器部分,点击
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" }
- 在数据映射器中将实体 ID 设置为 VariableGroups 的实体。如需设置实体 ID,请点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似以下的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。您也可以将 filterClause 设置为
{ "Id": "12" }
,而不是指定 entityId。运行此示例后,连接器任务的
connectorOutputPayload
输出变量中会返回类似于以下内容的响应:{ "Id": 12 }
示例 - 更新项目中的 build 定义
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择BuildDefinition
。 - 选择
Update
操作,然后点击完成。 - 在数据映射任务的数据映射器部分,点击
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 }
- 在数据映射器中,将实体 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 }
示例 - 更新项目中的拉取请求审核者
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择PullRequestReviewers
。 - 选择
Update
操作,然后点击完成。 - 在数据映射任务的数据映射器部分,点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。{"isFlagged": true}
- 在 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}
示例 - 更新项目中的发布版本
- 在
Configure connector task
对话框中,点击Entities
。 - 从
Entity
列表中选择Releases
。 - 选择
Update
操作,然后点击完成。 - 在数据映射任务的数据映射器部分,点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。{ "Description": "Update Release Description googlecloud","Name": "Update release googlecloud"}
- 在数据映射器中,将实体 ID 设置为版本的实体。如需设置实体 ID,请点击
Open Data Mapping Editor
,然后在Input Value
字段中输入类似于以下内容的值,并将 EntityId/ConnectorInputPayload/FilterClause 选择为局部变量。您也可以将 filterClause 设置为
{"Id": 13}
,而不是指定 entityId。运行此示例后,连接器任务的
connectorOutputPayload
输出变量中会返回类似于以下内容的响应:{"Id": 13 }