可视化发布进度 - VSTS Sprint 135 更新

在 Visual Studio Team Services (VSTS) 的 Sprint 135 更新中,我们提供了一种可视化所有发布活动的新方法。 新的 发布进度视图 采用去年开发的 图形发布定义编辑器 ,并通过进度和状态将其亮化,以便你可以跟踪发布并在完整上下文中执行操作。

工作、代码、生成、发布,甚至还有一些与身份验证相关的其他功能。 阅读以下新功能,然后前往 VSTS 自行试用。

VSTS 中的新增功能

功能

工作

代码

生成和发布

身份验证

工作

导入和导出继承的进程

GitHub 上现在提供了一个用于帮助你导入和导出继承进程的新工具。 现在,你可以更轻松地与他人共享配置,并在进行更复杂的更改时获得信心,方法是在测试帐户中暂存这些更改,然后再将这些更改暂存到主帐户中。 我们决定开放源代码此工具,该工具是由我们的一个敏捷团队开发的,因为它作为如何实现一些较新的 API 的示例,并且我们希望了解如何扩展它以更好地集成到实际工作流中。 有关详细信息,请参阅 继承过程模型 文档。

自定义工作项中心中的列选项

与查询中的列选项一样,现在可在工作项中心使用,使组织最重要的工作项更加个性化。 如果要对多个列进行排序,这也启用多列排序。 有关详细信息,请参阅 工作项中心 文档。

工作项中心的列选项

代码

绕过拉取请求策略时收到通知

对于使用拉取请求 (PR) 和分支策略的团队,有时人们需要替代并绕过这些策略(例如,在午夜部署生产问题的修补程序时)。 信任开发人员执行正确的操作以及保守地使用替代功能十分重要。 同时,团队需要一种方法来验证是否在适当的情况下使用这些策略替代。 为了对此提供支持,我们添加了新的通知筛选器以允许用户和团队在每次绕过策略时都会收到电子邮件警报。 首先使用创建或更新拉取请求模板,从筛选器的列表中选择策略绕过。 选择已绕过策略作为值,每当 PR 完成并绕过策略时,你都会收到通知。

绕过策略通知

收藏拉取请求中的分支

查看拉取请求时,现在可以轻松地将源分支标记为收藏夹。 只需单击star即可将其添加到常用分支列表中。 然后,该分支将显示在拉取请求屏幕上的 Mine 下,从而节省搜索 所有 分支列表的时间。 有关详细信息,请参阅 管理分支 文档。

生成和发布

直观显示发布进度

重要

若要使用此功能,必须在个人资料或帐户上启用 “新建发布进度视图预览”功能

现已推出 新的发布进度视图 ,可让你实时更新部署进度和一键式访问更多详细信息。 新视图直观显示发布管道以便更容易了解发生的情况,并在发布的不同阶段展现相应的详细信息和操作。

发布管道视图

管道、发布详细信息和环境

管道视图显示发布项目以及部署位置的环境。 发布区域提供发布详细信息,如发布触发器、项目版本和标记。

环境采用可帮助了解其状态以及详细进度的方式进行建模。 在任何时候,都可以通过单击环境中的状态链接来获取日志。

发布项目和环境

预先部署和后期部署

如果为环境设置了预先部署或后期部署条件,则会在环境中通过审批和入口的存在进行指示。 审批和入口的进度也会显示在环境的状态中。 可以通过单击在环境右侧或左侧显示的环境条件图标来执行操作或查看进一步详细信息。

发布环境操作

入口的图形视图和查看日志的快速操作有助于使发布保持移动。

图形视图和快速操作。

提交和工作项

对于每个新发布,可以通过单击环境来单独查看每个环境的关联提交和工作项的列表。 如果列表太长,可使用筛选器查找感兴趣的提交或工作项。

发布环境提交和工作项

部署进度和日志

环境会显示正在进行的部署的实时更新,包括已完成和正在运行的阶段和任务数量。 单击环境状态可打开一个包含日志的视图(侧重于当前处于活动状态的内容)。

发布环境日志

此外,还可以单击日志以输入重点视图,该视图也将很快生成和测试视图。

发布环境日志详细信息

测试结果和扩展性

还会为每个环境展现测试执行的结果。 单击测试结果可打开一个包含测试详细信息的视图,其中包括来自参与处理的其他扩展的结果。

发布测试结果

现有扩展在此新视图进行工作,并且有新的扩展点可允许扩展表现甚至更多的环境信息。 有关详细信息,请参阅 贡献和扩展 文档。

