1
0
mirror of https://github.com/goreleaser/goreleaser.git synced 2025-01-06 03:13:48 +02:00
goreleaser/internal/pipe/slack
fredbi 905a1640f1
feat(announce): added Slack notification options (#2988)
* feat(announce): added Slack notification options

This feature adds support for specifying a richer content in Slack
announcements. We may now specify "blocks" and "attachments" to produce
better-looking announcement messages.

* fixes #2986

The goreleaser configuration only exposes the top-level structures and does not
check the validity of the Slack API internal structures. This way, we do
not inject hard dependencies on changes in the Slack API.

Notice: untyped config parsing introduces a little hack to have yaml and
JSON marshaling work together properly. This hack won't be necessary
with yaml.v3.

How this has been tested?
-------------------------

* Added unit tests for the config parsing
* Added a (skipped) e2e test.
  For now, this requires a valid Slack webhook, so I've been able to test this manually.

Signed-off-by: Frederic BIDON <fredbi@yahoo.com>

* added more unit tests

Signed-off-by: Frederic BIDON <fredbi@yahoo.com>

* removed yaml.v2 hack

Signed-off-by: Frederic BIDON <fredbi@yahoo.com>
2022-03-30 09:42:59 -03:00
..
slack_test.go feat(announce): added Slack notification options (#2988) 2022-03-30 09:42:59 -03:00
slack.go feat(announce): added Slack notification options (#2988) 2022-03-30 09:42:59 -03:00