提交 b6ba2263 编写于 作者: J Jingwen Owen Ou

Use octokit for Statuses API

上级 63c2342e
......@@ -61,7 +61,7 @@ func ciStatus(cmd *Command, args *Args) {
func fetchCiStatus(ref string) (state, targetURL, desc string, exitCode int, err error) {
gh := github.New()
status, err := gh.CiStatus(ref)
status, err := gh.CIStatus(ref)
if err != nil {
return
}
......
......@@ -118,18 +118,21 @@ func (gh *GitHub) Releases() ([]octokat.Release, error) {
return releases, nil
}
func (gh *GitHub) CiStatus(sha string) (*octokat.Status, error) {
client := gh.client()
statuses, err := client.Statuses(gh.repo(), sha, nil)
if err != nil {
return nil, err
func (gh *GitHub) CIStatus(sha string) (status *octokit.Status, err error) {
client := gh.octokit()
statusesService, err := client.Statuses(nil, octokit.M{"owner": gh.Project.Owner, "repo": gh.Project.Name, "ref": sha})
statuses, result := statusesService.GetAll()
if result.HasError() {
err = result.Err
return
}
if len(statuses) == 0 {
return nil, nil
if len(statuses) > 0 {
status = &statuses[0]
}
return &statuses[0], nil
return
}
func (gh *GitHub) ForkRepository(name, owner string, noRemote bool) (repo *octokit.Repository, err error) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册