Documentation
¶
Index ¶
- Variables
- type BuildListener
- type CommitCommentListener
- type DeploymentListener
- type DispatchRequestOption
- type Dispatcher
- func (d *Dispatcher) Dispatch(ctx context.Context, event any) error
- func (d *Dispatcher) DispatchRequest(req *http.Request, opts ...DispatchRequestOption) error
- func (d *Dispatcher) DispatchWebhook(ctx context.Context, eventType gitlab.EventType, payload []byte) error
- func (d *Dispatcher) RegisterBuildListener(listeners ...BuildListener)
- func (d *Dispatcher) RegisterCommitCommentListener(listeners ...CommitCommentListener)
- func (d *Dispatcher) RegisterDeploymentListener(listeners ...DeploymentListener)
- func (d *Dispatcher) RegisterEmojiListener(listeners ...EmojiListener)
- func (d *Dispatcher) RegisterFeatureFlagListener(listeners ...FeatureFlagListener)
- func (d *Dispatcher) RegisterGroupResourceAccessTokenListener(listeners ...GroupResourceAccessTokenListener)
- func (d *Dispatcher) RegisterIssueCommentListener(listeners ...IssueCommentListener)
- func (d *Dispatcher) RegisterIssueListener(listeners ...IssueListener)
- func (d *Dispatcher) RegisterJobListener(listeners ...JobListener)
- func (d *Dispatcher) RegisterListeners(listeners ...any)
- func (d *Dispatcher) RegisterMemberListener(listeners ...MemberListener)
- func (d *Dispatcher) RegisterMergeCommentListener(listeners ...MergeCommentListener)
- func (d *Dispatcher) RegisterMergeListener(listeners ...MergeListener)
- func (d *Dispatcher) RegisterPipelineListener(listeners ...PipelineListener)
- func (d *Dispatcher) RegisterProjectResourceAccessTokenListener(listeners ...ProjectResourceAccessTokenListener)
- func (d *Dispatcher) RegisterPushListener(listeners ...PushListener)
- func (d *Dispatcher) RegisterReleaseListener(listeners ...ReleaseListener)
- func (d *Dispatcher) RegisterSnippetCommentListener(listeners ...SnippetCommentListener)
- func (d *Dispatcher) RegisterSubGroupListener(listeners ...SubGroupListener)
- func (d *Dispatcher) RegisterTagListener(listeners ...TagListener)
- func (d *Dispatcher) RegisterWikiPageListener(listeners ...WikiPageListener)
- type EmojiAttributes
- type EmojiEvent
- type EmojiListener
- type EmojiProject
- type EmojiUser
- type FeatureFlagListener
- type GroupResourceAccessTokenListener
- type IssueCommentListener
- type IssueListener
- type JobListener
- type MemberListener
- type MergeCommentListener
- type MergeListener
- type Option
- type PipelineListener
- type ProjectResourceAccessTokenListener
- type PushListener
- type ReleaseListener
- type SnippetCommentListener
- type SubGroupListener
- type TagListener
- type WikiPageListener
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrUnsupportedEvent = errors.New("gitlab-webhook: unsupported event type") ErrInvalidToken = errors.New("gitlab-webhook: invalid token") )
Functions ¶
This section is empty.
Types ¶
type BuildListener ¶
type BuildListener interface {
OnBuild(ctx context.Context, event *gitlab.BuildEvent) error
}
type CommitCommentListener ¶
type CommitCommentListener interface {
OnCommitComment(ctx context.Context, event *gitlab.CommitCommentEvent) error
}
type DeploymentListener ¶
type DeploymentListener interface {
OnDeployment(ctx context.Context, event *gitlab.DeploymentEvent) error
}
type DispatchRequestOption ¶
type DispatchRequestOption func(*dispatchRequestOptions)
func DispatchRequestWithContext ¶
func DispatchRequestWithContext(ctx context.Context) DispatchRequestOption
func DispatchRequestWithToken ¶
func DispatchRequestWithToken(token string) DispatchRequestOption
type Dispatcher ¶
type Dispatcher struct {
// contains filtered or unexported fields
}
func NewDispatcher ¶
func NewDispatcher(opts ...Option) *Dispatcher
func (*Dispatcher) DispatchRequest ¶
func (d *Dispatcher) DispatchRequest(req *http.Request, opts ...DispatchRequestOption) error
func (*Dispatcher) DispatchWebhook ¶
func (*Dispatcher) RegisterBuildListener ¶
func (d *Dispatcher) RegisterBuildListener(listeners ...BuildListener)
func (*Dispatcher) RegisterCommitCommentListener ¶
func (d *Dispatcher) RegisterCommitCommentListener(listeners ...CommitCommentListener)
func (*Dispatcher) RegisterDeploymentListener ¶
func (d *Dispatcher) RegisterDeploymentListener(listeners ...DeploymentListener)
func (*Dispatcher) RegisterEmojiListener ¶
func (d *Dispatcher) RegisterEmojiListener(listeners ...EmojiListener)
func (*Dispatcher) RegisterFeatureFlagListener ¶
func (d *Dispatcher) RegisterFeatureFlagListener(listeners ...FeatureFlagListener)
func (*Dispatcher) RegisterGroupResourceAccessTokenListener ¶
func (d *Dispatcher) RegisterGroupResourceAccessTokenListener(listeners ...GroupResourceAccessTokenListener)
func (*Dispatcher) RegisterIssueCommentListener ¶
func (d *Dispatcher) RegisterIssueCommentListener(listeners ...IssueCommentListener)
func (*Dispatcher) RegisterIssueListener ¶
func (d *Dispatcher) RegisterIssueListener(listeners ...IssueListener)
func (*Dispatcher) RegisterJobListener ¶
func (d *Dispatcher) RegisterJobListener(listeners ...JobListener)
func (*Dispatcher) RegisterListeners ¶
func (d *Dispatcher) RegisterListeners(listeners ...any)
func (*Dispatcher) RegisterMemberListener ¶
func (d *Dispatcher) RegisterMemberListener(listeners ...MemberListener)
func (*Dispatcher) RegisterMergeCommentListener ¶
func (d *Dispatcher) RegisterMergeCommentListener(listeners ...MergeCommentListener)
func (*Dispatcher) RegisterMergeListener ¶
func (d *Dispatcher) RegisterMergeListener(listeners ...MergeListener)
func (*Dispatcher) RegisterPipelineListener ¶
func (d *Dispatcher) RegisterPipelineListener(listeners ...PipelineListener)
func (*Dispatcher) RegisterProjectResourceAccessTokenListener ¶
func (d *Dispatcher) RegisterProjectResourceAccessTokenListener(listeners ...ProjectResourceAccessTokenListener)
func (*Dispatcher) RegisterPushListener ¶
func (d *Dispatcher) RegisterPushListener(listeners ...PushListener)
func (*Dispatcher) RegisterReleaseListener ¶
func (d *Dispatcher) RegisterReleaseListener(listeners ...ReleaseListener)
func (*Dispatcher) RegisterSnippetCommentListener ¶
func (d *Dispatcher) RegisterSnippetCommentListener(listeners ...SnippetCommentListener)
func (*Dispatcher) RegisterSubGroupListener ¶
func (d *Dispatcher) RegisterSubGroupListener(listeners ...SubGroupListener)
func (*Dispatcher) RegisterTagListener ¶
func (d *Dispatcher) RegisterTagListener(listeners ...TagListener)
func (*Dispatcher) RegisterWikiPageListener ¶
func (d *Dispatcher) RegisterWikiPageListener(listeners ...WikiPageListener)
type EmojiAttributes ¶
type EmojiAttributes struct {
UserID int `json:"user_id"`
CreatedAt time.Time `json:"created_at"`
ID int `json:"id"`
Name string `json:"name"`
AwardableType string `json:"awardable_type"`
AwardableID int `json:"awardable_id"`
UpdatedAt time.Time `json:"updated_at"`
AwardedOnURL string `json:"awarded_on_url"`
}
EmojiAttributes represents the attributes of the emoji/award
type EmojiEvent ¶
type EmojiEvent struct {
ObjectKind string `json:"object_kind"`
EventType string `json:"event_type"`
User *EmojiUser `json:"user"`
ProjectID int `json:"project_id"`
Project *EmojiProject `json:"project"`
ObjectAttr *EmojiAttributes `json:"object_attributes"`
}
EmojiEvent represents an emoji/award event from GitLab
type EmojiListener ¶
type EmojiListener interface {
OnEmoji(ctx context.Context, event *EmojiEvent) error
}
type EmojiProject ¶
type EmojiProject 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"`
}
EmojiProject represents the project where the emoji was awarded
type EmojiUser ¶
type EmojiUser struct {
ID int `json:"id"`
Name string `json:"name"`
Username string `json:"username"`
AvatarURL string `json:"avatar_url"`
Email string `json:"email"`
}
EmojiUser represents the user who awarded the emoji
type FeatureFlagListener ¶
type FeatureFlagListener interface {
OnFeatureFlag(ctx context.Context, event *gitlab.FeatureFlagEvent) error
}
type GroupResourceAccessTokenListener ¶
type GroupResourceAccessTokenListener interface {
OnGroupResourceAccessToken(ctx context.Context, event *gitlab.GroupResourceAccessTokenEvent) error
}
type IssueCommentListener ¶
type IssueCommentListener interface {
OnIssueComment(ctx context.Context, event *gitlab.IssueCommentEvent) error
}
type IssueListener ¶
type IssueListener interface {
OnIssue(ctx context.Context, event *gitlab.IssueEvent) error
}
type JobListener ¶
type MemberListener ¶
type MemberListener interface {
OnMember(ctx context.Context, event *gitlab.MemberEvent) error
}
type MergeCommentListener ¶
type MergeCommentListener interface {
OnMergeComment(ctx context.Context, event *gitlab.MergeCommentEvent) error
}
type MergeListener ¶
type MergeListener interface {
OnMerge(ctx context.Context, event *gitlab.MergeEvent) error
}
type PipelineListener ¶
type PipelineListener interface {
OnPipeline(ctx context.Context, event *gitlab.PipelineEvent) error
}
type ProjectResourceAccessTokenListener ¶
type ProjectResourceAccessTokenListener interface {
OnProjectResourceAccessToken(ctx context.Context, event *gitlab.ProjectResourceAccessTokenEvent) error
}
type PushListener ¶
type ReleaseListener ¶
type ReleaseListener interface {
OnRelease(ctx context.Context, event *gitlab.ReleaseEvent) error
}
type SnippetCommentListener ¶
type SnippetCommentListener interface {
OnSnippetComment(ctx context.Context, event *gitlab.SnippetCommentEvent) error
}
type SubGroupListener ¶
type SubGroupListener interface {
OnSubGroup(ctx context.Context, event *gitlab.SubGroupEvent) error
}
type TagListener ¶
type WikiPageListener ¶
type WikiPageListener interface {
OnWikiPage(ctx context.Context, event *gitlab.WikiPageEvent) error
}
Click to show internal directories.
Click to hide internal directories.