change bugs

This commit is contained in:
sylor_huang@126.com 2020-07-10 17:36:15 +08:00
parent e0d9bfab6d
commit f4be93c340
3 changed files with 21 additions and 14 deletions

View File

@ -2,7 +2,7 @@ class SyncForgeController < ApplicationController
before_action :check_token
def create
Rails.logger.info("=================request.subdomain:#{request.subdomain}========")
ActiveRecord::Base.transaction do
params.permit!
sync_params = params[:sync_params]
@ -32,13 +32,7 @@ class SyncForgeController < ApplicationController
Rails.logger.info("=================new_project_score:#{new_project_score.try(:id)}========")
end
gitea_main = "testgitea.trustie.net"
if request.subdomain === 'testforgeplus'
gitea_main = "testgitea2.trustie.net"
elsif request.subdomain === 'forge'
gitea_main = "gitea.trustie.net"
end
SyncRepositoryJob.perform_later(project.repository, sync_params[:repository], gitea_main) if sync_params[:repository].present?
SyncRepositoryJob.perform_later(sync_params[:owner_login], sync_params[:identifier], sync_params[:repository], get_sudomain) if sync_params[:repository].present?
check_new_project(project, sync_params)
end
end
@ -149,7 +143,7 @@ class SyncForgeController < ApplicationController
pre_project_score[:"#{k}"] = v
end
if k == "changeset_num" && v.to_i > pre_project_score.changeset_num.to_i && repository_params[:url].present?
SyncRepositoryJob.perform_later(project.repository, repository_params)
SyncRepositoryJob.perform_later(project.owner.try(:login), project.identifier, repository_params, get_sudomain)
end
end
pre_project_score.save! if change_num > 0 #如果 project_score有变化则更新
@ -254,4 +248,15 @@ class SyncForgeController < ApplicationController
"34c82f51e0b699d9d16d70fd6497c9b1e4821d6ea3e872558a6537a091076b8e"
end
def get_sudomain
Rails.logger.info("=================request.subdomain:#{request.subdomain}========")
gitea_main = "testgitea.trustie.net"
if request.subdomain === 'testforgeplus'
gitea_main = "testgitea2.trustie.net"
elsif request.subdomain === 'forge'
gitea_main = "gitea.trustie.net"
end
return gitea_main
end
end

View File

@ -17,6 +17,8 @@ class SyncProjectsJob < ApplicationJob
http = Net::HTTP.new(uri.hostname, uri.port)
http.use_ssl = true
response = http.send_request('GET', uri.path, sync_params, {'Content-Type' => 'application/json'})
SyncLog.sync_log("==========response_status:#{response.status}============")
SyncLog.sync_log("==========response_body:#{response.body}============")
if response.status == 200
target_jsons = response.body
SyncLog.sync_log("=========target_jsons: #{target_jsons}============")
@ -48,7 +50,7 @@ class SyncProjectsJob < ApplicationJob
def create_target(project, target_jsons, target_type)
Rails.logger.info("***111222. begin_to_create_target---------------")
Rails.logger.info("***#{target_type}. begin_to_create_target---------------")
target_jsons.each do |re|
if re[:target_params].present?
Rails.logger.info("***user_login:#{re[:user_login]}----target_type:#{target_type}")

View File

@ -3,23 +3,23 @@ class SyncRepositoryJob < ApplicationJob
#同步 trustie的仓库
def perform(repository, repository_params, gitea_main)
def perform(user_login, identifier, repository_params, gitea_main)
#创建临时文件夹 clone 并强推代码
SyncLog.sync_log("=================begin to sync request trustie repository=====================")
SyncLog.sync_log("=================begin to sync repository_params:==#{repository_params}===================")
SyncLog.sync_log("=================repository_url:==#{repository_params[:url]}===================")
SyncLog.sync_log("=================repository_url:==#{repository_params[:git_url]}===================")
path = "#{Rails.root}/public/cache_repository"
unless File.directory?(path)
FileUtils.mkdir_p(path)
end
image_url = repository_params[:url]
image_url = repository_params[:git_url]
g_default_branch = repository_params[:default_branch]
image_repo_name = image_url.to_s.split('/')&.last&.chomp('.git')
check_clone = system("cd #{path} and git clone #{image_url}")
if check_clone
new_gitlab_url = "http://root:_Trustie_10010@#{gitea_main}/#{repository.user.login}/#{repository.identifier}.git"
new_gitlab_url = "http://root:_Trustie_10010@#{gitea_main}/#{user_login}/#{identifier}.git"
shell_remote_1 = system("cd #{path}/#{image_repo_name} && git remote set-url origin #{new_gitlab_url}")