debian-mirror-gitlab/app/workers/design_management/new_version_worker.rb

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

36 lines
934 B
Ruby
Raw Normal View History

2020-05-24 23:13:21 +05:30
# frozen_string_literal: true
module DesignManagement
class NewVersionWorker # rubocop:disable Scalability/IdempotentWorker
include ApplicationWorker
2021-10-27 15:23:28 +05:30
data_consistency :always
2021-06-08 01:23:25 +05:30
sidekiq_options retry: 3
2020-05-24 23:13:21 +05:30
feature_category :design_management
# Declare this worker as memory bound due to
# `GenerateImageVersionsService` resizing designs
worker_resource_boundary :memory
2021-01-03 14:25:43 +05:30
def perform(version_id, skip_system_notes = false)
2020-05-24 23:13:21 +05:30
version = DesignManagement::Version.find(version_id)
2021-01-03 14:25:43 +05:30
add_system_note(version) unless skip_system_notes
2020-05-24 23:13:21 +05:30
generate_image_versions(version)
rescue ActiveRecord::RecordNotFound => e
Sidekiq.logger.warn(e)
end
private
def add_system_note(version)
SystemNoteService.design_version_added(version)
end
def generate_image_versions(version)
DesignManagement::GenerateImageVersionsService.new(version).execute
end
end
end