summaryrefslogtreecommitdiff
path: root/app/workers/gitlab/github_import/stage/import_pull_requests_review_requests_worker.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/workers/gitlab/github_import/stage/import_pull_requests_review_requests_worker.rb')
-rw-r--r--app/workers/gitlab/github_import/stage/import_pull_requests_review_requests_worker.rb33
1 files changed, 33 insertions, 0 deletions
diff --git a/app/workers/gitlab/github_import/stage/import_pull_requests_review_requests_worker.rb b/app/workers/gitlab/github_import/stage/import_pull_requests_review_requests_worker.rb
new file mode 100644
index 00000000000..bcbf5dd471a
--- /dev/null
+++ b/app/workers/gitlab/github_import/stage/import_pull_requests_review_requests_worker.rb
@@ -0,0 +1,33 @@
+# frozen_string_literal: true
+
+module Gitlab
+ module GithubImport
+ module Stage
+ class ImportPullRequestsReviewRequestsWorker # rubocop:disable Scalability/IdempotentWorker
+ include ApplicationWorker
+
+ data_consistency :always
+
+ sidekiq_options retry: 3
+ include GithubImport::Queue
+ include StageMethods
+
+ # client - An instance of Gitlab::GithubImport::Client.
+ # project - An instance of Project.
+ def import(client, project)
+ waiter = Importer::PullRequests::ReviewRequestsImporter
+ .new(project, client)
+ .execute
+
+ project.import_state.refresh_jid_expiration
+
+ AdvanceStageWorker.perform_async(
+ project.id,
+ { waiter.key => waiter.jobs_remaining },
+ :pull_request_reviews
+ )
+ end
+ end
+ end
+ end
+end