# Functions
AddLabelToComment adds a label to the tracking comment.
CreateLabelComment creates the appropriate comment structure for the relevant labels.
DeleteLabelFromComment removes a label from the tracking comment.
GetLabelReportComment gets the scm.Comment, if present, containing the label report.
GetLabelsFromComment extracts the applied "labels" from a pull request from a comment.
HasLabel checks if label is in the label set "issueLabels".
ImageTooBig checks if image is bigger than github limits.
NewTestClientForLabelsInComments returns a test client specifically for testing the scenario of labels not being available.
NoLabelProviders returns a set of provider names that don't support labels.
PushHookBranch returns the name of the branch to which the user pushed.
ToClient converts the scm client to an API that the prow plugins expect.
ToTestClient converts the scm client to an API that the prow plugins expect.
# Constants
Possible review actions.
Possible review actions.
EventGUID is sent by Github in a header of every webhook request.
"opened", "submitted".
"dismissed".
GenericCommentActionEdited means something was edited.
IssueActionAssigned means assignees were added.
IssueActionClosed means issue was closed.
IssueActionDemilestoned means a milestone was removed.
IssueActionEdited means issue body was edited.
IssueActionLabeled means labels were added.
IssueActionMilestoned means the milestone was added/changed.
IssueActionOpened means issue was opened/created.
IssueActionReopened means issue was reopened.
IssueActionUnassigned means assignees were added.
IssueActionUnlabeled means labels were removed.
OrgLogField is the organization of a PR.
PrLogField is the number of a PR.
RepoLogField is the repository of a PR.
Possible review actions.
RoleAdmin specifies the user is an org admin, or lists only admins.
RoleAll lists both members and admins.
RoleMaintainer specifies the user is a team maintainer, or lists only maintainers.
RoleMember specifies the user is a regular user, or only lists regular users.
SearchTimeFormat is a time.Time format string for ISO8601 which is the format that GitHub requires for times specified as part of a search query.
StateActive specifies the user's membership is active.
StatePending specifies the user has an invitation to the org/team.
These are possible State entries for a Status.
These are possible State entries for a Status.
These are possible State entries for a Status.
These are possible State entries for a Status.
# Variables
FoundingYear is the year GitHub was founded.
NormLogin normalizes GitHub login strings.
TestBotName is the default bot name used in tests.
# Structs
Client represents an interface that prow plugins expect on top of go-scm.
DraftReview is what we give GitHub when we want to make a PR Review.
DraftReviewComment is a comment in a draft review.
FileNotFound happens when github cannot find the file requested by GetFile().
GenericCommentEvent is a fake event type that is instantiated for any github event that contains comment like content.
MergeDetails optional extra parameters.
MissingUsers is an error specifying the users that could not be unassigned.
RateLimits contains rate limit information.
Status is used to set a commit status line.
TestClient uses the go-scm fake client behind the scenes and allows access to its test data.
# Interfaces
SCMClient is an interface providing all functions on the Client struct.
# Type aliases
GenericCommentEventAction coerces multiple actions into its generic equivalent.
IssueEventAction enumerates the triggers for this webhook payload type.
MergeCommitsForbiddenError happens when the repo disallows the merge strategy configured for the repo in Keeper.
ModifiedHeadError happens when github refuses to merge a PR because the PR changed.
ReviewAction is the action that a review can be made with.
UnauthorizedToPushError happens when client is not allowed to push to github.
UnmergablePRBaseChangedError happens when github refuses merging a PR because the base changed.
UnmergablePRError happens when github refuses to merge a PR for other reasons (merge confclit).