使用 GitHub Actions 触发 Azure Pipelines 中的运行 - Sprint 161 更新

在 Azure DevOps 的 Sprint 161 更新中,我们很高兴地宣布 azure Pipelines GitHub Actions。 使用 GitHub Actions,可以直接从GitHub Actions工作流触发 Azure Pipelines 运行。 我们还在 Azure Pipelines 中添加了对多个存储库的支持,以便除了用于存储 YAML 管道的存储库外,还可以提取和签出其他存储库。

有关详细信息,请查看下面的 功能 列表。

Azure DevOps 中的新增功能

功能

常规:

Azure Pipelines:

Azure Repos:

常规

使用发布配置文件从部署中心部署适用于 Windows 的 Azure WebApps

现在,可以使用基于发布配置文件的身份验证从部署中心部署适用于 Windows 的 Azure WebApps。 如果有权使用发布配置文件部署到 Azure WebApp for Windows,则可以在部署中心工作流中使用此配置文件设置管道。

Azure Pipelines

在 Azure Pipelines 中签出多个存储库

管道通常依赖于多个存储库。 可以有不同的存储库,其中包含生成代码所需的源、工具、脚本或其他项。 以前,必须将这些存储库添加为子模块或手动脚本才能运行 git checkout。 现在,除了用于存储 YAML 管道的存储库之外,还可以提取和检查其他存储库。

例如,如果有一个名为 MyCode 的存储库,其中包含一个 YAML 管道,另一个名为 “工具”的存储库,则 YAML 管道将如下所示:

resources:
repositories:
  - repository: tools
    name: Tools
    type: git

steps:
- checkout: self
- checkout: tools
- script: dir $(Build.SourcesDirectory)

第三步将显示源目录中的 MyCodeTools 两个目录。

支持Azure Repos Git、GitHub 和 Bitbucket 云存储库。 有关详细信息,请参阅 多存储库签出

使用 GitHub Actions 触发 Azure Pipelines 中的运行

现在,我们已有 Azure Pipelines (Azure/pipelines) 的GitHub Actions。 可以使用 Azure/pipelines 触发 Azure Pipelines 中的运行,作为GitHub Actions工作流的一部分。

GitHub Actions使直接从 GitHub 生成、测试和部署代码变得容易。 还可以使用它来触发外部 CI/CD 工具和服务。 例如,可以使用 GitHub Actions 进行持续集成,使用 Azure Pipelines 进行持续交付,以利用审批、环境和与 Kubernetes 的深度集成等功能。

可以使用此操作在 Azure DevOps 中触发特定管道 (YAML 或经典发布管道) 。 GitHub Actions会将 Azure DevOps 组织的项目 URL、管道名称和个人访问令牌 (PAT) 作为输入。

在此处找到初学者模板。

更新了 ServiceNow 与 Azure Pipelines 的集成

适用于 ServiceNow 的 Azure Pipelines 应用有助于集成 Azure Pipelines 和 ServiceNow 更改管理。 通过此更新,可以与纽约版 ServiceNow 集成。 现在可以使用 OAuth 和基本身份验证在两个服务之间进行身份验证。 此外,现在可以配置高级成功条件,以便可以使用任何更改属性来确定入口结果。

将 VSTest 任务设置为在未运行最小测试数的情况下失败

VSTest 任务使用用户输入 (测试文件、筛选条件等) 以及特定于所用测试框架的测试适配器来发现和运行测试。 更改用户输入或测试适配器可能会导致未发现测试,并且只运行一部分预期测试的情况。 这可能会导致管道成功的情况,因为跳过测试,而不是因为代码质量足够高。 为了帮助避免这种情况,我们在 VSTest 任务中添加了一个新选项,该选项允许指定任务必须运行的最小测试数才能通过。

将 VSTest 任务设置为在未运行最小测试数的情况下失败。

Python 2.7 的 UCS-4 支持

Python 2.7 在大多数托管生成代理上可用。 以前,我们交付了使用 UCS-2 构建的 Python 2.7 (2-octet 通用字符集) 支持。 UCS-2 并不表示所有 Unicode 字符。 因此,我们将 Python 2.7 实现切换到了 UCS-4,以表示 Unicode 中可用的所有字符。 我们预计这不会影响你,因为大多数包都独立于 Python 中内置的 Unicode 支持。

在适用于 Slack 和 Microsoft Teams 的 Azure Pipelines 应用中创建批量订阅

适用于 SlackMicrosoft Teams 的 Azure Pipelines 应用的用户现在可以批量订阅项目中的所有管道。 可以使用筛选器来管理 Slack 或 Teams 频道中发布的内容。 也可以继续订阅单个管道。

松弛:

斜杠命令:/azpipelines subscribe [project url]

示例:/azpipelines subscribe https://dev.azure.com/myorg/myproject​

在适用于 Slack 的 Azure Pipelines 应用中创建批量订阅。

Microsoft Teams:

命令: @Azure 管道订阅 [项目 URL]

示例: @Azure 管道订阅 https://dev.azure.com/myorg/myproject​

在适用于 Microsoft Teams 的 Azure Pipelines 应用中创建批量订阅。

Azure Repos

在适用于 Slack 和 Microsoft Teams 的 Azure Repos 应用中创建批量订阅

适用于 Slack 和 Microsoft Teams 的 Azure Repos 应用的用户现在可以批量订阅项目中的所有 Git 存储库。 筛选器仍可用于管理 Slack 或 Teams 频道中发布的内容。 你仍然可以订阅单个 Git 或 TFVC 存储库。

松弛:

斜杠命令:/azrepos subscribe [project url]

示例:/azrepos subscribe https://dev.azure.com/myorg/myproject

在适用于 Slack 和 Microsoft Teams 的 Azure Repos 应用中创建批量订阅。

Microsoft Teams:

命令: @Azure Repos subscribe [project url]

示例: @Azure 存储库订阅 https://dev.azure.com/myorg/myproject​

后续步骤

注意

这些功能将在未来两到三周内推出。

前往 Azure DevOps 并查看。

如何提供反馈

我们很想听听你对这些功能的看法。 使用帮助菜单报告问题或提供建议。

提出建议

你还可以在 Stack Overflow 上获得社区的建议和问题的答案。

此致

亚伦·霍尔伯格