travis-ci如何回复github测试通过?

时间:2016-03-01 03:31:16

标签: github travis-ci

我试图了解travis-ci是如何工作的,首先我授权应用程序为拉取请求,推送等创建webhook,然后只要有拉取请求,travis就会收到通知。但它如何回复github测试通过?

2 个答案:

答案 0 :(得分:2)

正如官方GitHub's guide on building CI serversWorking with statuses部分告诉我们的那样,通过调用通过Octocat.rb gem获得的客户端句柄上的create_status函数来改变构建状态这样:

def process_pull_request(pull_request)
  @client.create_status(pull_request['base']['repo']['full_name'], pull_request['head']['sha'], 'pending')
  sleep 2 # do busy work...
  @client.create_status(pull_request['base']['repo']['full_name'], pull_request['head']['sha'], 'success')
  puts "Pull request processed!"
end

其中process_pull_request()是接收GitHub本身编辑的JSON有效负载PUSH的函数。

API documentation section专门用于直接通过API创建状态。

答案 1 :(得分:-3)

eightnoteight,

Travis回复GitHub说,测试是通过webhooks传递的,类似于在发出拉取请求或推送时创建通知的webhook。要让Travis CI知道要构建什么,你必须添加.travis.yml文件到您的存储库。该文件将包含您正在使用的语言,您拥有的gem版本和/或依赖项。 Travis CI根据您使用的语言版本测试您的项目,并在每次提交或推送后触发Travis CI构建,从而导致测试通过或失败。

**我已经从Travis CI

收集了大部分回复