2021-09-30 23:02:18 +05:30
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
module API
|
|
|
|
module Entities
|
|
|
|
module BulkImports
|
|
|
|
class Entity < Grape::Entity
|
2023-01-13 00:05:48 +05:30
|
|
|
expose :id, documentation: { type: 'integer', example: 1 }
|
|
|
|
expose :bulk_import_id, documentation: { type: 'integer', example: 1 }
|
|
|
|
expose :status_name, as: :status, documentation: {
|
|
|
|
type: 'string', example: 'created', values: %w[created started finished timeout failed]
|
|
|
|
}
|
2023-03-17 16:20:25 +05:30
|
|
|
expose :entity_type, documentation: { type: 'string', values: %w[group project] }
|
2023-01-13 00:05:48 +05:30
|
|
|
expose :source_full_path, documentation: { type: 'string', example: 'source_group' }
|
2023-03-17 16:20:25 +05:30
|
|
|
expose :full_path, as: :destination_full_path, documentation: {
|
|
|
|
type: 'string', example: 'some_group/source_project'
|
|
|
|
}
|
2023-01-13 00:05:48 +05:30
|
|
|
expose :destination_name, documentation: { type: 'string', example: 'destination_slug' } # deprecated
|
|
|
|
expose :destination_slug, documentation: { type: 'string', example: 'destination_slug' }
|
|
|
|
expose :destination_namespace, documentation: { type: 'string', example: 'destination_path' }
|
|
|
|
expose :parent_id, documentation: { type: 'integer', example: 1 }
|
|
|
|
expose :namespace_id, documentation: { type: 'integer', example: 1 }
|
|
|
|
expose :project_id, documentation: { type: 'integer', example: 1 }
|
|
|
|
expose :created_at, documentation: { type: 'dateTime', example: '2012-05-28T04:42:42-07:00' }
|
|
|
|
expose :updated_at, documentation: { type: 'dateTime', example: '2012-05-28T04:42:42-07:00' }
|
|
|
|
expose :failures, using: EntityFailure, documentation: { is_array: true }
|
2023-03-17 16:20:25 +05:30
|
|
|
expose :migrate_projects, documentation: { type: 'boolean', example: true }
|
2021-09-30 23:02:18 +05:30
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|