summaryrefslogtreecommitdiff
path: root/app/services/alert_management/create_alert_issue_service.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/services/alert_management/create_alert_issue_service.rb')
-rw-r--r--app/services/alert_management/create_alert_issue_service.rb11
1 files changed, 11 insertions, 0 deletions
diff --git a/app/services/alert_management/create_alert_issue_service.rb b/app/services/alert_management/create_alert_issue_service.rb
index 58c7402c6c1..a81c2380dad 100644
--- a/app/services/alert_management/create_alert_issue_service.rb
+++ b/app/services/alert_management/create_alert_issue_service.rb
@@ -4,6 +4,9 @@ module AlertManagement
class CreateAlertIssueService
include Gitlab::Utils::StrongMemoize
+ DEFAULT_ALERT_TITLE = ::Gitlab::AlertManagement::Payload::Generic::DEFAULT_TITLE
+ DEFAULT_INCIDENT_TITLE = 'New: Incident'
+
# @param alert [AlertManagement::Alert]
# @param user [User]
def initialize(alert, user)
@@ -21,6 +24,8 @@ module AlertManagement
issue = result.payload[:issue]
return error(object_errors(alert), issue) unless associate_alert_with_issue(issue)
+ update_title_for(issue)
+
SystemNoteService.new_alert_issue(alert, issue, user)
result
@@ -50,6 +55,12 @@ module AlertManagement
alert.update(issue_id: issue.id)
end
+ def update_title_for(issue)
+ return unless issue.title == DEFAULT_ALERT_TITLE
+
+ issue.update!(title: "#{DEFAULT_INCIDENT_TITLE} #{issue.iid}")
+ end
+
def error(message, issue = nil)
ServiceResponse.error(payload: { issue: issue }, message: message)
end