我已经手动检查机器人计划,定期检查并轮询新提交(它在5分钟内工作)所有三个选项都正常工作,但我无法理解第四个选项“使用自定义触发器脚本提交”。
请任何人解释一下这第四个选项是如何工作的?它是否适用于每次提交的即时集成。
请检查以下链接: http://www.likelyanswer.com/30202671/How-Do-I-Create-A-Trigger-Script-For-Bot-On-Xcode-5-Ci%3F 这里提到1
答案 0 :(得分:7)
这是基于我自己的调查,在未来的版本中可能完全错误。
当选择了触发器脚本计划选项时,Xcode服务公开HTTP端点以执行立即集成:
POST / xcs / kick-commit-bots
参数:
存储库:存储库的URL,如机器人设置中所示。
branch:(可选)用于触发集成的分支的名称。如果指定,则仅集成配置为构建此分支的机器人。如果未指定,将集成指定存储库的所有机器人。
示例:
curl http://server.local/xcs/kick-commit-bots \
-d repository=ssh://server.local/git/example.git \
-d branch=master
要使用触发器脚本调度选项,您需要创建一个存储库挂钩,以便在收到新提交时触发此端点。 OS X Server在/Applications/Server.app/Contents/ServerRoot/usr/share/collabd/server/ruby/kick_build_bot.rb
中包含示例挂钩。对于通过Xcode服务创建的托管Git存储库,将自动为您创建使用此脚本的post-receive挂钩。
请注意,发送到/xcs/kick-commit-bots
的存储库URL必须与存储库URL匹配,如Web界面中bot的设置所示。对于托管存储库,似乎网址可能会发生变化 - 有时会使用ssh:
网址,有时会使用file:
网址。