我的TeamCity CI有Jetbrains提供的插件GitHub Commit Hooks
来检测新的拉取请求并触发运行。我已经安装了这个插件,并点击此处进行配置:
之后,Web钩子在GitHub上创建,但地址是0000:8111
这是错误的。所以我更改为正确的DNS并重新发送请求。
它似乎工作,服务器返回202
与消息Scheduled checking for changes for 2 VCS roots. (Server time: 20180615T122359.142+0100)
但触发器无法正常工作。
一段时间后,另一个问题发生,服务器开始拒绝请求,GitHub返回:
No stored auth data (secret key) found for public key "72WE45221-19fe-433b-9265-66b2168EW6c". Seems hook created not by this TeamCity server. Reinstall hook via TeamCity UI.
环境:
我能做些什么来解决这个问题?我的DNS有问题吗?
编辑1:
现在我能够通过提交触发构建并解决了secret key
问题。但拉取请求不会触发CI。
要解决secret key
问题,您需要更改Server URL
上的Global Settings
。
有点解决方法,但您是否尝试使用VCS触发器来检测和构建拉取请求而不是提交挂钩?这与任何其他VCS签入触发器的工作方式相同,因此如果您当前的配置已经从Github检测到VCS更改,则设置应该更加简单。
使用以下模式+:refs/pull/*/head
自动引用Github上的Pull请求,因此使用VCS分支规范,您可以拥有一个专门用于构建pull请求的TeamCity构建项目。