首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Azure DevOps -在Git子模块中使用YAML模板

Azure DevOps -在Git子模块中使用YAML模板
EN

Stack Overflow用户
提问于 2019-08-22 16:33:08
回答 1查看 2K关注 0票数 4

所以我有11个项目的存储库,它们都是微服务。

我有一个名为DevOps的存储库,在该存储库中,必须在YAML构建中共享的所有内容都是使用Git子模块共享的。

由于某些原因,我似乎无法引用git模块中的yaml模板。

选项:

当我试图通过触发器或手动运行构建时,我会得到以下错误:

文件/DevOps/A/模板/A-test-template.yml未在存储库git/A分支参考/头/主版本db2884cc2d188b8e281f78e8b27e4fd74ce77d58.中找到,意外的步骤类型:'StepsTemplateReference‘

YAML:

代码语言:javascript
复制
steps:

# Run Unit Tests
- template: DevOps/A/Templates/A-test-template.yml

解决方案:

使用YAML:

代码语言:javascript
复制
resources:
  repositories:
    - repository: RepositoryAlias
      type: git
      name: "ProjectName/RepositoryName"

steps:
- template: DevOps/A/Templates/A-test-template.yml@RepositoryAlias
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-22 16:58:11

我认为这是行不通的,因为在构建实际启动之前必须计算步骤,并且在构建开始后要签出子模块。但是,老实说,您应该使用一种正确的方法(而不是子模块):

代码语言:javascript
复制
# Repo: Contoso/LinuxProduct
# File: azure-pipelines.yml
resources:
  repositories:
    - repository: templates
      type: github
      name: Contoso/BuildTemplates

jobs:
- template: common.yml@templates  # Template reference

所以把他们放在一个单独的回购和参考回购。

https://learn.microsoft.com/en-us/azure/devops/pipelines/process/templates?view=azure-devops#using-other-repositories

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57613676

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档