Class: Projects::ImportExport::RelationExport

Inherits:
ApplicationRecord show all
Defined in:
app/models/projects/import_export/relation_export.rb

Constant Summary collapse

DESIGN_REPOSITORY_RELATION =
'design_repository'
LFS_OBJECTS_RELATION =
'lfs_objects'
REPOSITORY_RELATION =
'repository'
ROOT_RELATION =
'project'
SNIPPETS_REPOSITORY_RELATION =
'snippets_repository'
UPLOADS_RELATION =
'uploads'
WIKI_REPOSITORY_RELATION =
'wiki_repository'
STATUS =
{
  queued: 0,
  started: 1,
  finished: 2,
  failed: 3
}.freeze

Constants inherited from ApplicationRecord

ApplicationRecord::MAX_PLUCK

Constants included from ResetOnUnionError

ResetOnUnionError::MAX_RESET_PERIOD

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from ApplicationRecord

cached_column_list, #create_or_load_association, declarative_enum, default_select_columns, id_in, id_not_in, iid_in, pluck_primary_key, primary_key_in, #readable_by?, safe_ensure_unique, safe_find_or_create_by, safe_find_or_create_by!, #to_ability_name, underscore, where_exists, where_not_exists, with_fast_read_statement_timeout, without_order

Methods included from SensitiveSerializableHash

#serializable_hash

Class Method Details

.relation_names_listObject



67
68
69
70
71
# File 'app/models/projects/import_export/relation_export.rb', line 67

def self.relation_names_list
  project_tree_relation_names = ::Gitlab::ImportExport::Reader.new(shared: nil).project_relation_names.map(&:to_s)

  project_tree_relation_names + EXTRA_RELATION_LIST
end

Instance Method Details

#mark_as_failed(export_error) ⇒ Object



73
74
75
76
77
78
79
# File 'app/models/projects/import_export/relation_export.rb', line 73

def mark_as_failed(export_error)
  sanitized_error = Gitlab::UrlSanitizer.sanitize(export_error)

  fail_op

  update_column(:export_error, sanitized_error)
end