Commit f7918674 authored by Douglas Barbosa Alexandre's avatar Douglas Barbosa Alexandre

Merge branch 'issue_25887' into 'master'

Do not override incoming webhook channel for mattermost and slack

Closes #25887

See merge request !8270
parents 09af8833 d54d5465
......@@ -49,11 +49,13 @@ class ChatNotificationService < Service
return false unless message
opt = {}
channel_name = get_channel_field(object_kind).presence || channel
opt[:channel] = get_channel_field(object_kind).presence || channel || default_channel
opt[:username] = username if username
notifier = Slack::Notifier.new(webhook, opt)
opts = {}
opts[:channel] = channel_name if channel_name
opts[:username] = username if username
notifier = Slack::Notifier.new(webhook, opts)
notifier.ping(message.pretext, attachments: message.attachments, fallback: message.fallback)
true
......@@ -71,7 +73,7 @@ class ChatNotificationService < Service
fields.reject { |field| field[:name].end_with?('channel') }
end
def default_channel
def default_channel_placeholder
raise NotImplementedError
end
......@@ -103,7 +105,7 @@ class ChatNotificationService < Service
def build_event_channels
supported_events.reduce([]) do |channels, event|
channels << { type: 'text', name: event_channel_name(event), placeholder: default_channel }
channels << { type: 'text', name: event_channel_name(event), placeholder: default_channel_placeholder }
end
end
......
......@@ -35,7 +35,7 @@ class MattermostService < ChatNotificationService
]
end
def default_channel
def default_channel_placeholder
"#town-square"
end
end
......@@ -34,7 +34,7 @@ class SlackService < ChatNotificationService
]
end
def default_channel
def default_channel_placeholder
"#general"
end
end
---
title: Do not override incoming webhook for mattermost and slack
merge_request:
author:
......@@ -105,7 +105,7 @@ RSpec.shared_examples 'slack or mattermost notifications' do
allow(chat_service).to receive(:username).and_return(username)
expect(Slack::Notifier).to receive(:new).
with(webhook_url, username: username, channel: chat_service.default_channel).
with(webhook_url, username: username).
and_return(
double(:slack_service).as_null_object
)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment