summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/xanzy/go-gitlab/groups.go
diff options
context:
space:
mode:
author6543 <6543@obermui.de>2020-10-16 07:06:27 +0200
committerGitHub <noreply@github.com>2020-10-16 01:06:27 -0400
commit12a1f914f443cc31af4bc54ab43802a75742cd57 (patch)
tree998e159281cf41de8b6d7bb1ab5075b3286ce5a9 /vendor/github.com/xanzy/go-gitlab/groups.go
parent91f2afdb546364195ff909186983b94a61ab3181 (diff)
downloadgitea-12a1f914f443cc31af4bc54ab43802a75742cd57.tar.gz
gitea-12a1f914f443cc31af4bc54ab43802a75742cd57.zip
Vendor Update Go Libs (#13166)
* update github.com/alecthomas/chroma v0.8.0 -> v0.8.1 * github.com/blevesearch/bleve v1.0.10 -> v1.0.12 * editorconfig-core-go v2.1.1 -> v2.3.7 * github.com/gliderlabs/ssh v0.2.2 -> v0.3.1 * migrate editorconfig.ParseBytes to Parse * github.com/shurcooL/vfsgen to 0d455de96546 * github.com/go-git/go-git/v5 v5.1.0 -> v5.2.0 * github.com/google/uuid v1.1.1 -> v1.1.2 * github.com/huandu/xstrings v1.3.0 -> v1.3.2 * github.com/klauspost/compress v1.10.11 -> v1.11.1 * github.com/markbates/goth v1.61.2 -> v1.65.0 * github.com/mattn/go-sqlite3 v1.14.0 -> v1.14.4 * github.com/mholt/archiver v3.3.0 -> v3.3.2 * github.com/microcosm-cc/bluemonday 4f7140c49acb -> v1.0.4 * github.com/minio/minio-go v7.0.4 -> v7.0.5 * github.com/olivere/elastic v7.0.9 -> v7.0.20 * github.com/urfave/cli v1.20.0 -> v1.22.4 * github.com/prometheus/client_golang v1.1.0 -> v1.8.0 * github.com/xanzy/go-gitlab v0.37.0 -> v0.38.1 * mvdan.cc/xurls v2.1.0 -> v2.2.0 Co-authored-by: Lauris BH <lauris@nix.lv>
Diffstat (limited to 'vendor/github.com/xanzy/go-gitlab/groups.go')
-rw-r--r--vendor/github.com/xanzy/go-gitlab/groups.go152
1 files changed, 152 insertions, 0 deletions
diff --git a/vendor/github.com/xanzy/go-gitlab/groups.go b/vendor/github.com/xanzy/go-gitlab/groups.go
index 8706f6be97..1b8a0bea82 100644
--- a/vendor/github.com/xanzy/go-gitlab/groups.go
+++ b/vendor/github.com/xanzy/go-gitlab/groups.go
@@ -471,3 +471,155 @@ func (s *GroupsService) DeleteGroupLDAPLinkForProvider(gid interface{}, provider
return s.client.Do(req, nil)
}
+
+// GroupPushRules represents a group push rule.
+//
+// GitLab API docs:
+// https://docs.gitlab.com/ee/api/groups.html#get-group-push-rules
+type GroupPushRules struct {
+ ID int `json:"id"`
+ CreatedAt *time.Time `json:"created_at"`
+ CommitMessageRegex string `json:"commit_message_regex"`
+ CommitMessageNegativeRegex string `json:"commit_message_negative_regex"`
+ BranchNameRegex string `json:"branch_name_regex"`
+ DenyDeleteTag bool `json:"deny_delete_tag"`
+ MemberCheck bool `json:"member_check"`
+ PreventSecrets bool `json:"prevent_secrets"`
+ AuthorEmailRegex string `json:"author_email_regex"`
+ FileNameRegex string `json:"file_name_regex"`
+ MaxFileSize int `json:"max_file_size"`
+ CommitCommitterCheck bool `json:"commit_committer_check"`
+ RejectUnsignedCommits bool `json:"reject_unsigned_commits"`
+}
+
+// GetGroupPushRules gets the push rules of a group.
+//
+// GitLab API docs:
+// https://docs.gitlab.com/ee/api/groups.html#get-group-push-rules
+func (s *GroupsService) GetGroupPushRules(gid interface{}, options ...RequestOptionFunc) (*GroupPushRules, *Response, error) {
+ group, err := parseID(gid)
+ if err != nil {
+ return nil, nil, err
+ }
+ u := fmt.Sprintf("groups/%s/push_rule", pathEscape(group))
+
+ req, err := s.client.NewRequest("GET", u, nil, options)
+ if err != nil {
+ return nil, nil, err
+ }
+
+ gpr := new(GroupPushRules)
+ resp, err := s.client.Do(req, gpr)
+ if err != nil {
+ return nil, resp, err
+ }
+
+ return gpr, resp, err
+}
+
+// AddGroupPushRuleOptions represents the available AddGroupPushRule()
+// options.
+//
+// GitLab API docs:
+// https://docs.gitlab.com/ee/api/groups.html#add-group-push-rule
+type AddGroupPushRuleOptions struct {
+ DenyDeleteTag *bool `url:"deny_delete_tag,omitempty" json:"deny_delete_tag,omitempty"`
+ MemberCheck *bool `url:"member_check,omitempty" json:"member_check,omitempty"`
+ PreventSecrets *bool `url:"prevent_secrets,omitempty" json:"prevent_secrets,omitempty"`
+ CommitMessageRegex *string `url:"commit_message_regex,omitempty" json:"commit_message_regex,omitempty"`
+ CommitMessageNegativeRegex *string `url:"commit_message_negative_regex,omitempty" json:"commit_message_negative_regex,omitempty"`
+ BranchNameRegex *string `url:"branch_name_regex,omitempty" json:"branch_name_regex,omitempty"`
+ AuthorEmailRegex *string `url:"author_email_regex,omitempty" json:"author_email_regex,omitempty"`
+ FileNameRegex *string `url:"file_name_regex,omitempty" json:"file_name_regex,omitempty"`
+ MaxFileSize *int `url:"max_file_size,omitempty" json:"max_file_size,omitempty"`
+ CommitCommitterCheck *bool `url:"commit_committer_check,omitempty" json:"commit_committer_check,omitempty"`
+ RejectUnsignedCommits *bool `url:"reject_unsigned_commits,omitempty" json:"reject_unsigned_commits,omitempty"`
+}
+
+// AddGroupPushRule adds push rules to the specified group.
+//
+// GitLab API docs:
+// https://docs.gitlab.com/ee/api/groups.html#add-group-push-rule
+func (s *GroupsService) AddGroupPushRule(gid interface{}, opt *AddGroupPushRuleOptions, options ...RequestOptionFunc) (*GroupPushRules, *Response, error) {
+ group, err := parseID(gid)
+ if err != nil {
+ return nil, nil, err
+ }
+ u := fmt.Sprintf("groups/%s/push_rule", pathEscape(group))
+
+ req, err := s.client.NewRequest("POST", u, opt, options)
+ if err != nil {
+ return nil, nil, err
+ }
+
+ gpr := new(GroupPushRules)
+ resp, err := s.client.Do(req, gpr)
+ if err != nil {
+ return nil, resp, err
+ }
+
+ return gpr, resp, err
+}
+
+// EditGroupPushRuleOptions represents the available EditGroupPushRule()
+// options.
+//
+// GitLab API docs:
+// https://docs.gitlab.com/ee/api/groups.html#edit-group-push-rule
+type EditGroupPushRuleOptions struct {
+ DenyDeleteTag *bool `url:"deny_delete_tag,omitempty" json:"deny_delete_tag,omitempty"`
+ MemberCheck *bool `url:"member_check,omitempty" json:"member_check,omitempty"`
+ PreventSecrets *bool `url:"prevent_secrets,omitempty" json:"prevent_secrets,omitempty"`
+ CommitMessageRegex *string `url:"commit_message_regex,omitempty" json:"commit_message_regex,omitempty"`
+ CommitMessageNegativeRegex *string `url:"commit_message_negative_regex,omitempty" json:"commit_message_negative_regex,omitempty"`
+ BranchNameRegex *string `url:"branch_name_regex,omitempty" json:"branch_name_regex,omitempty"`
+ AuthorEmailRegex *string `url:"author_email_regex,omitempty" json:"author_email_regex,omitempty"`
+ FileNameRegex *string `url:"file_name_regex,omitempty" json:"file_name_regex,omitempty"`
+ MaxFileSize *int `url:"max_file_size,omitempty" json:"max_file_size,omitempty"`
+ CommitCommitterCheck *bool `url:"commit_committer_check,omitempty" json:"commit_committer_check,omitempty"`
+ RejectUnsignedCommits *bool `url:"reject_unsigned_commits,omitempty" json:"reject_unsigned_commits,omitempty"`
+}
+
+// EditGroupPushRule edits a push rule for a specified group.
+//
+// GitLab API docs:
+// https://docs.gitlab.com/ee/api/groups.html#edit-group-push-rule
+func (s *GroupsService) EditGroupPushRule(gid interface{}, opt *EditGroupPushRuleOptions, options ...RequestOptionFunc) (*GroupPushRules, *Response, error) {
+ group, err := parseID(gid)
+ if err != nil {
+ return nil, nil, err
+ }
+ u := fmt.Sprintf("groups/%s/push_rule", pathEscape(group))
+
+ req, err := s.client.NewRequest("PUT", u, opt, options)
+ if err != nil {
+ return nil, nil, err
+ }
+
+ gpr := new(GroupPushRules)
+ resp, err := s.client.Do(req, gpr)
+ if err != nil {
+ return nil, resp, err
+ }
+
+ return gpr, resp, err
+}
+
+// DeleteGroupPushRule deletes the push rules of a group.
+//
+// GitLab API docs:
+// https://docs.gitlab.com/ee/api/groups.html#delete-group-push-rule
+func (s *GroupsService) DeleteGroupPushRule(gid interface{}, options ...RequestOptionFunc) (*Response, error) {
+ group, err := parseID(gid)
+ if err != nil {
+ return nil, err
+ }
+ u := fmt.Sprintf("groups/%s/push_rule", pathEscape(group))
+
+ req, err := s.client.NewRequest("DELETE", u, nil, options)
+ if err != nil {
+ return nil, err
+ }
+
+ return s.client.Do(req, nil)
+}