summaryrefslogtreecommitdiff
path: root/app/workers/gitlab/github_import/stage/import_issue_events_worker.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/workers/gitlab/github_import/stage/import_issue_events_worker.rb')
-rw-r--r--app/workers/gitlab/github_import/stage/import_issue_events_worker.rb28
1 files changed, 15 insertions, 13 deletions
diff --git a/app/workers/gitlab/github_import/stage/import_issue_events_worker.rb b/app/workers/gitlab/github_import/stage/import_issue_events_worker.rb
index 8155b910677..0ec0a1b58d2 100644
--- a/app/workers/gitlab/github_import/stage/import_issue_events_worker.rb
+++ b/app/workers/gitlab/github_import/stage/import_issue_events_worker.rb
@@ -15,32 +15,34 @@ module Gitlab
# client - An instance of Gitlab::GithubImport::Client.
# project - An instance of Project.
def import(client, project)
- importer = ::Gitlab::GithubImport::Importer::SingleEndpointIssueEventsImporter
- return skip_to_next_stage(project, importer) if feature_disabled?(project)
+ importer = importer_class(project)
+ return skip_to_next_stage(project) if importer.nil?
- start_importer(project, importer, client)
+ info(project.id, message: "starting importer", importer: importer.name)
+ waiter = importer.new(project, client).execute
+ move_to_next_stage(project, { waiter.key => waiter.jobs_remaining })
end
private
- def start_importer(project, importer, client)
- info(project.id, message: "starting importer", importer: importer.name)
- waiter = importer.new(project, client).execute
- move_to_next_stage(project, waiter.key => waiter.jobs_remaining)
+ def importer_class(project)
+ if Feature.enabled?(:github_importer_single_endpoint_issue_events_import, project.group, type: :ops)
+ ::Gitlab::GithubImport::Importer::SingleEndpointIssueEventsImporter
+ elsif Feature.enabled?(:github_importer_issue_events_import, project.group, type: :ops)
+ ::Gitlab::GithubImport::Importer::IssueEventsImporter
+ else
+ nil
+ end
end
- def skip_to_next_stage(project, importer)
- info(project.id, message: "skipping importer", importer: importer.name)
+ def skip_to_next_stage(project)
+ info(project.id, message: "skipping importer", importer: "IssueEventsImporter")
move_to_next_stage(project)
end
def move_to_next_stage(project, waiters = {})
AdvanceStageWorker.perform_async(project.id, waiters, :notes)
end
-
- def feature_disabled?(project)
- Feature.disabled?(:github_importer_issue_events_import, project.group, type: :ops)
- end
end
end
end