Skip to content

Add QA rake and notifier classes

Mayra Cabrera requested to merge add-qa-rake-classes into master

What does this MR do?

Introduces new Quality classes:

  • A rake task to trigger quality pipelines on quality/staging and quality/gitlab_qa
  • A notifier that sends Slack notifications when QA fails.

Context for the QA Notifier

As part of gitlab-com/gl-infra/delivery#1490 (closed), quality jobs will be extracted into the coordinated pipeline, as such, besides the current notifications, we also need to deal with notifications when fails:

When deployment and QA are both successful When deployment fails When deployment succeeds and QA fails
Screen_Shot_2021-12-03_at_17.22.17 Screen_Shot_2021-12-03_at_17.22.46 Screen_Shot_2021-12-03_at_17.24.02
Notification stays the same Notification stays the same (QA is not executed in this case) New notification

Re-using the "deployment failed" notification for QA failures is not feasible for two reasons:

  1. Deployment failed notification links to the deployer pipeline, not to the coordinated pipeline.
  2. CI configuration gets complicated, I couldn't find a way to execute notify_failure:* when a deployment and QA fails; e.g. when a deployment to staging fails (notify_failure:gstg job is executed here), it's retried successfully, and then QA is executed and fails, in this case, another failure notification needs to be sent, but we can't re-trigger notify_failure:gstg since it was already executed.

Author Check-list

  • [-] Has documentation been updated?
Edited by Mayra Cabrera

Merge request reports

Loading