Documentation ¶
Index ¶
- Constants
- func CheckLabelUpdate(e *gitlab.MergeEvent) (labelUpdated bool)
- func CheckSourceBranchChanged(e *gitlab.MergeEvent) (changed bool)
- func GetIssueAuthor(e *gitlab.IssueEvent) (author string)
- func GetIssueCommentAuthor(e *gitlab.IssueCommentEvent) (author string)
- func GetIssueCommentAuthorID(e *gitlab.IssueCommentEvent) (authorID int)
- func GetIssueCommentBody(e *gitlab.IssueCommentEvent) (comment string)
- func GetIssueCommentOrgAndRepo(e *gitlab.IssueCommentEvent) (org, repo string)
- func GetIssueNumber(e *gitlab.IssueEvent) (issueID int)
- func GetIssueOrgAndRepo(e *gitlab.IssueEvent) (org, repo string)
- func GetMRAuthor(e *gitlab.MergeEvent) (author string)
- func GetMRCommentAuthor(e *gitlab.MergeCommentEvent) (author string)
- func GetMRCommentAuthorID(e *gitlab.MergeCommentEvent) (authorID int)
- func GetMRCommentBody(e *gitlab.MergeCommentEvent) (comment string)
- func GetMRCommentOrgAndRepo(e *gitlab.MergeCommentEvent) (org, repo string)
- func GetMRNumber(e *gitlab.MergeEvent) (mrID int)
- func GetMROrgAndRepo(e *gitlab.MergeEvent) (org, repo string)
- func GetOrgRepo(orgPath string) (string, string)
- func ValidateWebhook(w http.ResponseWriter, r *http.Request, tokenGenerator func() string) (eType string, eventGUID string, ua string, payload []byte, ok bool, status int)
- type Client
- type ErrorForbidden
Constants ¶
View Source
const ( ActionOpened = "opened" ActionCreated = "created" ActionReopen = "reopened" ActionClosed = "closed" )
Variables ¶
This section is empty.
Functions ¶
func CheckLabelUpdate ¶
func CheckLabelUpdate(e *gitlab.MergeEvent) (labelUpdated bool)
func CheckSourceBranchChanged ¶
func CheckSourceBranchChanged(e *gitlab.MergeEvent) (changed bool)
func GetIssueAuthor ¶
func GetIssueAuthor(e *gitlab.IssueEvent) (author string)
func GetIssueCommentAuthor ¶
func GetIssueCommentAuthor(e *gitlab.IssueCommentEvent) (author string)
func GetIssueCommentAuthorID ¶
func GetIssueCommentAuthorID(e *gitlab.IssueCommentEvent) (authorID int)
func GetIssueCommentBody ¶
func GetIssueCommentBody(e *gitlab.IssueCommentEvent) (comment string)
func GetIssueCommentOrgAndRepo ¶
func GetIssueCommentOrgAndRepo(e *gitlab.IssueCommentEvent) (org, repo string)
func GetIssueNumber ¶
func GetIssueNumber(e *gitlab.IssueEvent) (issueID int)
func GetIssueOrgAndRepo ¶
func GetIssueOrgAndRepo(e *gitlab.IssueEvent) (org, repo string)
func GetMRAuthor ¶
func GetMRAuthor(e *gitlab.MergeEvent) (author string)
func GetMRCommentAuthor ¶
func GetMRCommentAuthor(e *gitlab.MergeCommentEvent) (author string)
func GetMRCommentAuthorID ¶
func GetMRCommentAuthorID(e *gitlab.MergeCommentEvent) (authorID int)
func GetMRCommentBody ¶
func GetMRCommentBody(e *gitlab.MergeCommentEvent) (comment string)
func GetMRCommentOrgAndRepo ¶
func GetMRCommentOrgAndRepo(e *gitlab.MergeCommentEvent) (org, repo string)
func GetMRNumber ¶
func GetMRNumber(e *gitlab.MergeEvent) (mrID int)
func GetMROrgAndRepo ¶
func GetMROrgAndRepo(e *gitlab.MergeEvent) (org, repo string)
func GetOrgRepo ¶
GetOrgRepo return the owner and name of the project
func ValidateWebhook ¶
func ValidateWebhook( w http.ResponseWriter, r *http.Request, tokenGenerator func() string, ) (eType string, eventGUID string, ua string, payload []byte, ok bool, status int)
ValidateWebhook ensures that the provided request conforms to the format of a GitLab webhook and the payload can be validated with the provided hmac secret. It returns the event type, the event guid, the payload of the request, whether the webhook is valid or not, and finally the resultant HTTP status code
Types ¶
type Client ¶
type Client interface { UpdateMergeRequest(projectID interface{}, mrID int, options gitlab.UpdateMergeRequestOptions) (gitlab.MergeRequest, error) GetMergeRequest(projectID interface{}, mrID int) (gitlab.MergeRequest, error) ListCollaborators(projectID interface{}) ([]*gitlab.ProjectMember, error) IsCollaborator(projectID interface{}, loginID int) (bool, error) AddProjectMember(projectID interface{}, loginID interface{}, accessLevel int) error RemoveProjectMember(projectID interface{}, loginID int) error IsMember(groupID interface{}, userID int) (bool, error) GetMergeRequestChanges(projectID interface{}, mrID int) ([]string, error) GetMergeRequestLabels(projectID interface{}, mrID int) (gitlab.Labels, error) ListMergeRequestComments(projectID interface{}, mrID int) ([]*gitlab.Note, error) ListIssues(projectID interface{}) ([]*gitlab.Issue, error) ListIssueRelatedMergeRequest(projectID interface{}, issueID int) ([]*gitlab.MergeRequest, error) UpdateMergeRequestComment(projectID interface{}, mrID, noteID int, comment string) error CreateMergeRequestComment(projectID interface{}, mrID int, comment string) error DeleteMergeRequestComment(projectID interface{}, mrID int, noteID int) error AddMergeRequestLabel(projectID interface{}, mrID int, labels gitlab.Labels) error RemoveMergeRequestLabel(projectID interface{}, mrID int, labels gitlab.Labels) error ReplaceMergeRequestAllLabels(projectID interface{}, mrID int, labels gitlab.Labels) error ReopenMergeRequest(projectID interface{}, mrID int, state string) error CloseMergeRequest(projectID interface{}, mrID int, state string) error AssignMergeRequest(projectID interface{}, mrID int, ids []int) error UnAssignMergeRequest(projectID interface{}, mrID int, ids []int) error GetMergeRequestCommits(projectID interface{}, mrID int) ([]*gitlab.Commit, error) GetSingleRepoCommit(projectID interface{}, sha string) (*gitlab.Commit, error) MergeMergeRequest(projectID interface{}, mrID int) error GetGroups() ([]*gitlab.Group, error) GetProjects(gid interface{}) ([]*gitlab.Project, error) GetProject(projectID interface{}) (*gitlab.Project, error) CreateProject(opts gitlab.CreateProjectOptions) (*gitlab.Project, error) UpdateProject(projectID interface{}, opts gitlab.EditProjectOptions) error AddProjectLabel(projectID interface{}, label, color string) error UpdateProjectLabel(projectID interface{}, oldLabel, label, color string) error GetProjectLabels(projectID interface{}) ([]*gitlab.Label, error) AssignIssue(projectID interface{}, issueID int, assignees []int) error UpdateIssue(projectID interface{}, issueID int, opts gitlab.UpdateIssueOptions) error CreateIssue(projectID interface{}, opts gitlab.CreateIssueOptions) error UnAssignIssue(projectID interface{}, issueID int, assignees []int) error RemoveAssignIssue(projectID interface{}, issueID int) error CreateIssueComment(projectID interface{}, issueID int, comment string) error ListIssueComments(projectID interface{}, issueID int) ([]*gitlab.Note, error) UpdateIssueComment(projectID interface{}, issueID, noteID int, comment string) error RemoveIssueComment(projectID interface{}, issueID, noteID int) error GetIssueLabels(projectID interface{}, issueID int) ([]string, error) RemoveIssueLabels(projectID interface{}, issueID int, labels gitlab.Labels) error AddIssueLabels(projectID interface{}, issueID int, labels gitlab.Labels) error CloseIssue(projectID interface{}, issueID int) error ReopenIssue(projectID interface{}, issueID int) error GetSingleIssue(projectID interface{}, issueID int) (*gitlab.Issue, error) CreateBranch(projectID interface{}, branch, ref string) error GetProjectAllBranches(projectID interface{}) ([]*gitlab.Branch, error) SetProtectionBranch(projectID interface{}, branch string) error UnProtectBranch(projectID interface{}, branch string) error CreateFile(projectID interface{}, file string, opts gitlab.CreateFileOptions) error GetPathContent(projectID interface{}, file, branch string) (*gitlab.File, error) GetDirectoryTree(projectID interface{}, opts gitlab.ListTreeOptions) ([]*gitlab.TreeNode, error) GetUserPermissionOfProject(projectID interface{}, userID int) (bool, error) GetMergeRequestLabelChanges(projectID interface{}, mrID int) ([]*gitlab.LabelEvent, error) CreateProjectLabel(projectID interface{}, label, color string) error GetSingleUser(name string) int TransferProjectNameSpace(projectID interface{}, newNameSpace string) error PatchFile(projectID interface{}, filePath, content, branch, message string) error }
func NewGitlabClient ¶
type ErrorForbidden ¶
type ErrorForbidden struct {
// contains filtered or unexported fields
}
func (ErrorForbidden) Error ¶
func (e ErrorForbidden) Error() string
Click to show internal directories.
Click to hide internal directories.