aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/github.com/xanzy
diff options
context:
space:
mode:
author6543 <6543@obermui.de>2021-01-28 17:56:38 +0100
committerGitHub <noreply@github.com>2021-01-28 17:56:38 +0100
commitd1353e1f7c9bf648cd72bd9731b4f843b0dc9a86 (patch)
treec41437643185d16ab257cf9856a3e1ae8a835112 /vendor/github.com/xanzy
parente45bf12a34d04b18f09663f179fb58aca9ffa192 (diff)
downloadgitea-d1353e1f7c9bf648cd72bd9731b4f843b0dc9a86.tar.gz
gitea-d1353e1f7c9bf648cd72bd9731b4f843b0dc9a86.zip
Vendor Update (#14496)
* update code.gitea.io/sdk/gitea v0.13.1 -> v0.13.2 * update github.com/go-swagger/go-swagger v0.25.0 -> v0.26.0 * update github.com/google/uuid v1.1.2 -> v1.2.0 * update github.com/klauspost/compress v1.11.3 -> v1.11.7 * update github.com/lib/pq 083382b7e6fc -> v1.9.0 * update github.com/markbates/goth v1.65.0 -> v1.66.1 * update github.com/mattn/go-sqlite3 v1.14.4 -> v1.14.6 * update github.com/mgechev/revive 246eac737dc7 -> v1.0.3 * update github.com/minio/minio-go/v7 v7.0.6 -> v7.0.7 * update github.com/niklasfasching/go-org v1.3.2 -> v1.4.0 * update github.com/olivere/elastic/v7 v7.0.21 -> v7.0.22 * update github.com/pquerna/otp v1.2.0 -> v1.3.0 * update github.com/xanzy/go-gitlab v0.39.0 -> v0.42.0 * update github.com/yuin/goldmark v1.2.1 -> v1.3.1
Diffstat (limited to 'vendor/github.com/xanzy')
-rw-r--r--vendor/github.com/xanzy/go-gitlab/.golangci.yml59
-rw-r--r--vendor/github.com/xanzy/go-gitlab/.travis.yml24
-rw-r--r--vendor/github.com/xanzy/go-gitlab/applications.go3
-rw-r--r--vendor/github.com/xanzy/go-gitlab/commits.go23
-rw-r--r--vendor/github.com/xanzy/go-gitlab/deployments.go11
-rw-r--r--vendor/github.com/xanzy/go-gitlab/event_parsing.go7
-rw-r--r--vendor/github.com/xanzy/go-gitlab/event_webhook_types.go133
-rw-r--r--vendor/github.com/xanzy/go-gitlab/events.go1
-rw-r--r--vendor/github.com/xanzy/go-gitlab/gitlab.go5
-rw-r--r--vendor/github.com/xanzy/go-gitlab/group_hooks.go3
-rw-r--r--vendor/github.com/xanzy/go-gitlab/group_milestones.go4
-rw-r--r--vendor/github.com/xanzy/go-gitlab/groups.go30
-rw-r--r--vendor/github.com/xanzy/go-gitlab/issue_links.go2
-rw-r--r--vendor/github.com/xanzy/go-gitlab/issues.go1
-rw-r--r--vendor/github.com/xanzy/go-gitlab/jobs.go70
-rw-r--r--vendor/github.com/xanzy/go-gitlab/notes.go35
-rw-r--r--vendor/github.com/xanzy/go-gitlab/pipelines.go19
-rw-r--r--vendor/github.com/xanzy/go-gitlab/project_mirror.go1
-rw-r--r--vendor/github.com/xanzy/go-gitlab/projects.go9
-rw-r--r--vendor/github.com/xanzy/go-gitlab/releases.go8
-rw-r--r--vendor/github.com/xanzy/go-gitlab/repository_files.go2
-rw-r--r--vendor/github.com/xanzy/go-gitlab/runners.go47
-rw-r--r--vendor/github.com/xanzy/go-gitlab/services.go1
-rw-r--r--vendor/github.com/xanzy/go-gitlab/users.go89
-rw-r--r--vendor/github.com/xanzy/go-gitlab/validate.go80
25 files changed, 519 insertions, 148 deletions
diff --git a/vendor/github.com/xanzy/go-gitlab/.golangci.yml b/vendor/github.com/xanzy/go-gitlab/.golangci.yml
new file mode 100644
index 0000000000..2d4daeb22e
--- /dev/null
+++ b/vendor/github.com/xanzy/go-gitlab/.golangci.yml
@@ -0,0 +1,59 @@
+# This file contains all available configuration options
+# with their default values.
+
+# Options for analysis running
+run:
+ concurrency: 4
+ timeout: 10m
+ issues-exit-code: 1
+ # Include test files or not, default is true
+ tests: true
+
+# Output configuration options
+output:
+ format: line-number
+
+# All available settings of specific linters
+linters-settings:
+ misspell:
+ locale: US
+ ignore-words:
+ - noteable
+ unused:
+ # Treat code as a program (not a library) and report unused exported identifiers
+ check-exported: false
+
+linters:
+ enable:
+ - asciicheck
+ - deadcode
+ - dogsled
+ - errorlint
+ - exportloopref
+ - goconst
+ - golint
+ - gosimple
+ - govet
+ - ineffassign
+ - megacheck
+ - misspell
+ - nakedret
+ - nolintlint
+ - staticcheck
+ - structcheck
+ - typecheck
+ - unconvert
+ - unused
+ - varcheck
+ - whitespace
+ disable:
+ - errcheck
+ disable-all: false
+ fast: false
+
+issues:
+ # Maximum issues count per one linter (set to 0 to disable)
+ max-issues-per-linter: 0
+
+ # Maximum count of issues with the same text (set to 0 to disable)
+ max-same-issues: 0
diff --git a/vendor/github.com/xanzy/go-gitlab/.travis.yml b/vendor/github.com/xanzy/go-gitlab/.travis.yml
index 79772fc509..5e422eb8df 100644
--- a/vendor/github.com/xanzy/go-gitlab/.travis.yml
+++ b/vendor/github.com/xanzy/go-gitlab/.travis.yml
@@ -1,27 +1,21 @@
language: go
+
arch:
- - amd64
- - ppc64le
+ - amd64
+ - ppc64le
go:
- 1.13.x
- 1.14.x
+ - 1.x
- master
-stages:
- - lint
- - test
+before_install:
+ - curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/v1.35.0/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.35.0
-jobs:
- include:
- - stage: lint
- script:
- - go get golang.org/x/lint/golint
- - golint -set_exit_status
- - go vet -v
- - stage: test
- script:
- - go test -v
+script:
+ - golangci-lint run
+ - go test -v
matrix:
allow_failures:
diff --git a/vendor/github.com/xanzy/go-gitlab/applications.go b/vendor/github.com/xanzy/go-gitlab/applications.go
index 1436ed011c..496f7a810d 100644
--- a/vendor/github.com/xanzy/go-gitlab/applications.go
+++ b/vendor/github.com/xanzy/go-gitlab/applications.go
@@ -26,6 +26,7 @@ type ApplicationsService struct {
client *Client
}
+// Application represents a GitLab application
type Application struct {
ID int `json:"id"`
ApplicationID string `json:"application_id"`
@@ -64,6 +65,8 @@ func (s *ApplicationsService) CreateApplication(opt *CreateApplicationOptions, o
return a, resp, err
}
+// ListApplicationsOptions represents the available
+// ListApplications() options.
type ListApplicationsOptions ListOptions
// ListApplications get a list of administrables applications by the authenticated user
diff --git a/vendor/github.com/xanzy/go-gitlab/commits.go b/vendor/github.com/xanzy/go-gitlab/commits.go
index 36b355b7fb..1a89f0ed41 100644
--- a/vendor/github.com/xanzy/go-gitlab/commits.go
+++ b/vendor/github.com/xanzy/go-gitlab/commits.go
@@ -389,17 +389,18 @@ type GetCommitStatusesOptions struct {
//
// GitLab API docs: https://docs.gitlab.com/ce/api/commits.html#get-the-status-of-a-commit
type CommitStatus struct {
- ID int `json:"id"`
- SHA string `json:"sha"`
- Ref string `json:"ref"`
- Status string `json:"status"`
- Name string `json:"name"`
- TargetURL string `json:"target_url"`
- Description string `json:"description"`
- CreatedAt *time.Time `json:"created_at"`
- StartedAt *time.Time `json:"started_at"`
- FinishedAt *time.Time `json:"finished_at"`
- Author Author `json:"author"`
+ ID int `json:"id"`
+ SHA string `json:"sha"`
+ Ref string `json:"ref"`
+ Status string `json:"status"`
+ CreatedAt *time.Time `json:"created_at"`
+ StartedAt *time.Time `json:"started_at"`
+ FinishedAt *time.Time `json:"finished_at"`
+ Name string `json:"name"`
+ AllowFailure bool `json:"allow_failure"`
+ Author Author `json:"author"`
+ Description string `json:"description"`
+ TargetURL string `json:"target_url"`
}
// GetCommitStatuses gets the statuses of a commit in a project.
diff --git a/vendor/github.com/xanzy/go-gitlab/deployments.go b/vendor/github.com/xanzy/go-gitlab/deployments.go
index 2855f91460..c510266a33 100644
--- a/vendor/github.com/xanzy/go-gitlab/deployments.go
+++ b/vendor/github.com/xanzy/go-gitlab/deployments.go
@@ -34,6 +34,7 @@ type Deployment struct {
IID int `json:"iid"`
Ref string `json:"ref"`
SHA string `json:"sha"`
+ Status string `json:"status"`
CreatedAt *time.Time `json:"created_at"`
UpdatedAt *time.Time `json:"updated_at"`
User *ProjectUser `json:"user"`
@@ -53,10 +54,12 @@ type Deployment struct {
User *User `json:"user"`
Commit *Commit `json:"commit"`
Pipeline struct {
- ID int `json:"id"`
- SHA string `json:"sha"`
- Ref string `json:"ref"`
- Status string `json:"status"`
+ ID int `json:"id"`
+ SHA string `json:"sha"`
+ Ref string `json:"ref"`
+ Status string `json:"status"`
+ CreatedAt *time.Time `json:"created_at"`
+ UpdatedAt *time.Time `json:"updated_at"`
} `json:"pipeline"`
Runner *Runner `json:"runner"`
} `json:"deployable"`
diff --git a/vendor/github.com/xanzy/go-gitlab/event_parsing.go b/vendor/github.com/xanzy/go-gitlab/event_parsing.go
index a09b356c11..675d6816bd 100644
--- a/vendor/github.com/xanzy/go-gitlab/event_parsing.go
+++ b/vendor/github.com/xanzy/go-gitlab/event_parsing.go
@@ -12,6 +12,7 @@ type EventType string
// List of available event types.
const (
EventTypeBuild EventType = "Build Hook"
+ EventTypeDeployment EventType = "Deployment Hook"
EventTypeIssue EventType = "Issue Hook"
EventConfidentialIssue EventType = "Confidential Issue Hook"
EventTypeJob EventType = "Job Hook"
@@ -140,7 +141,7 @@ func ParseSystemhook(payload []byte) (event interface{}, err error) {
event = &UserTeamSystemEvent{}
default:
switch e.ObjectKind {
- case "merge_request":
+ case string(MergeRequestEventTargetType):
event = &MergeEvent{}
default:
return nil, fmt.Errorf("unexpected system hook type %s", e.EventName)
@@ -183,6 +184,8 @@ func ParseWebhook(eventType EventType, payload []byte) (event interface{}, err e
switch eventType {
case EventTypeBuild:
event = &BuildEvent{}
+ case EventTypeDeployment:
+ event = &DeploymentEvent{}
case EventTypeIssue, EventConfidentialIssue:
event = &IssueEvent{}
case EventTypeJob:
@@ -204,7 +207,7 @@ func ParseWebhook(eventType EventType, payload []byte) (event interface{}, err e
return nil, err
}
- if note.ObjectKind != "note" {
+ if note.ObjectKind != string(NoteEventTargetType) {
return nil, fmt.Errorf("unexpected object kind %s", note.ObjectKind)
}
diff --git a/vendor/github.com/xanzy/go-gitlab/event_webhook_types.go b/vendor/github.com/xanzy/go-gitlab/event_webhook_types.go
index d41379a4f3..3ac08ca5f6 100644
--- a/vendor/github.com/xanzy/go-gitlab/event_webhook_types.go
+++ b/vendor/github.com/xanzy/go-gitlab/event_webhook_types.go
@@ -175,10 +175,18 @@ type IssueEvent struct {
} `json:"assignees"`
Labels []Label `json:"labels"`
Changes struct {
+ Description struct {
+ Previous string `json:"previous"`
+ Current string `json:"current"`
+ } `json:"description"`
Labels struct {
Previous []Label `json:"previous"`
Current []Label `json:"current"`
} `json:"labels"`
+ Title struct {
+ Previous string `json:"previous"`
+ Current string `json:"current"`
+ } `json:"title"`
UpdatedByID struct {
Previous int `json:"previous"`
Current int `json:"current"`
@@ -192,23 +200,24 @@ type IssueEvent struct {
// TODO: link to docs instead of src once they are published.
// https://gitlab.com/gitlab-org/gitlab-ce/blob/master/lib/gitlab/data_builder/build.rb
type JobEvent struct {
- ObjectKind string `json:"object_kind"`
- Ref string `json:"ref"`
- Tag bool `json:"tag"`
- BeforeSHA string `json:"before_sha"`
- SHA string `json:"sha"`
- BuildID int `json:"build_id"`
- BuildName string `json:"build_name"`
- BuildStage string `json:"build_stage"`
- BuildStatus string `json:"build_status"`
- BuildStartedAt string `json:"build_started_at"`
- BuildFinishedAt string `json:"build_finished_at"`
- BuildDuration float64 `json:"build_duration"`
- BuildAllowFailure bool `json:"build_allow_failure"`
- PipelineID int `json:"pipeline_id"`
- ProjectID int `json:"project_id"`
- ProjectName string `json:"project_name"`
- User struct {
+ ObjectKind string `json:"object_kind"`
+ Ref string `json:"ref"`
+ Tag bool `json:"tag"`
+ BeforeSHA string `json:"before_sha"`
+ SHA string `json:"sha"`
+ BuildID int `json:"build_id"`
+ BuildName string `json:"build_name"`
+ BuildStage string `json:"build_stage"`
+ BuildStatus string `json:"build_status"`
+ BuildStartedAt string `json:"build_started_at"`
+ BuildFinishedAt string `json:"build_finished_at"`
+ BuildDuration float64 `json:"build_duration"`
+ BuildAllowFailure bool `json:"build_allow_failure"`
+ BuildFailureReason string `json:"build_failure_reason"`
+ PipelineID int `json:"pipeline_id"`
+ ProjectID int `json:"project_id"`
+ ProjectName string `json:"project_name"`
+ User struct {
ID int `json:"id"`
Name string `json:"name"`
Email string `json:"email"`
@@ -226,6 +235,12 @@ type JobEvent struct {
FinishedAt string `json:"finished_at"`
} `json:"commit"`
Repository *Repository `json:"repository"`
+ Runner struct {
+ ID int `json:"id"`
+ Active bool `json:"active"`
+ Shared bool `json:"is_shared"`
+ Description string `json:"description"`
+ } `json:"runner"`
}
// CommitCommentEvent represents a comment on a commit event.
@@ -314,21 +329,30 @@ type MergeCommentEvent struct {
Visibility VisibilityValue `json:"visibility"`
} `json:"project"`
ObjectAttributes struct {
- ID int `json:"id"`
- DiscussionID string `json:"discussion_id"`
- Note string `json:"note"`
- NoteableType string `json:"noteable_type"`
- AuthorID int `json:"author_id"`
- CreatedAt string `json:"created_at"`
- UpdatedAt string `json:"updated_at"`
- ProjectID int `json:"project_id"`
- Attachment string `json:"attachment"`
- LineCode string `json:"line_code"`
- CommitID string `json:"commit_id"`
- NoteableID int `json:"noteable_id"`
- System bool `json:"system"`
- StDiff *Diff `json:"st_diff"`
- URL string `json:"url"`
+ Attachment string `json:"attachment"`
+ AuthorID int `json:"author_id"`
+ ChangePosition *NotePosition `json:"change_position"`
+ CommitID string `json:"commit_id"`
+ CreatedAt string `json:"created_at"`
+ DiscussionID string `json:"discussion_id"`
+ ID int `json:"id"`
+ LineCode string `json:"line_code"`
+ Note string `json:"note"`
+ NoteableID int `json:"noteable_id"`
+ NoteableType string `json:"noteable_type"`
+ OriginalPosition *NotePosition `json:"original_position"`
+ Position *NotePosition `json:"position"`
+ ProjectID int `json:"project_id"`
+ ResolvedAt string `json:"resolved_at"`
+ ResolvedByID string `json:"resolved_by_id"`
+ ResolvedByPush string `json:"resolved_by_push"`
+ StDiff *Diff `json:"st_diff"`
+ System bool `json:"system"`
+ Type string `json:"type"`
+ UpdatedAt string `json:"updated_at"`
+ UpdatedByID string `json:"updated_by_id"`
+ Description string `json:"description"`
+ URL string `json:"url"`
} `json:"object_attributes"`
Repository *Repository `json:"repository"`
MergeRequest struct {
@@ -614,6 +638,10 @@ type MergeEvent struct {
Previous int `json:"previous"`
Current int `json:"current"`
} `json:"updated_by_id"`
+ MilestoneID struct {
+ Previous int `json:"previous"`
+ Current int `json:"current"`
+ } `json:"milestone_id"`
} `json:"changes"`
}
@@ -716,6 +744,7 @@ type PipelineEvent struct {
Tag bool `json:"tag"`
SHA string `json:"sha"`
BeforeSHA string `json:"before_sha"`
+ Source string `json:"source"`
Status string `json:"status"`
Stages []string `json:"stages"`
CreatedAt string `json:"created_at"`
@@ -832,3 +861,43 @@ type BuildEvent struct {
} `json:"commit"`
Repository *Repository `json:"repository"`
}
+
+// DeploymentEvent represents a deployment event
+//
+// GitLab API docs:
+// https://docs.gitlab.com/ce/user/project/integrations/webhooks.html#deployment-events
+type DeploymentEvent struct {
+ ObjectKind string `json:"object_kind"`
+ Status string `json:"status"`
+ DeployableID int `json:"deployable_id"`
+ DeployableURL string `json:"deployable_url"`
+ Environment string `json:"environment"`
+ Project struct {
+ ID int `json:"id"`
+ Name string `json:"name"`
+ Description string `json:"description"`
+ WebURL string `json:"web_url"`
+ AvatarURL *string `json:"avatar_url"`
+ GitSSHURL string `json:"git_ssh_url"`
+ GitHTTPURL string `json:"git_http_url"`
+ Namespace string `json:"namespace"`
+ VisibilityLevel int `json:"visibility_level"`
+ PathWithNamespace string `json:"path_with_namespace"`
+ DefaultBranch string `json:"default_branch"`
+ CIConfigPath string `json:"ci_config_path"`
+ Homepage string `json:"homepage"`
+ URL string `json:"url"`
+ SSHURL string `json:"ssh_url"`
+ HTTPURL string `json:"http_url"`
+ } `json:"project"`
+ ShortSHA string `json:"short_sha"`
+ User struct {
+ Name string `json:"name"`
+ Username string `json:"username"`
+ AvatarURL string `json:"avatar_url"`
+ Email string `json:"email"`
+ } `json:"user"`
+ UserURL string `json:"user_url"`
+ CommitURL string `json:"commit_url"`
+ CommitTitle string `json:"commit_title"`
+}
diff --git a/vendor/github.com/xanzy/go-gitlab/events.go b/vendor/github.com/xanzy/go-gitlab/events.go
index ed11609385..468d932fb3 100644
--- a/vendor/github.com/xanzy/go-gitlab/events.go
+++ b/vendor/github.com/xanzy/go-gitlab/events.go
@@ -34,6 +34,7 @@ type EventsService struct {
// GitLab API docs:
// https://docs.gitlab.com/ce/api/events.html#get-user-contribution-events
type ContributionEvent struct {
+ ID int `json:"id"`
Title string `json:"title"`
ProjectID int `json:"project_id"`
ActionName string `json:"action_name"`
diff --git a/vendor/github.com/xanzy/go-gitlab/gitlab.go b/vendor/github.com/xanzy/go-gitlab/gitlab.go
index f8e4ee22d6..5bab400503 100644
--- a/vendor/github.com/xanzy/go-gitlab/gitlab.go
+++ b/vendor/github.com/xanzy/go-gitlab/gitlab.go
@@ -117,6 +117,7 @@ type Client struct {
Epics *EpicsService
Events *EventsService
Features *FeaturesService
+ FreezePeriods *FreezePeriodsService
GitIgnoreTemplates *GitIgnoreTemplatesService
GroupBadges *GroupBadgesService
GroupCluster *GroupClustersService
@@ -280,6 +281,7 @@ func newClient(options ...ClientOptionFunc) (*Client, error) {
c.Epics = &EpicsService{client: c}
c.Events = &EventsService{client: c}
c.Features = &FeaturesService{client: c}
+ c.FreezePeriods = &FreezePeriodsService{client: c}
c.GitIgnoreTemplates = &GitIgnoreTemplatesService{client: c}
c.GroupBadges = &GroupBadgesService{client: c}
c.GroupCluster = &GroupClustersService{client: c}
@@ -290,6 +292,7 @@ func newClient(options ...ClientOptionFunc) (*Client, error) {
c.GroupVariables = &GroupVariablesService{client: c}
c.Groups = &GroupsService{client: c}
c.InstanceCluster = &InstanceClustersService{client: c}
+ c.InstanceVariables = &InstanceVariablesService{client: c}
c.IssueLinks = &IssueLinksService{client: c}
c.Issues = &IssuesService{client: c, timeStats: timeStats}
c.IssuesStatistics = &IssuesStatisticsService{client: c}
@@ -425,7 +428,7 @@ func (c *Client) configureLimiter() error {
if v := resp.Header.Get(headerRateLimit); v != "" {
if rateLimit, _ := strconv.ParseFloat(v, 64); rateLimit > 0 {
// The rate limit is based on requests per minute, so for our limiter to
- // work correctly we devide the limit by 60 to get the limit per second.
+ // work correctly we divide the limit by 60 to get the limit per second.
rateLimit /= 60
// Configure the limit and burst using a split of 2/3 for the limit and
// 1/3 for the burst. This enables clients to burst 1/3 of the allowed
diff --git a/vendor/github.com/xanzy/go-gitlab/group_hooks.go b/vendor/github.com/xanzy/go-gitlab/group_hooks.go
index 704232b90b..fa2ac4f6e4 100644
--- a/vendor/github.com/xanzy/go-gitlab/group_hooks.go
+++ b/vendor/github.com/xanzy/go-gitlab/group_hooks.go
@@ -38,6 +38,7 @@ type GroupHook struct {
JobEvents bool `json:"job_events"`
PipelineEvents bool `json:"pipeline_events"`
WikiPageEvents bool `json:"wiki_page_events"`
+ DeploymentEvents bool `json:"deployment_events"`
EnableSSLVerification bool `json:"enable_ssl_verification"`
CreatedAt *time.Time `json:"created_at"`
}
@@ -105,6 +106,7 @@ type AddGroupHookOptions struct {
JobEvents *bool `url:"job_events,omitempty" json:"job_events,omitempty"`
PipelineEvents *bool `url:"pipeline_events,omitempty" json:"pipeline_events,omitempty"`
WikiPageEvents *bool `url:"wiki_page_events,omitempty" json:"wiki_page_events,omitempty"`
+ DeploymentEvents *bool `url:"deployment_events,omitempty" json:"deployment_events,omitempty"`
EnableSSLVerification *bool `url:"enable_ssl_verification,omitempty" json:"enable_ssl_verification,omitempty"`
Token *string `url:"token,omitempty" json:"token,omitempty"`
}
@@ -149,6 +151,7 @@ type EditGroupHookOptions struct {
JobEvents *bool `url:"job_events,omitempty" json:"job_events,omitempty"`
PipelineEvents *bool `url:"pipeline_events,omitempty" json:"pipeline_events,omitempty"`
WikiPageEvents *bool `url:"wiki_page_events,omitempty" json:"wiki_page_events,omitempty"`
+ DeploymentEvents *bool `url:"deployment_events,omitempty" json:"deployment_events,omitempty"`
EnableSSLVerification *bool `url:"enable_ssl_verification,omitempty" json:"enable_ssl_verification,omitempty"`
Token *string `url:"token,omitempty" json:"token,omitempty"`
}
diff --git a/vendor/github.com/xanzy/go-gitlab/group_milestones.go b/vendor/github.com/xanzy/go-gitlab/group_milestones.go
index b3249f7b2b..7c12552721 100644
--- a/vendor/github.com/xanzy/go-gitlab/group_milestones.go
+++ b/vendor/github.com/xanzy/go-gitlab/group_milestones.go
@@ -251,6 +251,10 @@ func (s *GroupMilestonesService) GetGroupMilestoneMergeRequests(gid interface{},
return mr, resp, err
}
+// BurndownChartEvent reprensents a burnout chart event
+//
+// GitLab API docs:
+// https://docs.gitlab.com/ee/api/group_milestones.html#get-all-burndown-chart-events-for-a-single-milestone-starter
type BurndownChartEvent struct {
CreatedAt *time.Time `json:"created_at"`
Weight *int `json:"weight"`
diff --git a/vendor/github.com/xanzy/go-gitlab/groups.go b/vendor/github.com/xanzy/go-gitlab/groups.go
index 2aae865390..6a3f64f516 100644
--- a/vendor/github.com/xanzy/go-gitlab/groups.go
+++ b/vendor/github.com/xanzy/go-gitlab/groups.go
@@ -75,6 +75,9 @@ type Group struct {
CreatedAt *time.Time `json:"created_at"`
}
+// LDAPGroupLink represents a GitLab LDAP group link.
+//
+// GitLab API docs: https://docs.gitlab.com/ce/api/groups.html#ldap-group-links
type LDAPGroupLink struct {
CN string `json:"cn"`
GroupAccess AccessLevelValue `json:"group_access"`
@@ -263,6 +266,31 @@ func (s *GroupsService) DeleteGroup(gid interface{}, options ...RequestOptionFun
return s.client.Do(req, nil)
}
+// RestoreGroup restores a previously deleted group
+//
+// GitLap API docs:
+// https://docs.gitlab.com/ee/api/groups.html#restore-group-marked-for-deletion
+func (s *GroupsService) RestoreGroup(gid interface{}, options ...RequestOptionFunc) (*Group, *Response, error) {
+ group, err := parseID(gid)
+ if err != nil {
+ return nil, nil, err
+ }
+ u := fmt.Sprintf("groups/%s/restore", pathEscape(group))
+
+ req, err := s.client.NewRequest("POST", u, nil, options)
+ if err != nil {
+ return nil, nil, err
+ }
+
+ g := new(Group)
+ resp, err := s.client.Do(req, g)
+ if err != nil {
+ return nil, resp, err
+ }
+
+ return g, resp, nil
+}
+
// SearchGroup get all groups that match your string in their name or path.
//
// GitLab API docs: https://docs.gitlab.com/ce/api/groups.html#search-for-group
@@ -338,7 +366,7 @@ func (s *GroupsService) ListGroupProjects(gid interface{}, opt *ListGroupProject
// https://docs.gitlab.com/ce/api/groups.html#list-a-groups-s-subgroups
type ListSubgroupsOptions ListGroupsOptions
-// ListSubgroups gets a list of subgroups for a given project.
+// ListSubgroups gets a list of subgroups for a given group.
//
// GitLab API docs:
// https://docs.gitlab.com/ce/api/groups.html#list-a-groups-s-subgroups
diff --git a/vendor/github.com/xanzy/go-gitlab/issue_links.go b/vendor/github.com/xanzy/go-gitlab/issue_links.go
index 495793764a..ab8cfdf0c8 100644
--- a/vendor/github.com/xanzy/go-gitlab/issue_links.go
+++ b/vendor/github.com/xanzy/go-gitlab/issue_links.go
@@ -34,6 +34,7 @@ type IssueLinksService struct {
type IssueLink struct {
SourceIssue *Issue `json:"source_issue"`
TargetIssue *Issue `json:"target_issue"`
+ LinkType string `json:"link_type"`
}
// ListIssueRelations gets a list of related issues of a given issue,
@@ -70,6 +71,7 @@ func (s *IssueLinksService) ListIssueRelations(pid interface{}, issueIID int, op
type CreateIssueLinkOptions struct {
TargetProjectID *string `json:"target_project_id"`
TargetIssueIID *string `json:"target_issue_iid"`
+ LinkType *string `json:"link_type"`
}
// CreateIssueLink creates a two-way relation between two issues.
diff --git a/vendor/github.com/xanzy/go-gitlab/issues.go b/vendor/github.com/xanzy/go-gitlab/issues.go
index ffd412eeb6..a55bf08a00 100644
--- a/vendor/github.com/xanzy/go-gitlab/issues.go
+++ b/vendor/github.com/xanzy/go-gitlab/issues.go
@@ -125,6 +125,7 @@ func (i Issue) String() string {
return Stringify(i)
}
+// UnmarshalJSON implements the json.Unmarshaler interface.
func (i *Issue) UnmarshalJSON(data []byte) error {
type alias Issue
diff --git a/vendor/github.com/xanzy/go-gitlab/jobs.go b/vendor/github.com/xanzy/go-gitlab/jobs.go
index 0aaa5832a7..e6540cf1f3 100644
--- a/vendor/github.com/xanzy/go-gitlab/jobs.go
+++ b/vendor/github.com/xanzy/go-gitlab/jobs.go
@@ -19,7 +19,6 @@ package gitlab
import (
"bytes"
"fmt"
- "io"
"time"
)
@@ -76,6 +75,29 @@ type Job struct {
User *User `json:"user"`
}
+// Bridge represents a pipeline bridge.
+//
+// GitLab API docs: https://docs.gitlab.com/ce/api/jobs.html#list-pipeline-bridges
+type Bridge struct {
+ Commit *Commit `json:"commit"`
+ Coverage float64 `json:"coverage"`
+ AllowFailure bool `json:"allow_failure"`
+ CreatedAt *time.Time `json:"created_at"`
+ StartedAt *time.Time `json:"started_at"`
+ FinishedAt *time.Time `json:"finished_at"`
+ Duration float64 `json:"duration"`
+ ID int `json:"id"`
+ Name string `json:"name"`
+ Pipeline PipelineInfo `json:"pipeline"`
+ Ref string `json:"ref"`
+ Stage string `json:"stage"`
+ Status string `json:"status"`
+ Tag bool `json:"tag"`
+ WebURL string `json:"web_url"`
+ User *User `json:"user"`
+ DownstreamPipeline *PipelineInfo `json:"downstream_pipeline"`
+}
+
// ListJobsOptions are options for two list apis
type ListJobsOptions struct {
ListOptions
@@ -89,7 +111,7 @@ type ListJobsOptions struct {
//
// GitLab API docs:
// https://docs.gitlab.com/ce/api/jobs.html#list-project-jobs
-func (s *JobsService) ListProjectJobs(pid interface{}, opts *ListJobsOptions, options ...RequestOptionFunc) ([]Job, *Response, error) {
+func (s *JobsService) ListProjectJobs(pid interface{}, opts *ListJobsOptions, options ...RequestOptionFunc) ([]*Job, *Response, error) {
project, err := parseID(pid)
if err != nil {
return nil, nil, err
@@ -101,7 +123,7 @@ func (s *JobsService) ListProjectJobs(pid interface{}, opts *ListJobsOptions, op
return nil, nil, err
}
- var jobs []Job
+ var jobs []*Job
resp, err := s.client.Do(req, &jobs)
if err != nil {
return nil, resp, err
@@ -136,6 +158,32 @@ func (s *JobsService) ListPipelineJobs(pid interface{}, pipelineID int, opts *Li
return jobs, resp, err
}
+// ListPipelineBridges gets a list of bridges for specific pipeline in a
+// project.
+//
+// GitLab API docs:
+// https://docs.gitlab.com/ce/api/jobs.html#list-pipeline-jobs
+func (s *JobsService) ListPipelineBridges(pid interface{}, pipelineID int, opts *ListJobsOptions, options ...RequestOptionFunc) ([]*Bridge, *Response, error) {
+ project, err := parseID(pid)
+ if err != nil {
+ return nil, nil, err
+ }
+ u := fmt.Sprintf("projects/%s/pipelines/%d/bridges", pathEscape(project), pipelineID)
+
+ req, err := s.client.NewRequest("GET", u, opts, options)
+ if err != nil {
+ return nil, nil, err
+ }
+
+ var bridges []*Bridge
+ resp, err := s.client.Do(req, &bridges)
+ if err != nil {
+ return nil, resp, err
+ }
+
+ return bridges, resp, err
+}
+
// GetJob gets a single job of a project.
//
// GitLab API docs:
@@ -165,7 +213,7 @@ func (s *JobsService) GetJob(pid interface{}, jobID int, options ...RequestOptio
//
// GitLab API docs:
// https://docs.gitlab.com/ce/api/job_artifacts.html#get-job-artifacts
-func (s *JobsService) GetJobArtifacts(pid interface{}, jobID int, options ...RequestOptionFunc) (io.Reader, *Response, error) {
+func (s *JobsService) GetJobArtifacts(pid interface{}, jobID int, options ...RequestOptionFunc) (*bytes.Reader, *Response, error) {
project, err := parseID(pid)
if err != nil {
return nil, nil, err
@@ -183,7 +231,7 @@ func (s *JobsService) GetJobArtifacts(pid interface{}, jobID int, options ...Req
return nil, resp, err
}
- return artifactsBuf, resp, err
+ return bytes.NewReader(artifactsBuf.Bytes()), resp, err
}
// DownloadArtifactsFileOptions represents the available DownloadArtifactsFile()
@@ -200,7 +248,7 @@ type DownloadArtifactsFileOptions struct {
//
// GitLab API docs:
// https://docs.gitlab.com/ce/api/job_artifacts.html#download-the-artifacts-archive
-func (s *JobsService) DownloadArtifactsFile(pid interface{}, refName string, opt *DownloadArtifactsFileOptions, options ...RequestOptionFunc) (io.Reader, *Response, error) {
+func (s *JobsService) DownloadArtifactsFile(pid interface{}, refName string, opt *DownloadArtifactsFileOptions, options ...RequestOptionFunc) (*bytes.Reader, *Response, error) {
project, err := parseID(pid)
if err != nil {
return nil, nil, err
@@ -218,7 +266,7 @@ func (s *JobsService) DownloadArtifactsFile(pid interface{}, refName string, opt
return nil, resp, err
}
- return artifactsBuf, resp, err
+ return bytes.NewReader(artifactsBuf.Bytes()), resp, err
}
// DownloadSingleArtifactsFile download a file from the artifacts from the
@@ -228,7 +276,7 @@ func (s *JobsService) DownloadArtifactsFile(pid interface{}, refName string, opt
//
// GitLab API docs:
// https://docs.gitlab.com/ce/api/job_artifacts.html#download-a-single-artifact-file-by-job-id
-func (s *JobsService) DownloadSingleArtifactsFile(pid interface{}, jobID int, artifactPath string, options ...RequestOptionFunc) (io.Reader, *Response, error) {
+func (s *JobsService) DownloadSingleArtifactsFile(pid interface{}, jobID int, artifactPath string, options ...RequestOptionFunc) (*bytes.Reader, *Response, error) {
project, err := parseID(pid)
if err != nil {
return nil, nil, err
@@ -252,14 +300,14 @@ func (s *JobsService) DownloadSingleArtifactsFile(pid interface{}, jobID int, ar
return nil, resp, err
}
- return artifactBuf, resp, err
+ return bytes.NewReader(artifactBuf.Bytes()), resp, err
}
// GetTraceFile gets a trace of a specific job of a project
//
// GitLab API docs:
// https://docs.gitlab.com/ce/api/jobs.html#get-a-trace-file
-func (s *JobsService) GetTraceFile(pid interface{}, jobID int, options ...RequestOptionFunc) (io.Reader, *Response, error) {
+func (s *JobsService) GetTraceFile(pid interface{}, jobID int, options ...RequestOptionFunc) (*bytes.Reader, *Response, error) {
project, err := parseID(pid)
if err != nil {
return nil, nil, err
@@ -277,7 +325,7 @@ func (s *JobsService) GetTraceFile(pid interface{}, jobID int, options ...Reques
return nil, resp, err
}
- return traceBuf, resp, err
+ return bytes.NewReader(traceBuf.Bytes()), resp, err
}
// CancelJob cancels a single job of a project.
diff --git a/vendor/github.com/xanzy/go-gitlab/notes.go b/vendor/github.com/xanzy/go-gitlab/notes.go
index b8d599e4cd..9eb4c59b60 100644
--- a/vendor/github.com/xanzy/go-gitlab/notes.go
+++ b/vendor/github.com/xanzy/go-gitlab/notes.go
@@ -70,18 +70,29 @@ type Note struct {
// NotePosition represents the position attributes of a note.
type NotePosition struct {
- BaseSHA string `json:"base_sha"`
- StartSHA string `json:"start_sha"`
- HeadSHA string `json:"head_sha"`
- PositionType string `json:"position_type"`
- NewPath string `json:"new_path,omitempty"`
- NewLine int `json:"new_line,omitempty"`
- OldPath string `json:"old_path,omitempty"`
- OldLine int `json:"old_line,omitempty"`
- Width int `json:"width,omitempty"`
- Height int `json:"height,omitempty"`
- X int `json:"x,omitempty"`
- Y int `json:"y,omitempty"`
+ BaseSHA string `json:"base_sha"`
+ StartSHA string `json:"start_sha"`
+ HeadSHA string `json:"head_sha"`
+ PositionType string `json:"position_type"`
+ NewPath string `json:"new_path,omitempty"`
+ NewLine int `json:"new_line,omitempty"`
+ OldPath string `json:"old_path,omitempty"`
+ OldLine int `json:"old_line,omitempty"`
+ LineRange *LineRange `json:"line_range"`
+}
+
+// LineRange represents the range of a note.
+type LineRange struct {
+ StartRange *LinePosition `json:"start"`
+ EndRange *LinePosition `json:"end"`
+}
+
+// LinePosition represents a position in a line range.
+type LinePosition struct {
+ LineCode string `json:"line_code"`
+ Type string `json:"type"`
+ OldLine int `json:"old_line"`
+ NewLine int `json:"new_line"`
}
func (n Note) String() string {
diff --git a/vendor/github.com/xanzy/go-gitlab/pipelines.go b/vendor/github.com/xanzy/go-gitlab/pipelines.go
index 5b893486fe..4d2bd770eb 100644
--- a/vendor/github.com/xanzy/go-gitlab/pipelines.go
+++ b/vendor/github.com/xanzy/go-gitlab/pipelines.go
@@ -105,10 +105,21 @@ type PipelineTestSuites struct {
// PipelineTestCases contains test cases details.
type PipelineTestCases struct {
- Status string `json:"status"`
- Name string `json:"name"`
- Classname string `json:"classname"`
- ExecutionTime float64 `json:"execution_time"`
+ Status string `json:"status"`
+ Name string `json:"name"`
+ Classname string `json:"classname"`
+ File string `json:"file"`
+ ExecutionTime float64 `json:"execution_time"`
+ SystemOutput string `json:"system_output"`
+ StackTrace string `json:"stack_trace"`
+ AttachmentURL string `json:"attachment_url"`
+ RecentFailures RecentFailures `json:"recent_failures"`
+}
+
+// RecentFailures contains failures count for the project's default branch.
+type RecentFailures struct {
+ Count int `json:"count"`
+ BaseBranch string `json:"base_branch"`
}
func (p PipelineTestReport) String() string {
diff --git a/vendor/github.com/xanzy/go-gitlab/project_mirror.go b/vendor/github.com/xanzy/go-gitlab/project_mirror.go
index aa7a1aa5d3..e246a43c6f 100644
--- a/vendor/github.com/xanzy/go-gitlab/project_mirror.go
+++ b/vendor/github.com/xanzy/go-gitlab/project_mirror.go
@@ -68,7 +68,6 @@ func (s *ProjectMirrorService) ListProjectMirror(pid interface{}, options ...Req
}
return pm, resp, err
-
}
// AddProjectMirrorOptions contains the properties requires to create
diff --git a/vendor/github.com/xanzy/go-gitlab/projects.go b/vendor/github.com/xanzy/go-gitlab/projects.go
index 5d5ca8c386..866380c2f4 100644
--- a/vendor/github.com/xanzy/go-gitlab/projects.go
+++ b/vendor/github.com/xanzy/go-gitlab/projects.go
@@ -77,6 +77,7 @@ type Project struct {
StarCount int `json:"star_count"`
RunnersToken string `json:"runners_token"`
PublicBuilds bool `json:"public_builds"`
+ AllowMergeOnSkippedPipeline bool `json:"allow_merge_on_skipped_pipeline"`
OnlyAllowMergeIfPipelineSucceeds bool `json:"only_allow_merge_if_pipeline_succeeds"`
OnlyAllowMergeIfAllDiscussionsAreResolved bool `json:"only_allow_merge_if_all_discussions_are_resolved"`
RemoveSourceBranchAfterMerge bool `json:"remove_source_branch_after_merge"`
@@ -101,6 +102,7 @@ type Project struct {
SnippetsAccessLevel AccessControlValue `json:"snippets_access_level"`
PagesAccessLevel AccessControlValue `json:"pages_access_level"`
AutocloseReferencedIssues bool `json:"autoclose_referenced_issues"`
+ CIForwardDeploymentEnabled bool `json:"ci_forward_deployment_enabled"`
SharedWithGroups []struct {
GroupID int `json:"group_id"`
GroupName string `json:"group_name"`
@@ -486,6 +488,7 @@ type CreateProjectOptions struct {
Visibility *VisibilityValue `url:"visibility,omitempty" json:"visibility,omitempty"`
ImportURL *string `url:"import_url,omitempty" json:"import_url,omitempty"`
PublicBuilds *bool `url:"public_builds,omitempty" json:"public_builds,omitempty"`
+ AllowMergeOnSkippedPipeline *bool `url:"allow_merge_on_skipped_pipeline,omitempty" json:"allow_merge_on_skipped_pipeline,omitempty"`
OnlyAllowMergeIfPipelineSucceeds *bool `url:"only_allow_merge_if_pipeline_succeeds,omitempty" json:"only_allow_merge_if_pipeline_succeeds,omitempty"`
OnlyAllowMergeIfAllDiscussionsAreResolved *bool `url:"only_allow_merge_if_all_discussions_are_resolved,omitempty" json:"only_allow_merge_if_all_discussions_are_resolved,omitempty"`
MergeMethod *MergeMethodValue `url:"merge_method,omitempty" json:"merge_method,omitempty"`
@@ -499,6 +502,7 @@ type CreateProjectOptions struct {
AutoCancelPendingPipelines *string `url:"auto_cancel_pending_pipelines,omitempty" json:"auto_cancel_pending_pipelines,omitempty"`
BuildCoverageRegex *string `url:"build_coverage_regex,omitempty" json:"build_coverage_regex,omitempty"`
CIConfigPath *string `url:"ci_config_path,omitempty" json:"ci_config_path,omitempty"`
+ CIForwardDeploymentEnabled *bool `url:"ci_forward_deployment_enabled,omitempty" json:"ci_forward_deployment_enabled,omitempty"`
AutoDevopsEnabled *bool `url:"auto_devops_enabled,omitempty" json:"auto_devops_enabled,omitempty"`
AutoDevopsDeployStrategy *string `url:"auto_devops_deploy_strategy,omitempty" json:"auto_devops_deploy_strategy,omitempty"`
ApprovalsBeforeMerge *int `url:"approvals_before_merge,omitempty" json:"approvals_before_merge,omitempty"`
@@ -592,6 +596,7 @@ type EditProjectOptions struct {
Visibility *VisibilityValue `url:"visibility,omitempty" json:"visibility,omitempty"`
ImportURL *string `url:"import_url,omitempty" json:"import_url,omitempty"`
PublicBuilds *bool `url:"public_builds,omitempty" json:"public_builds,omitempty"`
+ AllowMergeOnSkippedPipeline *bool `url:"allow_merge_on_skipped_pipeline,omitempty" json:"allow_merge_on_skipped_pipeline,omitempty"`
OnlyAllowMergeIfPipelineSucceeds *bool `url:"only_allow_merge_if_pipeline_succeeds,omitempty" json:"only_allow_merge_if_pipeline_succeeds,omitempty"`
OnlyAllowMergeIfAllDiscussionsAreResolved *bool `url:"only_allow_merge_if_all_discussions_are_resolved,omitempty" json:"only_allow_merge_if_all_discussions_are_resolved,omitempty"`
MergeMethod *MergeMethodValue `url:"merge_method,omitempty" json:"merge_method,omitempty"`
@@ -604,6 +609,7 @@ type EditProjectOptions struct {
AutoCancelPendingPipelines *string `url:"auto_cancel_pending_pipelines,omitempty" json:"auto_cancel_pending_pipelines,omitempty"`
BuildCoverageRegex *string `url:"build_coverage_regex,omitempty" json:"build_coverage_regex,omitempty"`
CIConfigPath *string `url:"ci_config_path,omitempty" json:"ci_config_path,omitempty"`
+ CIForwardDeploymentEnabled *bool `url:"ci_forward_deployment_enabled,omitempty" json:"ci_forward_deployment_enabled,omitempty"`
CIDefaultGitDepth *int `url:"ci_default_git_depth,omitempty" json:"ci_default_git_depth,omitempty"`
AutoDevopsEnabled *bool `url:"auto_devops_enabled,omitempty" json:"auto_devops_enabled,omitempty"`
AutoDevopsDeployStrategy *string `url:"auto_devops_deploy_strategy,omitempty" json:"auto_devops_deploy_strategy,omitempty"`
@@ -886,6 +892,7 @@ type ProjectHook struct {
JobEvents bool `json:"job_events"`
PipelineEvents bool `json:"pipeline_events"`
WikiPageEvents bool `json:"wiki_page_events"`
+ DeploymentEvents bool `json:"deployment_events"`
EnableSSLVerification bool `json:"enable_ssl_verification"`
CreatedAt *time.Time `json:"created_at"`
}
@@ -962,6 +969,7 @@ type AddProjectHookOptions struct {
JobEvents *bool `url:"job_events,omitempty" json:"job_events,omitempty"`
PipelineEvents *bool `url:"pipeline_events,omitempty" json:"pipeline_events,omitempty"`
WikiPageEvents *bool `url:"wiki_page_events,omitempty" json:"wiki_page_events,omitempty"`
+ DeploymentEvents *bool `url:"deployment_events,omitempty" json:"deployment_events,omitempty"`
EnableSSLVerification *bool `url:"enable_ssl_verification,omitempty" json:"enable_ssl_verification,omitempty"`
Token *string `url:"token,omitempty" json:"token,omitempty"`
}
@@ -1008,6 +1016,7 @@ type EditProjectHookOptions struct {
JobEvents *bool `url:"job_events,omitempty" json:"job_events,omitempty"`
PipelineEvents *bool `url:"pipeline_events,omitempty" json:"pipeline_events,omitempty"`
WikiPageEvents *bool `url:"wiki_page_events,omitempty" json:"wiki_page_events,omitempty"`
+ DeploymentEvents *bool `url:"deployment_events,omitempty" json:"deployment_events,omitempty"`
EnableSSLVerification *bool `url:"enable_ssl_verification,omitempty" json:"enable_ssl_verification,omitempty"`
Token *string `url:"token,omitempty" json:"token,omitempty"`
}
diff --git a/vendor/github.com/xanzy/go-gitlab/releases.go b/vendor/github.com/xanzy/go-gitlab/releases.go
index 39df844c80..0891d39df9 100644
--- a/vendor/github.com/xanzy/go-gitlab/releases.go
+++ b/vendor/github.com/xanzy/go-gitlab/releases.go
@@ -124,7 +124,9 @@ type CreateReleaseOptions struct {
TagName *string `url:"tag_name" json:"tag_name"`
Description *string `url:"description" json:"description"`
Ref *string `url:"ref,omitempty" json:"ref,omitempty"`
+ Milestones []string `url:"milestones,omitempty" json:"milestones,omitempty"`
Assets *ReleaseAssets `url:"assets,omitempty" json:"assets,omitempty"`
+ ReleasedAt *time.Time `url:"released_at,omitempty" json:"released_at,omitempty"`
}
// CreateRelease creates a release.
@@ -157,8 +159,10 @@ func (s *ReleasesService) CreateRelease(pid interface{}, opts *CreateReleaseOpti
// GitLab API docs:
// https://docs.gitlab.com/ce/api/releases/index.html#update-a-release
type UpdateReleaseOptions struct {
- Name *string `url:"name" json:"name"`
- Description *string `url:"description" json:"description"`
+ Name *string `url:"name" json:"name"`
+ Description *string `url:"description" json:"description"`
+ Milestones []string `url:"milestones,omitempty" json:"milestones,omitempty"`
+ ReleasedAt *time.Time `url:"released_at,omitempty" json:"released_at,omitempty"`
}
// UpdateRelease updates a release.
diff --git a/vendor/github.com/xanzy/go-gitlab/repository_files.go b/vendor/github.com/xanzy/go-gitlab/repository_files.go
index cc954c27d7..fc0422c4f5 100644
--- a/vendor/github.com/xanzy/go-gitlab/repository_files.go
+++ b/vendor/github.com/xanzy/go-gitlab/repository_files.go
@@ -260,6 +260,7 @@ func (r FileInfo) String() string {
// https://docs.gitlab.com/ce/api/repository_files.html#create-new-file-in-repository
type CreateFileOptions struct {
Branch *string `url:"branch,omitempty" json:"branch,omitempty"`
+ StartBranch *string `url:"start_branch,omitempty" json:"start_branch,omitempty"`
Encoding *string `url:"encoding,omitempty" json:"encoding,omitempty"`
AuthorEmail *string `url:"author_email,omitempty" json:"author_email,omitempty"`
AuthorName *string `url:"author_name,omitempty" json:"author_name,omitempty"`
@@ -302,6 +303,7 @@ func (s *RepositoryFilesService) CreateFile(pid interface{}, fileName string, op
// https://docs.gitlab.com/ce/api/repository_files.html#update-existing-file-in-repository
type UpdateFileOptions struct {
Branch *string `url:"branch,omitempty" json:"branch,omitempty"`
+ StartBranch *string `url:"start_branch,omitempty" json:"start_branch,omitempty"`
Encoding *string `url:"encoding,omitempty" json:"encoding,omitempty"`
AuthorEmail *string `url:"author_email,omitempty" json:"author_email,omitempty"`
AuthorName *string `url:"author_name,omitempty" json:"author_name,omitempty"`
diff --git a/vendor/github.com/xanzy/go-gitlab/runners.go b/vendor/github.com/xanzy/go-gitlab/runners.go
index 96c23467bc..ee587d65a3 100644
--- a/vendor/github.com/xanzy/go-gitlab/runners.go
+++ b/vendor/github.com/xanzy/go-gitlab/runners.go
@@ -69,6 +69,7 @@ type RunnerDetails struct {
Token string `json:"token"`
Revision string `json:"revision"`
TagList []string `json:"tag_list"`
+ RunUntagged bool `json:"run_untagged"`
Version string `json:"version"`
Locked bool `json:"locked"`
AccessLevel string `json:"access_level"`
@@ -380,14 +381,27 @@ func (s *RunnersService) ListGroupsRunners(gid interface{}, opt *ListGroupsRunne
// GitLab API docs:
// https://docs.gitlab.com/ce/api/runners.html#register-a-new-runner
type RegisterNewRunnerOptions struct {
- Token *string `url:"token" json:"token"`
- Description *string `url:"description,omitempty" json:"description,omitempty"`
- Info *string `url:"info,omitempty" json:"info,omitempty"`
- Active *bool `url:"active,omitempty" json:"active,omitempty"`
- Locked *bool `url:"locked,omitempty" json:"locked,omitempty"`
- RunUntagged *bool `url:"run_untagged,omitempty" json:"run_untagged,omitempty"`
- TagList []string `url:"tag_list[],omitempty" json:"tag_list,omitempty"`
- MaximumTimeout *int `url:"maximum_timeout,omitempty" json:"maximum_timeout,omitempty"`
+ Token *string `url:"token" json:"token"`
+ Description *string `url:"description,omitempty" json:"description,omitempty"`
+ Info *RegisterNewRunnerInfoOptions `url:"info,omitempty" json:"info,omitempty"`
+ Active *bool `url:"active,omitempty" json:"active,omitempty"`
+ Locked *bool `url:"locked,omitempty" json:"locked,omitempty"`
+ RunUntagged *bool `url:"run_untagged,omitempty" json:"run_untagged,omitempty"`
+ TagList []string `url:"tag_list[],omitempty" json:"tag_list,omitempty"`
+ MaximumTimeout *int `url:"maximum_timeout,omitempty" json:"maximum_timeout,omitempty"`
+}
+
+// RegisterNewRunnerInfoOptions represents the info hashmap parameter in
+// RegisterNewRunnerOptions.
+//
+// GitLab API docs:
+// https://docs.gitlab.com/ce/api/runners.html#register-a-new-runner
+type RegisterNewRunnerInfoOptions struct {
+ Name *string `url:"name,omitempty" json:"name,omitempty"`
+ Version *string `url:"version,omitempty" json:"version,omitempty"`
+ Revision *string `url:"revision,omitempty" json:"revision,omitempty"`
+ Platform *string `url:"platform,omitempty" json:"platform,omitempty"`
+ Architecture *string `url:"architecture,omitempty" json:"architecture,omitempty"`
}
// RegisterNewRunner registers a new Runner for the instance.
@@ -418,10 +432,10 @@ type DeleteRegisteredRunnerOptions struct {
Token *string `url:"token" json:"token"`
}
-// DeleteRegisteredRunner registers a new Runner for the instance.
+// DeleteRegisteredRunner deletes a Runner by Token.
//
// GitLab API docs:
-// https://docs.gitlab.com/ce/api/runners.html#delete-a-registered-runner
+// https://docs.gitlab.com/ce/api/runners.html#delete-a-runner-by-authentication-token
func (s *RunnersService) DeleteRegisteredRunner(opt *DeleteRegisteredRunnerOptions, options ...RequestOptionFunc) (*Response, error) {
req, err := s.client.NewRequest("DELETE", "runners", opt, options)
if err != nil {
@@ -431,6 +445,19 @@ func (s *RunnersService) DeleteRegisteredRunner(opt *DeleteRegisteredRunnerOptio
return s.client.Do(req, nil)
}
+// DeleteRegisteredRunnerByID deletes a Runner by ID.
+//
+// GitLab API docs:
+// https://docs.gitlab.com/ce/api/runners.html#delete-a-runner-by-id
+func (s *RunnersService) DeleteRegisteredRunnerByID(rid int, options ...RequestOptionFunc) (*Response, error) {
+ req, err := s.client.NewRequest("DELETE", fmt.Sprintf("runners/%d", rid), nil, options)
+ if err != nil {
+ return nil, err
+ }
+
+ return s.client.Do(req, nil)
+}
+
// VerifyRegisteredRunnerOptions represents the available
// VerifyRegisteredRunner() options.
//
diff --git a/vendor/github.com/xanzy/go-gitlab/services.go b/vendor/github.com/xanzy/go-gitlab/services.go
index 0f36c4eb94..a7b5f754db 100644
--- a/vendor/github.com/xanzy/go-gitlab/services.go
+++ b/vendor/github.com/xanzy/go-gitlab/services.go
@@ -52,6 +52,7 @@ type Service struct {
PipelineEvents bool `json:"pipeline_events"`
JobEvents bool `json:"job_events"`
WikiPageEvents bool `json:"wiki_page_events"`
+ DeploymentEvents bool `json:"deployment_events"`
}
// ListServices gets a list of all active services.
diff --git a/vendor/github.com/xanzy/go-gitlab/users.go b/vendor/github.com/xanzy/go-gitlab/users.go
index 2dbed926c5..3b8dc1b07a 100644
--- a/vendor/github.com/xanzy/go-gitlab/users.go
+++ b/vendor/github.com/xanzy/go-gitlab/users.go
@@ -54,40 +54,43 @@ type BasicUser struct {
//
// GitLab API docs: https://docs.gitlab.com/ee/api/users.html
type User struct {
- ID int `json:"id"`
- Username string `json:"username"`
- Email string `json:"email"`
- Name string `json:"name"`
- State string `json:"state"`
- WebURL string `json:"web_url"`
- CreatedAt *time.Time `json:"created_at"`
- Bio string `json:"bio"`
- Location string `json:"location"`
- PublicEmail string `json:"public_email"`
- Skype string `json:"skype"`
- Linkedin string `json:"linkedin"`
- Twitter string `json:"twitter"`
- WebsiteURL string `json:"website_url"`
- Organization string `json:"organization"`
- ExternUID string `json:"extern_uid"`
- Provider string `json:"provider"`
- ThemeID int `json:"theme_id"`
- LastActivityOn *ISOTime `json:"last_activity_on"`
- ColorSchemeID int `json:"color_scheme_id"`
- IsAdmin bool `json:"is_admin"`
- AvatarURL string `json:"avatar_url"`
- CanCreateGroup bool `json:"can_create_group"`
- CanCreateProject bool `json:"can_create_project"`
- ProjectsLimit int `json:"projects_limit"`
- CurrentSignInAt *time.Time `json:"current_sign_in_at"`
- LastSignInAt *time.Time `json:"last_sign_in_at"`
- ConfirmedAt *time.Time `json:"confirmed_at"`
- TwoFactorEnabled bool `json:"two_factor_enabled"`
- Identities []*UserIdentity `json:"identities"`
- External bool `json:"external"`
- PrivateProfile bool `json:"private_profile"`
- SharedRunnersMinutesLimit int `json:"shared_runners_minutes_limit"`
- CustomAttributes []*CustomAttribute `json:"custom_attributes"`
+ ID int `json:"id"`
+ Username string `json:"username"`
+ Email string `json:"email"`
+ Name string `json:"name"`
+ State string `json:"state"`
+ WebURL string `json:"web_url"`
+ CreatedAt *time.Time `json:"created_at"`
+ Bio string `json:"bio"`
+ Location string `json:"location"`
+ PublicEmail string `json:"public_email"`
+ Skype string `json:"skype"`
+ Linkedin string `json:"linkedin"`
+ Twitter string `json:"twitter"`
+ WebsiteURL string `json:"website_url"`
+ Organization string `json:"organization"`
+ ExternUID string `json:"extern_uid"`
+ Provider string `json:"provider"`
+ ThemeID int `json:"theme_id"`
+ LastActivityOn *ISOTime `json:"last_activity_on"`
+ ColorSchemeID int `json:"color_scheme_id"`
+ IsAdmin bool `json:"is_admin"`
+ AvatarURL string `json:"avatar_url"`
+ CanCreateGroup bool `json:"can_create_group"`
+ CanCreateProject bool `json:"can_create_project"`
+ ProjectsLimit int `json:"projects_limit"`
+ CurrentSignInAt *time.Time `json:"current_sign_in_at"`
+ LastSignInAt *time.Time `json:"last_sign_in_at"`
+ ConfirmedAt *time.Time `json:"confirmed_at"`
+ TwoFactorEnabled bool `json:"two_factor_enabled"`
+ Note string `json:"note"`
+ Identities []*UserIdentity `json:"identities"`
+ External bool `json:"external"`
+ PrivateProfile bool `json:"private_profile"`
+ SharedRunnersMinutesLimit int `json:"shared_runners_minutes_limit"`
+ ExtraSharedRunnersMinutesLimit int `json:"extra_shared_runners_minutes_limit"`
+ UsingLicenseSeat bool `json:"using_license_seat"`
+ CustomAttributes []*CustomAttribute `json:"custom_attributes"`
}
// UserIdentity represents a user identity.
@@ -101,8 +104,9 @@ type UserIdentity struct {
// GitLab API docs: https://docs.gitlab.com/ce/api/users.html#list-users
type ListUsersOptions struct {
ListOptions
- Active *bool `url:"active,omitempty" json:"active,omitempty"`
- Blocked *bool `url:"blocked,omitempty" json:"blocked,omitempty"`
+ Active *bool `url:"active,omitempty" json:"active,omitempty"`
+ Blocked *bool `url:"blocked,omitempty" json:"blocked,omitempty"`
+ ExcludeInternal *bool `url:"exclude_internal,omitempty" json:"exclude_internal,omitempty"`
// The options below are only available for admins.
Search *string `url:"search,omitempty" json:"search,omitempty"`
@@ -362,8 +366,9 @@ func (s *UsersService) GetSSHKey(key int, options ...RequestOptionFunc) (*SSHKey
//
// GitLab API docs: https://docs.gitlab.com/ce/api/projects.html#add-ssh-key
type AddSSHKeyOptions struct {
- Title *string `url:"title,omitempty" json:"title,omitempty"`
- Key *string `url:"key,omitempty" json:"key,omitempty"`
+ Title *string `url:"title,omitempty" json:"title,omitempty"`
+ Key *string `url:"key,omitempty" json:"key,omitempty"`
+ ExpiresAt *ISOTime `url:"expires_at,omitempty" json:"expires_at,omitempty"`
}
// AddSSHKey creates a new key owned by the currently authenticated user.
@@ -937,10 +942,10 @@ func (s *UsersService) SetUserStatus(opt *UserStatusOptions, options ...RequestO
// GitLab API docs:
// https://docs.gitlab.com/ee/api/users.html#user-memberships-admin-only
type UserMembership struct {
- SourceID int `json:"source_id"`
- SourceName string `json:"source_name"`
- SourceType string `json:"source_type"`
- AccessLevel string `json:"access_level"`
+ SourceID int `json:"source_id"`
+ SourceName string `json:"source_name"`
+ SourceType string `json:"source_type"`
+ AccessLevel AccessLevelValue `json:"access_level"`
}
// GetUserMembershipOptions represents the options available to query user memberships.
diff --git a/vendor/github.com/xanzy/go-gitlab/validate.go b/vendor/github.com/xanzy/go-gitlab/validate.go
index 099484ef1f..17ffb15e31 100644
--- a/vendor/github.com/xanzy/go-gitlab/validate.go
+++ b/vendor/github.com/xanzy/go-gitlab/validate.go
@@ -1,5 +1,7 @@
package gitlab
+import "fmt"
+
// ValidateService handles communication with the validation related methods of
// the GitLab API.
//
@@ -16,6 +18,17 @@ type LintResult struct {
Errors []string `json:"errors"`
}
+// ProjectLintResult represents the linting results by project.
+//
+// GitLab API docs:
+// https://docs.gitlab.com/ee/api/lint.html#validate-a-projects-ci-configuration
+type ProjectLintResult struct {
+ Valid bool `json:"valid"`
+ Errors []string `json:"errors"`
+ Warnings []string `json:"warnings"`
+ MergedYaml string `json:"merged_yaml"`
+}
+
// Lint validates .gitlab-ci.yml content.
//
// GitLab API docs: https://docs.gitlab.com/ce/api/lint.html
@@ -38,3 +51,70 @@ func (s *ValidateService) Lint(content string, options ...RequestOptionFunc) (*L
return l, resp, nil
}
+
+// ProjectNamespaceLintOptions represents the available ProjectNamespaceLint() options.
+//
+// GitLab API docs:
+// https://docs.gitlab.com/ee/api/lint.html#validate-a-ci-yaml-configuration-with-a-namespace
+type ProjectNamespaceLintOptions struct {
+ Content *string `url:"content,omitempty" json:"content,omitempty"`
+ DryRun *bool `url:"dry_run,omitempty" json:"dry_run,omitempty"`
+}
+
+// ProjectNamespaceLint validates .gitlab-ci.yml content by project.
+//
+// GitLab API docs:
+// https://docs.gitlab.com/ee/api/lint.html#validate-a-ci-yaml-configuration-with-a-namespace
+func (s *ValidateService) ProjectNamespaceLint(pid interface{}, opt *ProjectNamespaceLintOptions, options ...RequestOptionFunc) (*ProjectLintResult, *Response, error) {
+ project, err := parseID(pid)
+ if err != nil {
+ return nil, nil, err
+ }
+ u := fmt.Sprintf("projects/%s/ci/lint", pathEscape(project))
+
+ req, err := s.client.NewRequest("POST", u, &opt, options)
+ if err != nil {
+ return nil, nil, err
+ }
+
+ l := new(ProjectLintResult)
+ resp, err := s.client.Do(req, l)
+ if err != nil {
+ return nil, resp, err
+ }
+
+ return l, resp, nil
+}
+
+// ProjectLintOptions represents the available ProjectLint() options.
+//
+// GitLab API docs:
+// https://docs.gitlab.com/ee/api/lint.html#validate-a-projects-ci-configuration
+type ProjectLintOptions struct {
+ DryRun *bool `url:"dry_run,omitempty" json:"dry_run,omitempty"`
+}
+
+// ProjectLint validates .gitlab-ci.yml content by project.
+//
+// GitLab API docs:
+// https://docs.gitlab.com/ee/api/lint.html#validate-a-projects-ci-configuration
+func (s *ValidateService) ProjectLint(pid interface{}, opt *ProjectLintOptions, options ...RequestOptionFunc) (*ProjectLintResult, *Response, error) {
+ project, err := parseID(pid)
+ if err != nil {
+ return nil, nil, err
+ }
+ u := fmt.Sprintf("projects/%s/ci/lint", pathEscape(project))
+
+ req, err := s.client.NewRequest("GET", u, &opt, options)
+ if err != nil {
+ return nil, nil, err
+ }
+
+ l := new(ProjectLintResult)
+ resp, err := s.client.Do(req, l)
+ if err != nil {
+ return nil, resp, err
+ }
+
+ return l, resp, nil
+}