summaryrefslogtreecommitdiff
path: root/app/serializers/import/github_realtime_repo_entity.rb
blob: c26ae5f668ddceca62e87f24f8375fdbb0b4e318 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# frozen_string_literal: true

module Import
  class GithubRealtimeRepoEntity < Grape::Entity
    expose :id, documentation: { type: 'integer', example: 1 }
    expose :import_status, documentation: { type: 'string', example: 'importing' }
    expose :stats,
      documentation: {
        type: 'object', example: '{"fetched":{"label":10},"imported":{"label":10}}'
      } do |project|
        ::Gitlab::GithubImport::ObjectCounter.summary(project)
      end

    expose :import_error, if: ->(project) { project.import_state&.failed? } do |project|
      project.import_failures.last&.exception_message
    end
  end
end