在Azure Devops中运行管道时,如何包含来自其他仓库的文件夹?



我有一个名为repo a的repo并在这里创建了一个YAML管道但我在repo B中也有一些代码需要在这个管道中使用

在YAML中如何告诉REPO A中的管道使用REPO B中的文件/文件夹?

我是新手,所以你能保持简单吗?

resources:
repositories:
- repository: automation
type: git
name: MYORG/ automation
ref: develop
endpoint: YourEndpoint
steps:
- checkout: self
path: "s/Source" :  ***>>>>>> what should this be??***
- checkout: automation

ok直接放到我添加的html的顶部

> resources:
>       repositories:
>       - repository: automation
>         type: git
>         name: name of yourpoject/name of repo you want to use 
>         ref: whatever branch of that repo(under repository above) you want to use

然后! !在YAML的步骤下(如果您没有,您需要添加它!)

>    steps:
>         - checkout: self 
>         - checkout: your repository you want to use as above

如果你使用npm来运行一个任务,你也需要添加下面的命令,以避免得到任何文件未找到的错误!如果你没有添加下面的代码,一个常见的错误是:npm WARN saveError事件:没有这样的文件或目录,打开'/home/vsts/work/package.json

下面的代码放在-Task部分

>     >    npm install
>     >       displayName: 'a task using npm'
>     >       workingDirectory: '$(Build.SourcesDirectory)/your repository you  want to use as above

在YAML中插入代码时也要注意缩进,如果你没有正确地缩进,它会给你错误,直到它们消失

您应该检出YAML管道上的多个存储库。您可以定义一个新的资源存储库,并将此存储库与您的源(触发管道的源)一起签出。

resources:
repositories:
- repository: devops_sf
type: github
name: Organization/Repository
ref: master
endpoint: YourEndpoint
steps:
- checkout: self
path: "s/Source"
- checkout: devops_sf

那么您将能够访问

下的存储库
$(Pipeline.Workspace)/s/Repository
$(Pipeline.Workspace)/s/Source

Azure DevOps的多repo checkout:

https://learn.microsoft.com/en-us/azure/devops/pipelines/repos/multi-repo-checkout?view=azure-devops

相关内容

  • 没有找到相关文章

最新更新