mirror of
https://github.com/woodpecker-ci/woodpecker.git
synced 2025-10-21 23:28:17 +00:00
more work on the command line utility
This commit is contained in:
52
client/commits.go
Normal file
52
client/commits.go
Normal file
@@ -0,0 +1,52 @@
|
||||
package client
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"io"
|
||||
|
||||
"github.com/drone/drone/shared/model"
|
||||
)
|
||||
|
||||
type CommitService struct {
|
||||
*Client
|
||||
}
|
||||
|
||||
// GET /v1/repos/{host}/{owner}/{name}/branch/{branch}/commit/{commit}
|
||||
func (s *CommitService) Get(host, owner, name, branch, sha string) (*model.Commit, error) {
|
||||
var path = fmt.Sprintf("/v1/repos/%s/%s/%s/branch/%s/commit/%s", host, owner, name, branch, sha)
|
||||
var commit = model.Commit{}
|
||||
var err = s.run("GET", path, nil, &commit)
|
||||
return &commit, err
|
||||
}
|
||||
|
||||
// GET /v1/repos/{host}/{owner}/{name}/branches/{branch}/commits/{commit}/console
|
||||
func (s *CommitService) GetOutput(host, owner, name, branch, sha string) (io.ReadCloser, error) {
|
||||
var path = fmt.Sprintf("/v1/repos/%s/%s/%s/branch/%s/commit/%s/console", host, owner, name, branch, sha)
|
||||
resp, err := s.do("GET", path)
|
||||
if err != nil {
|
||||
return nil, nil
|
||||
}
|
||||
return resp.Body, nil
|
||||
}
|
||||
|
||||
// POST /v1/repos/{host}/{owner}/{name}/branches/{branch}/commits/{commit}?action=rebuild
|
||||
func (s *CommitService) Rebuild(host, owner, name, branch, sha string) error {
|
||||
var path = fmt.Sprintf("/v1/repos/%s/%s/%s/branch/%s/commit/%s", host, owner, name, branch, sha)
|
||||
return s.run("POST", path, nil, nil)
|
||||
}
|
||||
|
||||
// GET /v1/repos/{host}/{owner}/{name}/feed
|
||||
func (s *CommitService) List(host, owner, name string) ([]*model.Commit, error) {
|
||||
var path = fmt.Sprintf("/v1/repos/%s/%s/%s/feed", host, owner, name)
|
||||
var list []*model.Commit
|
||||
var err = s.run("GET", path, nil, &list)
|
||||
return list, err
|
||||
}
|
||||
|
||||
// GET /v1/repos/{host}/{owner}/{name}/branch/{branch}
|
||||
func (s *CommitService) ListBranch(host, owner, name, branch string) ([]*model.Commit, error) {
|
||||
var path = fmt.Sprintf("/v1/repos/%s/%s/%s/branch/%s", host, owner, name, branch)
|
||||
var list []*model.Commit
|
||||
var err = s.run("GET", path, nil, &list)
|
||||
return list, err
|
||||
}
|
Reference in New Issue
Block a user