Add slash command to page incident

Merged Rajendra Kadam requested to merge 330282-slash-command-for-escalation into master

What does this MR do and why?

Implements #330282 (closed)

Adds /page <escalation_policy_name> quick action command to page an incident with an escalation policy

Screenshots or screen recordings

page_command_demo

Query plan and execution

I ran this query on a sample project

https://console.postgres.ai/shared/4e2416e0-290d-41a4-83dd-6fd460d28846
Screenshot_2022-02-17_at_2.40.07_PM

How to set up and validate locally

  1. Add an escalation policy via UI as mentioned in !61815 (merged)

  2. Create a new issue of type incident.

  3. Type /page <escalation policy name from step 1> as a comment.

  4. Check flash messages and system notes when escalation is triggered.

  5. Check counter is increased for events in redis for tracking using the following line in rails console.

Gitlab::UsageDataCounters::HLLRedisCounter.unique_events(event_names: 'i_quickactions_page',
   start_date: Date.current.beginning_of_week, end_date: Date.current.next_week)

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Related to #330282 (closed)

Edited by Peter Leitzen