Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022 |Azure DevOps Server 2020
这是分步指南,显示如何使用 Azure Pipelines 根据 Git 存储库构建示例应用程序。 本指南使用通过 YAML 管道编辑器配置的 YAML 管道。
有关 YAML 管道中不同部分的详细信息,请参阅 Azure Pipelines YAML 架构中的管道并自定义 YAML 管道。
如果要改用经典管道,请参阅定义经典管道。 有关使用 TFVC 的指导,请参阅生成 TFVC 存储库。
先决条件 - Azure DevOps
确保具有以下内容:
GitHub 帐户,可在其中创建存储库。 免费创建一个。
Azure DevOps 组织。 免费创建一个。 如果你的团队已创建帐户,请确保你是要使用的 Azure DevOps 项目的管理员。
能够在 Microsoft 托管的代理上运行管道。 要使用 Microsoft 托管代理,Azure DevOps 组织必须有权访问 Microsoft 托管并行作业。 可以购买并行作业,也可以请求免费授予。
创建第一个管道
获取 Java 示例代码
首先,请将以下存储库分支到 GitHub 帐户中。
https://github.com/MicrosoftDocs/pipelines-java
创建第一个 Java 管道
在 Azure DevOps 项目中,从左侧导航菜单中选择 “管道 ”。
如果此管道是项目中的第一个管道,请选择“ 新建管道 ”或 “创建管道 ”。
在 代码屏幕的“位置” 上,选择 “GitHub”。
可能会重定向到 GitHub 进行登录。 如果是这样,请输入 GitHub 凭据。
在 “选择存储库 ”屏幕上,选择 .NET 应用位于的存储库。
你可能会被重定向到 GitHub 来安装 Azure Pipelines 应用。 如果是,请选择批准并安装。
Azure Pipelines 将分析你的存储库,并建议使用 Maven 管道模板。
当新管道出现时,请查看 YAML 以了解其功能。 准备就绪后,选择“保存并运行”。
系统会提示将新的
azure-pipelines.yml文件提交到存储库。 对消息没有疑问后,再次选择“保存并运行”。如果你要观察管道的运行情况,请选择生成作业。
你刚刚创建并运行了我们为你自动创建的管道,因为你的代码看起来与 Maven 模板非常匹配。
现在你的存储库中已经有一个正常工作的 YAML 管道 (
azure-pipelines.yml),你可以对其进行自定义了!准备好更改管道后,请在“管道”页面中选择该管道,然后选择“编辑”来编辑 文件。
详细了解如何在管道中使用 Java。
查看和管理管道
可以通过从左侧菜单中选择“管道”转到管道登录页面来查看和管理管道。
在管道登录页面中,可以查看管道和管道运行、创建和导入管道、管理安全性,以及向下钻取到管道和运行详细信息。
选择“最近”可查看最近运行的管道(默认视图),选择“全部”可查看所有管道。
选择一个管道可管理该管道并查看其运行。 选择最后一个运行的生成号可查看该生成的结果,选择分支名称可查看该运行的分支,选择上下文菜单可运行管道并执行其他管理操作。
选择“运行”可查看所有管道运行。 可以选择性地筛选显示的运行。
选择一个管道运行可查看有关该运行的信息。
可以从上下文菜单中选择“保留”或“删除”某个运行。 有关保留运行的详细信息,请参阅生成和发布保留策略。
查看管道详细信息
在管道的详细信息页面中可以查看和管理该管道。
选择“编辑”可编辑管道。 有关详细信息,请参阅 YAML 管道编辑器。 还可通过在托管管道的存储库中直接修改 azure-pipelines.yml 文件来编辑管道。
查看管道运行详细信息
在管道运行摘要中,可以查看运行状态:正在运行和已完成。
在摘要窗格中,可以查看作业和阶段详细信息,下载项目,以及导航到链接的提交、测试结果和工作项。
作业和阶段
作业窗格显示阶段和作业的状态概述。 此窗格可能包含多个选项卡,具体取决于管道是同时具有阶段和作业,还是只有作业。 在此示例中,管道具有名称为“生成”和“部署”的两个阶段。 可以通过在“阶段”或“作业”窗格中选择作业,向下钻取到管道步骤。
选择某个作业可查看该作业的步骤。
在步骤视图中,可以查看每个步骤的状态和详细信息。 在“更多操作”中,可以切换时间戳或查看管道中所有步骤的原始日志。![]()
取消和重新运行管道
如果管道正在运行,可以通过选择“取消”来取消运行。 如果运行已完成,可以通过选择“重新运行”来重新运行管道。
管道运行更多操作菜单
在“更多操作”
菜单中,可以下载日志、添加标记、编辑管道、删除运行,以及为运行配置保留策略。
注意
你无法删除保留的运行。 如果未看到“删除”,请选择“停止保留运行”,然后删除该运行。 如果同时看到删除和查看保留版本,则配置的一个或多个保留策略仍适用于该运行。 选择查看保留版本,删除策略(仅删除所选运行的策略),然后删除该运行。
将状态锁屏提醒添加到存储库
许多开发人员喜欢通过在他们的存储库中显示状态徽章来表明他们保持高代码质量。
将状态锁屏提醒复制到剪贴板:
在 Azure Pipelines 中,转到“管道”页以查看管道列表。 选择在前面的部分中创建的管道。
选择
,然后选择“状态锁屏提醒”。选择“状态锁屏提醒”。
从示例 Markdown 部分复制示例 Markdown。
现在,在剪贴板中使用锁屏提醒 Markdown,请在 GitHub 中执行以下步骤:
转到文件列表并选择
Readme.md。 选择铅笔图标进行编辑。将状态锁屏提醒 Markdown 粘贴到文件开头。
提交对
main分支的更改。注意,状态锁屏提醒显示在存储库说明中。
为专用项目配置对锁屏提醒的匿名访问:
导航到页面左下角的“项目设置”
打开“管道”下的“设置”选项卡
在“常规”下切换“禁用对锁屏提醒的匿名访问”滑块
注意
即使在专用项目中,默认情况下也会启用匿名锁屏提醒访问。 启用匿名锁屏提醒访问后,组织外部的用户可以通过锁屏提醒状态 API 查询项目名称、分支名称、作业名称和生成状态等信息。
由于你刚刚更改了此存储库中的 Readme.md 文件,因此 Azure Pipelines 会根据存储库根目录处 azure-pipelines.yml 文件中的配置自动生成代码。 返回到 Azure Pipelines,可以看到出现了一个新的运行。 每次进行编辑时,Azure Pipelines 都会启动一个新运行。
我们将介绍如何在 Azure DevOps Server 2019 中使用经典编辑器创建输出“Hello World”的生成和发布。
转到“Azure Repos”。 (上一导航中的代码中心)
如果项目为空,则会显示一个屏幕,让你将代码添加到存储库。 选择底部选项以使用 文件初始化存储库:
转到“Azure Repos”。
添加文件。
在对话框中,为新文件命名并创建文件。
HelloWorld.ps1复制并粘贴此脚本。
Write-Host "Hello world"提交(保存)文件。
选择“Azure Pipelines”,系统会自动将你转至“生成”页。
创建新管道。
如果是新 Azure DevOps 用户,则会自动将你转到 YAML 管道创建体验。 要访问经典编辑器并完成本指南,必须关闭“新 YAML 管道创建体验”的“预览功能”:
确保源、项目、存储库和默认分支与创建脚本的位置匹配。
以“空作业”开始。
在左侧,选择“管道”并指定要使用的任何名称。 对于“代理池”,选择“托管 VS2017”。
在左侧,选择加号 ( + ) 以将任务添加到“作业 1”。 在右侧,选择“实用工具”类别,从列表中选择“PowerShell”任务,然后选择“添加”。
在左侧,选择新的“PowerShell”脚本任务。
对于“脚本路径”参数,请选择 按钮来浏览存储库,然后选择创建的脚本。
选择“保存和队列”,然后选择“保存”。
选择“任务”选项卡,选择加号 ( + ) 以将任务添加到“作业 1”。
选择“实用工具”类别,选择“发布生成工件”任务,然后选择“添加”。
发布路径:选择 按钮以进行浏览,然后选择创建的脚本。
项目名称:输入“
drop”。生成工件发布位置:选择“Azure Artifacts/TFS”。
选择“保存并排队”,然后选择“保存并排队”。
在对话框中,再次选择“保存并排队”。
这会在 Microsoft 托管代理上将新生成排队。
页面顶部显示了新生成的链接。
选择该链接可实时观察新生成。 分配代理后,你将开始看到生成的实时日志。 注意,PowerShell 脚本作为生成的一部分运行,并且会在控制台上显示“Hello world”。
转到生成摘要。 在生成的“生成工件”选项卡上,注意脚本作为生成工件发布。
现在可以看到更改的结果。 转到“Azure Pipelines”并选择“已排队”。 注意,在“已排队或正在运行”部分下,你提交的更改会自动触发生成。
转到“管道”选项卡,然后选择“发布”。
选择“操作”,创建一个新的管道。 如果已创建发布管道,请选择加号 ( + ),然后选择“创建发布管道”。
选择要以“空作业”开始的操作。
将阶段命名为“QA”。
在“生成工件”面板中,选择“+ 添加”,并指定“源(生成管道)”。 选择 添加 。
选择“闪电”符号以触发持续部署,然后在右侧启用“持续部署触发器”。
选择“任务”选项卡,然后选择“QA”阶段。
选择作业的加号 ( + ),将任务添加到作业。
在“添加任务”对话框中,选择“实用工具”,找到“PowerShell”任务,然后选择“添加”按钮。
在左侧,选择新的“PowerShell”脚本任务。
对于“脚本路径”参数,请选择 按钮来浏览生成工件,然后选择创建的脚本。
添加这些参数:
-greeter "$(Release.RequestedFor)" -trigger "$(Build.DefinitionName)"在“管道”选项卡上,选择“QA”阶段,然后选择“克隆”。
将克隆阶段重命名为“生产”。
将发布管道重命名为“Hello world”。
保存发布管道。
创建新发布。
显示“新建发布”时,选择“创建”。
打开创建的发布。
查看日志以获取有关发布的实时数据。
后续步骤
你已学习如何在 Azure 中创建第一个管道。 现在,请详细了解如何在所选语言中配置管道:
或者,你也可以继续自定义创建的管道。
要在容器中运行管道,请参阅容器作业。
要详细了解如何生成 GitHub 存储库,请参阅生成 GitHub 存储库。
要了解如何发布管道工件,请参阅发布管道工件。
要了解可在 YAML 管道中执行的其他操作,请参阅 YAML 架构参考。
清理
如果创建了任何测试管道,则在完成这些管道后,可以轻松将其删除。
要删除管道,请导航到该管道的摘要页,然后从页面右上角的“...”菜单中选择“删除”。 键入管道名称进行确认,然后选择“删除”。
FAQ
在哪里可以阅读有关 DevOps 和 CI/CD 的文章?
可以使用哪个版本控制系统?
准备好为应用使用 CI/CD 后,可以使用所选的版本控制系统:
客户端
服务
- Azure Pipelines
- Azure Repos Git、GitHub 和 Bitbucket Cloud 等 Git 服务提供商
- Subversion
如何复制管道?
如果管道具有要在其他管道中复制的模式,请克隆、导出或将其另存为模板。
克隆管道后,可以进行更改,然后保存管道。
导出管道后,可以从“所有管道”选项卡导入该管道。
创建模板后,你的团队成员可以使用该模板来遵循新管道中的模式。
提示
如果使用的是“新生成编辑器”,则自定义模板将显示在列表底部。
如何使用草稿?
如果你正在编辑生成管道,并且想要测试一些尚未准备好用于生产的更改,则可以将其保存为草稿。
如何删除管道?
要删除管道,请导航到该管道的摘要页,然后从页面右上角的“...”菜单中选择“删除”。 键入管道名称进行确认,然后选择“删除”。