以下是我们的git repo结构
GitRepo
|
|-Provisioning
| |-Provisioning.sln
|
|-Source
| |-Deployment.sln
我们为供应和部署创建了两个独立的Teamcity项目。
在两个团队项目中,我们在“获取网址”中提供了相同的Git Repo网址。配置VCS Root时进行设置。现在,当我们在Source'中执行CheckIn时文件夹当Git Repo URL相同时,两个团队项目的构建都会被触发。
我们的期望是,如果我们在源'中执行CheckIn。文件夹只构建Teamcity.Application.Deployment应该触发。
有没有办法控制这种行为?
答案 0 :(得分:0)
是的,在'触发器'作为构建设置的一部分,您可以指定要监视的相对路径(语法可以通过包含或排除模式来完成)
答案 1 :(得分:0)
您可以使用VCS结帐规则处理此问题:
在您的构建中:Provisionning
设置结帐规则,如下所示:
+:Provisioning => Provisioning
在Deployment
版本中,您可以像这样设置结帐规则:
+:Source => Source
如果需要,您可以重新映射结帐文件夹以符合您的期望。
在我的情况下,当我需要这样做时,我更喜欢使用一些变量来定义结帐路径并将其修改为单点:
VCS结帐规则:+:%SrcFolder% => %SrcFolder%
BuildStep:msbuild %srcFolder%/MyApp.sln
所以我可以使用模板将构建配置共享给多个项目。