从 GitLab 7.6 或更高版本开始,有一个新选项可以直接从 GitLab 项目使用 TeamCity。在设置中有这样的消息:
Teamcity 中的构建配置必须使用构建格式编号
%build.vcs.number% 您还需要配置对所有
分支以便构建合并请求,该设置位于 vsc 根目录中
高级设置。
我不确定这是如何运作的。假设我有一个存储库 Foo。
我已经在 TeamCity 上设置了一个构建,以使用分支规范来监听 Foo:+:refs/pull/*/merge
然后我在 gitlab 中将 Foo 分叉为 FooFork,进行更改,然后请求合并 FooFork -> Foo。
但是测试这个合并没有发生任何事情,这正是我期望 GitLab 所做的。如果我接受合并,则构建服务器将立即采取行动并构建两次(master
and /ref/master
).
我还设置了构建配置以准确使用: %build.vcs.number% 作为规定的构建号,但 gitlab 似乎没有给我有关构建结果的任何信息。
所以我真的有点困惑,不知道这个 GitLab -> TeamCity 集成到底应该做什么,以及我是否做错了。
我目前正在运行 GitLab 7.9 和 TeamCity 8.1.4
Update:
似乎版本 8 之前不支持此用例 -https://github.com/gitlabhq/gitlabhq/issues/7240 https://github.com/gitlabhq/gitlabhq/issues/7240
我正在运行 GitLab 8.0.2 和 TeamCity 9.1.1,并且能够在分支和合并请求上运行 CI 构建。
我通过将 VCS 触发器与分支规范 https://confluence.jetbrains.com/display/TCD9/Working+with+Feature+Branches#WorkingwithFeatureBranches-branchSpec +:refs/heads/(xyz*)
其中 xyz 是我们的票证系统前缀的字符串,因为所有活动分支都需要以我们的问题跟踪器中的条目命名。
我通过分支规范触发合并请求的构建+:refs/(merge-requests/*)
一切都按预期进行,让我们自动了解所有功能/错误分支和合并请求的状态。
感谢 Rob 的评论链接到合并请求规范上的 GitLab 8 发行说明条目。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)