Add relevant E2E tests for group::respond features
It would be amazing to see the below workflows tested from end to end.
Basic alerts
- Setup HTTP integration (multiple integrations is GitLab Premium, single integration is GitLab Free)
- Send Test alert through the UI
- POST a separate test alert using the provided credentials
- Nav to alerts list & open newly created alert
- Change status to acknowledged
- Change assignee
- Create incident
- Add a todo & mark it done
- upload/edit name/delete metrics image (GitLab Premium)
- Re-open alerts list & change status to resolved from list
- View alert under “resolved” tab of alerts list
- Do above again for a prometheus integration (the integrations are different under the hood)
Recovery alerts
Basic alerts 1+2+7
- Send same test alert again with “end_time” key
- View alert under “resolved” tab of alerts list
- View incident state is Open & status is Triggered
- In alert settings, enable setting to auto-close associated incident for alert
- In alert settings, enable setting to automatically create new incidents for alerts
- POST new alert
- Send new test alert again with “end_time” key
- View alert under “resolved” tab of alerts list
- View new incident state is Closed & status is Resolved
Basic incidents
- create incident via
+
menu item at top of screen, and via theCreate incident
button in the incident list - add/remove linked resource (GitLab Premium)
- link to another or issue
- change severity
- add/remove todo
- add/remove milestone
- upload/edit name/delete metrics image (GitLab Premium)
- add/edit/delete timeline event
- edit description
- change type to regular issue & save
- change type back & save (see that data was preserved)
GitLab Premium)
Escalations & on-call (Old on-call run-through: https://www.youtube.com/watch?v=QXfCQ24-Ufo
- setup oncall schedule
- setup oncall rotation with end date & restricted intervals & >2 participants
- edit rotation
- edit schedule
- switch schedule view between week & day
- setup escalation policy with schedule rule & user rule to fire at 0 minutes & again at 1 minute
Basic alerts 1+2
- expect email notifications/system notes for each escalation rule
- change alert status to acknowledged
- expect no email notifications for each escalation rule in the next minute
- create new incident
- set status to resolved
- set escalation policy
- see status is changed to triggered & expect email notifications/system notes for each escalation rule
- set status to resolved
- expect no email notifications for each escalation rule in the next minute
- delete rotation
- delete schedule
- delete escalation policy
GitLab Premium)
Incident SLAs (- In incident settings, enable 15 minute SLA
- create new incident
- see new incident SLA under incident list
- open incident & see remaining time
- refresh & see that remaining time has gone down
- ideally jump in time to after expiration & see that appropriate label was added to incident
Lower priority feature sets
- Pagerduty incidents integration
- Grafana embeds in GFM
- Status Page setup, publishing incidents, publishing comments (GitLab Ultimate)
- Admin setting
Network > Incident Management Limits
- Any deprecated features (prometheus metrics, self-monitoring project, slack notifications for alerts, etc)
Edited by Sarah Yasonik