summaryrefslogtreecommitdiff
path: root/app/workers/incident_management/add_severity_system_note_worker.rb
blob: 3a4667bea0ac9730a7abccc0c0920084f88df437 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# frozen_string_literal: true

module IncidentManagement
  class AddSeveritySystemNoteWorker # rubocop:disable Scalability/IdempotentWorker
    include ApplicationWorker

    data_consistency :always
    worker_resource_boundary :cpu

    sidekiq_options retry: 3

    queue_namespace :incident_management
    feature_category :incident_management

    def perform(incident_id, user_id)
      return if incident_id.blank? || user_id.blank?

      incident = Issue.with_issue_type(:incident).find_by_id(incident_id)
      return unless incident

      user = User.find_by_id(user_id)
      return unless user

      SystemNoteService.change_incident_severity(incident, user)
    end
  end
end