diff --git a/models/update.go b/models/update.go index 41aa98e0a35..789b99e7b24 100644 --- a/models/update.go +++ b/models/update.go @@ -15,6 +15,7 @@ import ( "code.gitea.io/gitea/modules/log" ) +// UpdateTask defines an UpdateTask type UpdateTask struct { ID int64 `xorm:"pk autoincr"` UUID string `xorm:"index"` @@ -23,6 +24,7 @@ type UpdateTask struct { NewCommitID string } +// AddUpdateTask adds an UpdateTask func AddUpdateTask(task *UpdateTask) error { _, err := x.Insert(task) return err @@ -42,6 +44,7 @@ func GetUpdateTaskByUUID(uuid string) (*UpdateTask, error) { return task, nil } +// DeleteUpdateTaskByUUID deletes an UpdateTask from the database func DeleteUpdateTaskByUUID(uuid string) error { _, err := x.Delete(&UpdateTask{UUID: uuid}) return err @@ -60,6 +63,7 @@ func CommitToPushCommit(commit *git.Commit) *PushCommit { } } +// ListToPushCommits transforms a list.List to PushCommits type. func ListToPushCommits(l *list.List) *PushCommits { commits := make([]*PushCommit, 0) var actEmail string @@ -73,6 +77,7 @@ func ListToPushCommits(l *list.List) *PushCommits { return &PushCommits{l.Len(), commits, "", nil} } +// PushUpdateOptions defines the push update options type PushUpdateOptions struct { PusherID int64 PusherName string diff --git a/models/webhook_slack.go b/models/webhook_slack.go index 9b70b093543..f6b2a70f93a 100644 --- a/models/webhook_slack.go +++ b/models/webhook_slack.go @@ -16,6 +16,7 @@ import ( "code.gitea.io/gitea/modules/setting" ) +// SlackMeta contains the slack metdata type SlackMeta struct { Channel string `json:"channel"` Username string `json:"username"` @@ -23,6 +24,7 @@ type SlackMeta struct { Color string `json:"color"` } +// SlackPayload contains the information about the slack channel type SlackPayload struct { Channel string `json:"channel"` Text string `json:"text"` @@ -33,6 +35,7 @@ type SlackPayload struct { Attachments []SlackAttachment `json:"attachments"` } +// SlackAttachment contains the slack message type SlackAttachment struct { Fallback string `json:"fallback"` Color string `json:"color"` @@ -40,8 +43,10 @@ type SlackAttachment struct { Text string `json:"text"` } +// SetSecret sets the slack secret func (p *SlackPayload) SetSecret(_ string) {} +// JSONPayload Marshals the SlackPayload to json func (p *SlackPayload) JSONPayload() ([]byte, error) { data, err := json.MarshalIndent(p, "", " ") if err != nil { @@ -50,6 +55,7 @@ func (p *SlackPayload) JSONPayload() ([]byte, error) { return data, nil } +// SlackTextFormatter replaces &, <, > with HTML characters // see: https://api.slack.com/docs/formatting func SlackTextFormatter(s string) string { // replace & < > @@ -59,6 +65,7 @@ func SlackTextFormatter(s string) string { return s } +// SlackShortTextFormatter replaces &, <, > with HTML characters func SlackShortTextFormatter(s string) string { s = strings.Split(s, "\n")[0] // replace & < > @@ -68,6 +75,7 @@ func SlackShortTextFormatter(s string) string { return s } +// SlackLinkFormatter creates a link compatablie with slack func SlackLinkFormatter(url string, text string) string { return fmt.Sprintf("<%s|%s>", url, SlackTextFormatter(text)) } @@ -181,6 +189,7 @@ func getSlackPullRequestPayload(p *api.PullRequestPayload, slack *SlackMeta) (*S }, nil } +// GetSlackPayload converts a slack webhook into a SlackPayload func GetSlackPayload(p api.Payloader, event HookEventType, meta string) (*SlackPayload, error) { s := new(SlackPayload)