[英]YAML for Azure Pipeline for MonoRepo code on a self-hosted agent
我是 Azure Devops 的第一次用户,我需要为托管在 Azure 存储库上的单一存储库项目创建 CI/CD 流程。 这是一个简短的描述
回购协议
LinuxProject
FirmwareProject
TestProject
我有一个自托管的 Azure 代理 (RepoABuild),其中安装了我想在其上构建这些项目的所有工具。
LinuxProject YAML 文件的要求是
这里的任何人都可以帮助我解决这个要求或指出任何例子吗? 我将衷心感谢您的帮助
您可以按照以下步骤为 LinuxProject 创建 yaml 管道:
1,创建一个 yaml 文件并提交到您的 azure 存储库(例如 LinuxProject-pipeline.yml)。
2,从您的 azure 项目门户创建 yaml 管道。
登录到您的 Azure DevOps 组织并导航到您的项目。
在您的项目中,导航到Pipelines页面。 然后选择创建新管道的操作。
首先选择Azure Repos Git作为源代码的位置,从而完成向导的步骤。
完成向导的步骤并选择现有的 Azure 管道 Yaml 文件。 和 select 文件
LinuxProject-pipeline.yml
在提示 window 的第一步创建。
3、在LinuxProject-pipeline.yml文件中添加以下内容。
trigger:
paths:
include:
- LinuxProject/*
pool: your-self-hosted-agent-pool
steps:
- bash: |
cd RepoA/LinuxProject
source opt/lib/linux/settings.sh
make images
- task: ArchiveFiles@2
inputs:
rootFolderOrFile: $(Build.SourcesDirectory)/LinuxProject/Build
archiveFile: $(Build.ArtifactStagingDirectory)/LinuxProject.zip
在上面的 yaml 文件中,触发器定义了一个路径过滤器,该过滤器使管道仅在文件夹 LinuxProject 发生更改时触发。 有关触发器的更多信息,请参见此处
pool ,将其值定义为您的自托管代理(RepoABuild)所在的代理池的名称。 (如果您在代理池中有多个自托管代理,请检查此线程以使用需求)
添加bash任务运行bash命令
添加ArchiveFiles任务以存档您的构建结果。
根据您的项目,您可能需要稍微更改 yaml 文件。 您可以参考以下步骤为其他两个项目创建管道。
请查看入门文档以开始使用。
以下是关键的管道基本概念。
这是 Yaml 架构参考。
以下是您可以直接在管道中使用的预定义变量(例如,上述存档文件任务中的 $(Build.ArtifactStagingDirectory) 是指代理机器中的文件夹c:\agent_work\1\a
)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.