在管道中运行内联或基于文件的 Python 脚本

新的 Python 脚本 任务简化了管道中 Python 脚本的运行。 该任务会从存储库中的 Python 文件 (.py) 运行脚本,你也可以在任务设置中手动输入脚本以保存为管道的一部分。 该任务将使用路径中的 Python 版本,也可以指定要使用的 Python 解释器的绝对路径。

在管道中使用 Anaconda 工具进行数据科学

Miniconda 现在在 Microsoft 托管的代理上可用。 使用 conda 包和虚拟环境管理器可以轻松安装、运行和升级复杂的数据科学和机器学习环境,如 SciPy 堆栈、scikit-learn、CNTK 和 TensorFlow。 它还将安装管道所需的 Python 版本。

新的内置 Conda 环境 任务还有助于创建 conda 环境。 它会为后续管道步骤激活环境,安装包依赖项,将 conda 添加到路径,并选择性地将代理升级到最新版本的 conda。

使用多个无代理任务简化定义

无代理阶段中的任务由服务器进行安排并在服务器上执行。 无代理阶段不需要代理或任何目标计算机。 与代理阶段不同,只能将一个任务添加到定义中的每个无代理阶段。 这意味着在过程中存在多个无代理任务时必须添加多个阶段,从而使定义十分庞大。 我们放宽了此限制,使你可以在无代理阶段中维护多个任务。 相同阶段中的任务会按顺序执行,如同针对代理阶段一样。 有关详细信息,请参阅 服务器阶段 文档。

管理对自承载并发 CI/CD 作业的限制

重要

如果使用自承载 CI/CD,检查并发限制并提前计划,以避免意外的生成和发布等待时间。

VSTS 中 CI/CD 的定价模型基于自承载 (专用) 或 Microsoft 托管代理上的并发作业数。 每个 VSTS 帐户都有一定的并发免费配额。 除此之外,还可以通过Visual Studio Enterprise订阅或 Visual Studio Marketplace 获取其他并发。

在过去的几个月里,我们在重新设计了服务部分以解决客户报告的问题时,禁用了你在自承载代理上运行的作业的并发检查。 因此,你能够同时运行自承载代理允许的任意数量的作业。

从 6 月开始,我们将逐步重新启用自承载作业的并发检查。 因此,如果这些槽被其他正在运行的作业占用,则生成和部署可能会在队列中等待更长时间。 在等待其他作业完成时,生成或发布中的日志页将指示这一点。

可以在 Team Services 中的 CI/CD 并发作业 文档中了解有关并发限制的详细信息。 可以在 VSTS 中检查并发限制,方法是转到“帐户设置”->“生成和发布”->“资源限制”。

简化从 Azure 中的代理 VM 到 Azure 资源管理器 的身份验证

有多种方法可以运行生成和发布代理。 在 Azure 中自行运行它们会变得更简单、更安全。 现在,可以使用 Azure Active Directory (Azure AD) 中的 Azure 托管服务标识配置基于 Azure 虚拟机 (VM) 的代理。 通过为 Azure VM 提供分配的标识,可以使用其服务主体信息向 VM 授予对支持 Azure AD 的任何 Azure 资源(例如密钥保管库)的访问权限,而不是在 VSTS 中为终结点保留凭据。

例如,如果代码需要调用 Azure 资源管理器,则只需使用 Azure AD 中的 Role-Based 访问控制 (RBAC) 为 VM 的服务主体分配适当的角色。 有关详细信息,请参阅 生成和发布代理 以及 Azure 托管服务标识 文档。

“添加 Azure 资源管理器服务终结点”对话框

通知

使用备用身份验证通知保护用户帐户

为用户帐户设置备用身份验证后,你现在将收到确认更改的通知。 这有助于双重检查你已正确进行更改,但它也可以作为一个早期信号,表明如果你未进行更改,你的用户帐户可能已遭到入侵。 在这种情况下,可以采取措施重新控制用户帐户,并删除任何可疑的备用身份验证配置。 有 3 种发送通知的方案:

  1. 创建个人访问令牌 (PAT)
  2. 注册 SSH 密钥
  3. 启用基本身份验证

有关详细信息,请参阅 身份验证 文档。

VSTS PAT 添加了电子邮件

如何提供反馈

我们很想听听你对这些功能的看法。 如果你对希望我们确定优先级的事情有想法,请通过反馈菜单报告问题或提供建议。

反馈菜单

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

此致

杰米酷