diff --git a/app/tasks/check_gitea_user.rb b/app/tasks/check_gitea_user.rb index 41e3cbd41..74ab61ff1 100644 --- a/app/tasks/check_gitea_user.rb +++ b/app/tasks/check_gitea_user.rb @@ -4,29 +4,37 @@ class CheckGiteaUser def call SyncLog.sync_log("=====begin to check gitea_user======") - all_users = User.select(:id, :gitea_token, :gitea_uid, :mail, :type).where(type: "User", gitea_token: [nil, ""], gitea_uid: [nil, ""]) + all_users = User.where(type: "User", gitea_token: [nil, ""], gitea_uid: [nil, ""]) if all_users.present? new_password = "12345678" + # EMAIL_REGEX = /^[a-zA-Z0-9_\-.]+@[a-zA-Z0-9_\-.]+(\.[a-zA-Z0-9_-]+)+$/i all_users.each do |user| - SyncLog.sync_log("=====check_user_login_is:#{user.login}======") - ActiveRecord::Base.transaction do - interactor = Gitea::RegisterInteractor.call({username: user.login, email: user&.mail.present? ? user.mail : "#{user.login}@example.com", password: new_password}) - if interactor.success? - gitea_user = interactor.result - result = Gitea::User::GenerateTokenService.new(user.login, new_password).call - user.gitea_token = result['sha1'] - user.gitea_uid = gitea_user['id'] - if user.save! - SyncLog.sync_log("=================create_gitea_user_success_login==#{user.login}") + begin + SyncLog.sync_log("=====check_user_login_is:#{user.login}======") + + user_mail = user&.mail.present? ? user.mail : "#{user.login}@example.com" + # unless user_mail.match(EMAIL_REGEX).present? + # user_mail = "#{user.login}@example.com" + # end + ActiveRecord::Base.transaction do + interactor = Gitea::RegisterInteractor.call({username: user.login, email: user_mail, password: new_password}) + if interactor.success? + gitea_user = interactor.result + result = Gitea::User::GenerateTokenService.new(user.login, new_password).call + user.gitea_token = result['sha1'] + user.gitea_uid = gitea_user['id'] + if user.save! + SyncLog.sync_log("=================create_gitea_user_success_login==#{user.login}") + else + SyncLog.sync_log("=================create_gitea_user_success_login==#{user.login}") + end else - SyncLog.sync_log("=================create_gitea_user_success_login==#{user.login}") + SyncLog.sync_log("=============sync_to_user_failed,user_login====#{user.login}") end - else - SyncLog.sync_log("=============sync_to_user_failed,user_login====#{user.login}") end + rescue => exception + SyncLog.sync_log("=================create_gitea_user_has_erros=#{user.login}===#{exception}") end - rescue Exception => e - SyncLog.sync_log("=================create_gitea_user_has_erros=#{user.login}===#{e}") end end SyncLog.sync_log("=====end_to_check_gitea_user=====") diff --git a/app/tasks/check_mirror_rake.rb b/app/tasks/check_mirror_rake.rb index d8d23198c..2afe8e101 100644 --- a/app/tasks/check_mirror_rake.rb +++ b/app/tasks/check_mirror_rake.rb @@ -8,7 +8,7 @@ class CheckMirrorRake all_projects = Project.select(:id,:identifier,:user_id, :gpid, :forked_count,:is_public).includes(:owner, :repository) all_projects.each do |project| SyncLog.sync_log("=====check_project_id:#{project.id}======") - if project&.owner&.login.present? && + if project&.owner&.login.present? response = Gitea::Repository::Branches::ListService.new(project.owner, project.identifier).call else response = "224444"