Fix multiple channel support for Slack apps #368
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
With the way slack apps work now, one of the limitations of the slack integration is that the webhook is specific to a single channel, so you need to configure slack apps with one webhook per channel you can post on.
Right now, specifying one or more channels in a check configuration does nothing with such an integration, because slack will post to the channel that's associated with the webhook, not the channel specified in the payload.
This PR tweaks the configuration so the slack_webhook_url config can either take a string (for the current behavior) or a mapping of slack channel -> webhook URL in form of a hash.
When sending the webhook, the new code will check whether a url is configured for this channel before sending it.