diff --git a/app/controllers/repositories_controller.rb b/app/controllers/repositories_controller.rb index 8bc182dbf..63ae5cdc4 100644 --- a/app/controllers/repositories_controller.rb +++ b/app/controllers/repositories_controller.rb @@ -112,7 +112,7 @@ class RepositoriesController < ApplicationController def sync_mirror @repo&.mirror.set_status!(Mirror.statuses[:waiting]) - SyncMirroredRepositoryJob.perform_later(@repo, current_user) + SyncMirroredRepositoryJob.perform_later(@repo.id, current_user.id) render_ok end diff --git a/app/jobs/migrate_remote_repository_job.rb b/app/jobs/migrate_remote_repository_job.rb index bc17718ad..28c547648 100644 --- a/app/jobs/migrate_remote_repository_job.rb +++ b/app/jobs/migrate_remote_repository_job.rb @@ -1,7 +1,10 @@ class MigrateRemoteRepositoryJob < ApplicationJob queue_as :default - def perform(repo, token, params) + def perform(repo_id, token, params) + repo = Repository.find_by(id: repo_id) + return if repo.blank? + gitea_repository = Gitea::Repository::MigrateService.new(token, params).call sync_project(repo, gitea_repository) sync_repository(repo, gitea_repository) diff --git a/app/jobs/sync_mirrored_repository_job.rb b/app/jobs/sync_mirrored_repository_job.rb index 7230e1195..8184ddee5 100644 --- a/app/jobs/sync_mirrored_repository_job.rb +++ b/app/jobs/sync_mirrored_repository_job.rb @@ -1,7 +1,10 @@ class SyncMirroredRepositoryJob < ApplicationJob queue_as :default - def perform(repo, current_user) + def perform(repo_id, user_id) + repo = Repository.find_by(id: repo_id) + current_user = User.find_by(id: user_id) + return if repo.blank? || current_user.blank? result = Gitea::Repository::SyncMirroredService.new(repo.user.login, repo.identifier, token: current_user.gitea_token).call repo&.mirror.set_status! if result[:status] === 200 end diff --git a/app/services/repositories/migrate_service.rb b/app/services/repositories/migrate_service.rb index 0e773d54c..090d64739 100644 --- a/app/services/repositories/migrate_service.rb +++ b/app/services/repositories/migrate_service.rb @@ -12,7 +12,7 @@ class Repositories::MigrateService < ApplicationService ActiveRecord::Base.transaction do if @repository.save! @repository.set_mirror! if wrapper_mirror - MigrateRemoteRepositoryJob.perform_later(@repository, user.gitea_token, gitea_repository_params) + MigrateRemoteRepositoryJob.perform_later(@repository.id, user.gitea_token, gitea_repository_params) end @repository end