aboutsummaryrefslogtreecommitdiff
path: root/vendor/github.com/xanzy/go-gitlab/jobs.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/xanzy/go-gitlab/jobs.go')
-rw-r--r--vendor/github.com/xanzy/go-gitlab/jobs.go39
1 files changed, 20 insertions, 19 deletions
diff --git a/vendor/github.com/xanzy/go-gitlab/jobs.go b/vendor/github.com/xanzy/go-gitlab/jobs.go
index e8b4f99..669f96d 100644
--- a/vendor/github.com/xanzy/go-gitlab/jobs.go
+++ b/vendor/github.com/xanzy/go-gitlab/jobs.go
@@ -24,12 +24,6 @@ import (
"time"
)
-// ListJobsOptions are options for two list apis
-type ListJobsOptions struct {
- ListOptions
- Scope []BuildState `url:"scope,omitempty" json:"scope,omitempty"`
-}
-
// JobsService handles communication with the ci builds related methods
// of the GitLab API.
//
@@ -44,6 +38,7 @@ type JobsService struct {
type Job struct {
Commit *Commit `json:"commit"`
CreatedAt *time.Time `json:"created_at"`
+ Coverage float64 `json:"coverage"`
ArtifactsFile struct {
Filename string `json:"filename"`
Size int `json:"size"`
@@ -66,6 +61,12 @@ type Job struct {
User *User `json:"user"`
}
+// ListJobsOptions are options for two list apis
+type ListJobsOptions struct {
+ ListOptions
+ Scope []BuildStateValue `url:"scope,omitempty" json:"scope,omitempty"`
+}
+
// ListProjectJobs gets a list of jobs in a project.
//
// The scope of jobs to show, one or array of: created, pending, running,
@@ -99,19 +100,19 @@ func (s *JobsService) ListProjectJobs(pid interface{}, opts *ListJobsOptions, op
//
// GitLab API docs:
// https://docs.gitlab.com/ce/api/jobs.html#list-pipeline-jobs
-func (s *JobsService) ListPipelineJobs(pid interface{}, pipelineID int, opts *ListJobsOptions, options ...OptionFunc) ([]Job, *Response, error) {
+func (s *JobsService) ListPipelineJobs(pid interface{}, pipelineID int, opts *ListJobsOptions, options ...OptionFunc) ([]*Job, *Response, error) {
project, err := parseID(pid)
if err != nil {
return nil, nil, err
}
- u := fmt.Sprintf("projects/%s/pipelines/%d/jobs", project, pipelineID)
+ u := fmt.Sprintf("projects/%s/pipelines/%d/jobs", url.QueryEscape(project), pipelineID)
req, err := s.client.NewRequest("GET", u, opts, options)
if err != nil {
return nil, nil, err
}
- var jobs []Job
+ var jobs []*Job
resp, err := s.client.Do(req, &jobs)
if err != nil {
return nil, resp, err
@@ -129,7 +130,7 @@ func (s *JobsService) GetJob(pid interface{}, jobID int, options ...OptionFunc)
if err != nil {
return nil, nil, err
}
- u := fmt.Sprintf("projects/%s/jobs/%d", project, jobID)
+ u := fmt.Sprintf("projects/%s/jobs/%d", url.QueryEscape(project), jobID)
req, err := s.client.NewRequest("GET", u, nil, options)
if err != nil {
@@ -154,7 +155,7 @@ func (s *JobsService) GetJobArtifacts(pid interface{}, jobID int, options ...Opt
if err != nil {
return nil, nil, err
}
- u := fmt.Sprintf("projects/%s/jobs/%d/artifacts", project, jobID)
+ u := fmt.Sprintf("projects/%s/jobs/%d/artifacts", url.QueryEscape(project), jobID)
req, err := s.client.NewRequest("GET", u, nil, options)
if err != nil {
@@ -180,7 +181,7 @@ func (s *JobsService) DownloadArtifactsFile(pid interface{}, refName string, job
if err != nil {
return nil, nil, err
}
- u := fmt.Sprintf("projects/%s/jobs/artifacts/%s/download?job=%s", project, refName, job)
+ u := fmt.Sprintf("projects/%s/jobs/artifacts/%s/download?job=%s", url.QueryEscape(project), refName, job)
req, err := s.client.NewRequest("GET", u, nil, options)
if err != nil {
@@ -205,7 +206,7 @@ func (s *JobsService) GetTraceFile(pid interface{}, jobID int, options ...Option
if err != nil {
return nil, nil, err
}
- u := fmt.Sprintf("projects/%s/jobs/%d/trace", project, jobID)
+ u := fmt.Sprintf("projects/%s/jobs/%d/trace", url.QueryEscape(project), jobID)
req, err := s.client.NewRequest("GET", u, nil, options)
if err != nil {
@@ -230,7 +231,7 @@ func (s *JobsService) CancelJob(pid interface{}, jobID int, options ...OptionFun
if err != nil {
return nil, nil, err
}
- u := fmt.Sprintf("projects/%s/jobs/%d/cancel", project, jobID)
+ u := fmt.Sprintf("projects/%s/jobs/%d/cancel", url.QueryEscape(project), jobID)
req, err := s.client.NewRequest("POST", u, nil, options)
if err != nil {
@@ -255,7 +256,7 @@ func (s *JobsService) RetryJob(pid interface{}, jobID int, options ...OptionFunc
if err != nil {
return nil, nil, err
}
- u := fmt.Sprintf("projects/%s/jobs/%d/retry", project, jobID)
+ u := fmt.Sprintf("projects/%s/jobs/%d/retry", url.QueryEscape(project), jobID)
req, err := s.client.NewRequest("POST", u, nil, options)
if err != nil {
@@ -281,7 +282,7 @@ func (s *JobsService) EraseJob(pid interface{}, jobID int, options ...OptionFunc
if err != nil {
return nil, nil, err
}
- u := fmt.Sprintf("projects/%s/jobs/%d/erase", project, jobID)
+ u := fmt.Sprintf("projects/%s/jobs/%d/erase", url.QueryEscape(project), jobID)
req, err := s.client.NewRequest("POST", u, nil, options)
if err != nil {
@@ -307,7 +308,7 @@ func (s *JobsService) KeepArtifacts(pid interface{}, jobID int, options ...Optio
if err != nil {
return nil, nil, err
}
- u := fmt.Sprintf("projects/%s/jobs/%d/artifacts/keep", project, jobID)
+ u := fmt.Sprintf("projects/%s/jobs/%d/artifacts/keep", url.QueryEscape(project), jobID)
req, err := s.client.NewRequest("POST", u, nil, options)
if err != nil {
@@ -323,7 +324,7 @@ func (s *JobsService) KeepArtifacts(pid interface{}, jobID int, options ...Optio
return job, resp, err
}
-// PlayJob triggers a nanual action to start a job.
+// PlayJob triggers a manual action to start a job.
//
// GitLab API docs:
// https://docs.gitlab.com/ce/api/jobs.html#play-a-job
@@ -332,7 +333,7 @@ func (s *JobsService) PlayJob(pid interface{}, jobID int, options ...OptionFunc)
if err != nil {
return nil, nil, err
}
- u := fmt.Sprintf("projects/%s/jobs/%d/play", project, jobID)
+ u := fmt.Sprintf("projects/%s/jobs/%d/play", url.QueryEscape(project), jobID)
req, err := s.client.NewRequest("POST", u, nil, options)
if err != nil {