Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/models/project_import_state.rb')
-rw-r--r--app/models/project_import_state.rb11
1 files changed, 11 insertions, 0 deletions
diff --git a/app/models/project_import_state.rb b/app/models/project_import_state.rb
index 7711c6d604a..f16d661d4bb 100644
--- a/app/models/project_import_state.rb
+++ b/app/models/project_import_state.rb
@@ -11,6 +11,7 @@ class ProjectImportState < ApplicationRecord
belongs_to :project, inverse_of: :import_state
validates :project, presence: true
+ validates :checksums, json_schema: { filename: "project_import_stats" }
alias_attribute :correlation_id, :correlation_id_value
@@ -68,6 +69,16 @@ class ProjectImportState < ApplicationRecord
state.project.remove_import_data
end
+ before_transition started: [:finished, :canceled, :failed] do |state, _|
+ project = state.project
+
+ if project.github_import?
+ import_stats = ::Gitlab::GithubImport::ObjectCounter.summary(state.project)
+
+ state.update_column(:checksums, import_stats)
+ end
+ end
+
after_transition started: :finished do |state, _|
project = state.project