Refactor release pipeline notifiers

What does this MR do and why?

Refactors two slack notifiers out of the Security namespace to be used more broadly:

  • ReleaseTools::Slack::Security::PipelineNotifier is refactored to ReleaseTools::Slack::ReleasePipelineStartNotifier
  • ReleaseTools::Slack::Security::Notifier is refactored to ReleaseTools::Slack::ReleaseJobEndNotifier

An additional param release_type has been added to each class to allow them to accept an argument for different releases (monthly, security, etc). The monthly release option will be used in a subsequent MR for gitlab-com/gl-infra/delivery#19546 (closed).

It looks like a lot of changes, but most are due to the main class and spec files being moved, see my inline comments about what has actually changed in each class.

If it helps when reviewing, I've split the refactor into 2 commits, one for the ReleaseTools::Slack::PipelineNotifier and one for ReleaseTools::Slack::ReleasePipelineNotifier.

Related to gitlab-com/gl-infra/delivery#19546 (closed).

Author Check-list

  • Has documentation been updated?
Edited by Steve Abrams

Merge request reports

Loading