|
36 | 36 | SlackAPIToken string // Slack API Token
|
37 | 37 | ChannelPrefix string // Slack channel prefix
|
38 | 38 | Verbose bool // Enable verbose mode
|
| 39 | + ShowAllCommits bool // Show all commits rather than latest |
39 | 40 | HttpTimeout int // Http timeout in second
|
40 | 41 | Redirect []struct { // List of channel redirect
|
41 | 42 | Channel string
|
@@ -85,6 +86,7 @@ func LoadConf() {
|
85 | 86 | SlackAPIToken string
|
86 | 87 | ChannelPrefix string
|
87 | 88 | Verbose bool
|
| 89 | + ShowAllCommits bool |
88 | 90 | HttpTimeout float64
|
89 | 91 | Redirect []struct {
|
90 | 92 | Channel string
|
@@ -113,6 +115,7 @@ func LoadConf() {
|
113 | 115 | SlackAPIToken = conf.SlackAPIToken
|
114 | 116 | ChannelPrefix = conf.ChannelPrefix
|
115 | 117 | Verbose = conf.Verbose
|
| 118 | + ShowAllCommits = conf.ShowAllCommits |
116 | 119 | HttpTimeout = int(conf.HttpTimeout)
|
117 | 120 | Redirect = conf.Redirect
|
118 | 121 | }
|
@@ -344,9 +347,19 @@ func (s *PushServ) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
344 | 347 |
|
345 | 348 | // Message
|
346 | 349 | lastCommit := j.Commits[len(j.Commits)-1]
|
347 |
| - message += "[PUSH] " + n + "Push on *" + j.Repository.Name + "* by *" + j.User_name + "* at *" + dateString + "* on branch *" + j.Ref + "*:" + n // First line |
348 |
| - message += "Last commit : <" + lastCommit.Url + "|" + lastCommit.Id + "> :" + n // Second line |
349 |
| - message += "```" + MessageEncode(lastCommit.Message) + "```" // Third line (last commit message) |
| 350 | + commitCount := strconv.FormatFloat(j.Total_commits_count, 'f', 0, 64) |
| 351 | + if ShowAllCommits { |
| 352 | + message += "Push on *" + j.Repository.Name + "* by *" + j.User_name + "* at *" + dateString + "* on branch *" + j.Ref + "*:" + n // First line |
| 353 | + message += commitCount + "commits :" + n // Second line |
| 354 | + for i := range j.Commits { |
| 355 | + c := j.Commits[i] |
| 356 | + message += "<" + c.Url + "|" + c.Id[0:7] + ">: " + "_" + MessageEncode(c.Message) + "_" + n |
| 357 | + } |
| 358 | + } else { |
| 359 | + message += "[PUSH] " + n + "Push on *" + j.Repository.Name + "* by *" + j.User_name + "* at *" + dateString + "* on branch *" + j.Ref + "*:" + n // First line |
| 360 | + message += "Last commit : <" + lastCommit.Url + "|" + lastCommit.Id + "> :" + n // Second line |
| 361 | + message += "```" + MessageEncode(lastCommit.Message) + "```" // Third line (last commit message) |
| 362 | + } |
350 | 363 | SendSlackMessage(j.Repository.Name, message, Push)
|
351 | 364 | }
|
352 | 365 | }
|
|
0 commit comments