Import milestones from GitHub

This commit is contained in:
Douglas Barbosa Alexandre
2016-04-18 20:07:04 -03:00
parent 17b60d6818
commit 06ec511164
3 changed files with 142 additions and 1 deletions
+12 -1
View File
@@ -16,7 +16,8 @@ module Gitlab
end
def execute
import_labels && import_issues && import_pull_requests && import_wiki
import_labels && import_milestones && import_issues &&
import_pull_requests && import_wiki
end
private
@@ -35,6 +36,16 @@ module Gitlab
raise Projects::ImportService::Error, e.message
end
def import_milestones
client.list_milestones(project.import_source, state: :all).each do |raw_data|
Milestone.create!(MilestoneFormatter.new(project, raw_data).attributes)
end
true
rescue ActiveRecord::RecordInvalid => e
raise Projects::ImportService::Error, e.message
end
def import_issues
client.list_issues(project.import_source, state: :all,
sort: :created,
@@ -0,0 +1,48 @@
module Gitlab
module GithubImport
class MilestoneFormatter < BaseFormatter
def attributes
{
iid: number,
project: project,
title: title,
description: description,
due_date: due_date,
state: state,
created_at: created_at,
updated_at: updated_at
}
end
private
def number
raw_data.number
end
def title
raw_data.title
end
def description
raw_data.description
end
def due_date
raw_data.due_on
end
def state
raw_data.state == 'closed' ? 'closed' : 'active'
end
def created_at
raw_data.created_at
end
def updated_at
state == 'closed' ? raw_data.closed_at : raw_data.updated_at
end
end
end
end