是否可以创建单个YAML文件以在我的存储库中构建多个项目?
我有一个包含12个解决方案的仓库,每个解决方案中至少包含6个项目。存储库非常复杂,没有解释为什么它是这样开发的,每个解决方案都是对更大产品的依赖。
是否可以使用单个YAML文件构建所有这些文件,而不是为每个项目创建构建管道?它们需要以某种顺序构建,因为它们彼此相互依赖。
在我们的本地TeamCity环境中,我们利用.msbuild文件来执行此操作,但我无法在Azure DevOps中找到一种方法来执行此操作
更好的问题是为什么?如果你设法用if或类似的东西来做这件事,你的yaml文件会很大而且不可维护。
为什么不在每个构建中使用单个文件?你可以让很多人都针对不同的文件...
如果您的建筑师很生气,您可以使用以下内容:
- ${{ if eq(Build.DefinitionName, 'something') }}:
- task: something
xxx
你在文件中有几个,每个解决方案一个。但这是一个非常糟糕的方法。
是的,您可以使用YAML方法进行构建。但是YAML脚本将是巨大的并且难以理解依赖性。如果您是系统新手,可以随时使用Designer方法并拉出系统生成的YAML。这是YAML schema参考,可能会帮助你!