Class: Gitlab::GithubImport::Importer::LfsObjectsImporter

Inherits:
Object
  • Object
show all
Includes:
ParallelScheduling
Defined in:
lib/gitlab/github_import/importer/lfs_objects_importer.rb

Constant Summary

Constants included from ParallelScheduling

ParallelScheduling::ALREADY_IMPORTED_CACHE_KEY

Instance Attribute Summary

Attributes included from ParallelScheduling

#already_imported_cache_key, #client, #page_counter, #project

Instance Method Summary collapse

Methods included from ParallelScheduling

#abort_on_failure, #already_imported?, #collection_options, #execute, #id_for_already_imported_cache, #initialize, #mark_as_imported, #parallel?, #parallel_import, #parallel_import_batch, #parallel_import_deprecated, #sequential_import, #spread_parallel_import

Instance Method Details

#collection_methodObject


25
26
27
# File 'lib/gitlab/github_import/importer/lfs_objects_importer.rb', line 25

def collection_method
  :lfs_objects
end

#each_object_to_importObject


29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'lib/gitlab/github_import/importer/lfs_objects_importer.rb', line 29

def each_object_to_import
  lfs_objects = Projects::LfsPointers::LfsObjectDownloadListService.new(project).execute

  lfs_objects.each do |object|
    Gitlab::GithubImport::ObjectCounter.increment(project, object_type, :fetched)

    yield object
  end
rescue StandardError => e
  Gitlab::Import::ImportFailureService.track(
    project_id: project.id,
    error_source: importer_class.name,
    exception: e
  )
end

#importer_classObject


9
10
11
# File 'lib/gitlab/github_import/importer/lfs_objects_importer.rb', line 9

def importer_class
  LfsObjectImporter
end

#object_typeObject


21
22
23
# File 'lib/gitlab/github_import/importer/lfs_objects_importer.rb', line 21

def object_type
  :lfs_object
end

#representation_classObject


13
14
15
# File 'lib/gitlab/github_import/importer/lfs_objects_importer.rb', line 13

def representation_class
  Representation::LfsObject
end

#sidekiq_worker_classObject


17
18
19
# File 'lib/gitlab/github_import/importer/lfs_objects_importer.rb', line 17

def sidekiq_worker_class
  ImportLfsObjectWorker
end