Skip to content

Commit

Permalink
fix(notifications): include icon in slack legacy url (#1303)
Browse files Browse the repository at this point in the history
  • Loading branch information
Choromanski committed Aug 1, 2022
1 parent 08831f7 commit 489356a
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 0 deletions.
23 changes: 23 additions & 0 deletions pkg/notifications/notifier_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -149,6 +149,8 @@ var _ = Describe("notifications", func() {
color := notifications.ColorInt
data := notifications.GetTemplateData(command)
title := url.QueryEscape(data.Title)
username := "containrrrbot"
iconURL := "https://containrrr.dev/watchtower-sq180.png"
expected := fmt.Sprintf("discord://%s@%s?color=0x%x&colordebug=0x0&colorerror=0x0&colorinfo=0x0&colorwarn=0x0&title=%s&username=watchtower", token, channel, color, title)
buildArgs := func(url string) []string {
return []string{
Expand All @@ -167,6 +169,27 @@ var _ = Describe("notifications", func() {
hookURL := fmt.Sprintf("https://%s/api/webhooks/%s/%s/slack", "discordapp.com", channel, token)
testURL(buildArgs(hookURL), expected, time.Duration(0))
})
When("icon URL and username are specified", func() {
It("should return the expected URL", func() {
hookURL := fmt.Sprintf("https://%s/api/webhooks/%s/%s/slack", "discord.com", channel, token)
expectedOutput := fmt.Sprintf("discord://%s@%s?avatar=%s&color=0x%x&colordebug=0x0&colorerror=0x0&colorinfo=0x0&colorwarn=0x0&title=%s&username=%s", token, channel, url.QueryEscape(iconURL), color, title, username)
expectedDelay := time.Duration(7) * time.Second
args := []string{
"--notifications",
"slack",
"--notification-slack-hook-url",
hookURL,
"--notification-slack-identifier",
username,
"--notification-slack-icon-url",
iconURL,
"--notifications-delay",
fmt.Sprint(expectedDelay.Seconds()),
}

testURL(args, expectedOutput, expectedDelay)
})
})
})
When("converting a slack service config into a shoutrrr url", func() {
command := cmd.NewRootCommand()
Expand Down
5 changes: 5 additions & 0 deletions pkg/notifications/slack.go
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,11 @@ func (s *slackTypeNotifier) GetURL(c *cobra.Command, title string) (string, erro
SplitLines: true,
Username: s.Username,
}

if s.IconURL != "" {
conf.Avatar = s.IconURL
}

return conf.GetURL().String(), nil
}

Expand Down

0 comments on commit 489356a

Please sign in to comment.