Merge branch 'develop' into standalone_develop

This commit is contained in:
2023-03-30 14:27:55 +08:00
79 changed files with 211 additions and 163 deletions

View File

@@ -32,7 +32,7 @@ class Api::V1::Projects::BlameService < ApplicationService
end
def load_gitea_data
@gitea_data = $gitea_client.get_repos_blame_by_owner_repo(owner, repo, {query: request_params})
@gitea_data = $gitea_hat_client.get_repos_blame_by_owner_repo(owner, repo, {query: request_params})
raise Error, '获取项目blame失败' unless @gitea_data.is_a?(Hash)
end
end

View File

@@ -24,7 +24,7 @@ class Api::V1::Projects::Branches::AllListService < ApplicationService
end
def load_gitea_data
@gitea_data = $gitea_client.get_repos_branch_name_set_by_owner_repo(owner, repo, {query: request_params}) rescue nil
raise Error, '获取所有分支失败!' unless @gitea_data.is_a?(Hash)
@gitea_data = $gitea_hat_client.get_repos_branch_name_set_by_owner_repo(owner, repo, {query: request_params}) rescue nil
raise Error, '获取所有分支失败!' unless @gitea_data.is_a?(Array)
end
end

View File

@@ -44,9 +44,9 @@ class Api::V1::Projects::Branches::CreateService < ApplicationService
end
def check_branch_exist
result = $gitea_client.get_repos_branch_name_set_by_owner_repo(owner, repo, {query: request_params}) rescue nil
raise Error, '查询分支名称失败!' unless result.is_a?(Hash)
raise Error, '旧分支不存在!' if !result['branch_name'].include?(@old_branch_name)
raise Error, '新分支已存在!' if result['branch_name'].include?(@new_branch_name)
result = $gitea_hat_client.get_repos_branch_name_set_by_owner_repo(owner, repo, {query: request_params}) rescue nil
raise Error, '查询分支名称失败!' unless result.is_a?(Array)
raise Error, '旧分支不存在!' if !result.include?(@old_branch_name)
raise Error, '新分支已存在!' if result.include?(@new_branch_name)
end
end

View File

@@ -40,8 +40,8 @@ class Api::V1::Projects::Branches::DeleteService < ApplicationService
end
def check_branch_exist
result = $gitea_client.get_repos_branch_name_set_by_owner_repo(owner, repo, {query: request_params}) rescue nil
raise Error, '查询分支名称失败!' unless result.is_a?(Hash)
raise Error, '分支不存在!' if !result['branch_name'].include?(@branch_name)
result = $gitea_hat_client.get_repos_branch_name_set_by_owner_repo(owner, repo, {query: request_params}) rescue nil
raise Error, '查询分支名称失败!' unless result.is_a?(Array)
raise Error, '分支不存在!' if !result.include?(@branch_name)
end
end

View File

@@ -1,7 +1,7 @@
class Api::V1::Projects::Branches::ListService < ApplicationService
attr_accessor :project, :token, :owner, :repo, :name, :page, :limit
attr_accessor :gitea_data
attr_accessor :gitea_data, :gitea_repo_data
def initialize(project, params, token=nil)
@project = project
@@ -15,8 +15,11 @@ class Api::V1::Projects::Branches::ListService < ApplicationService
def call
load_gitea_data
gitea_data
load_default_branch
@gitea_data[:default_branch] = @gitea_repo_data["default_branch"]
@gitea_data
end
private
@@ -32,9 +35,12 @@ class Api::V1::Projects::Branches::ListService < ApplicationService
end
def load_gitea_data
puts request_params
@gitea_data = $gitea_client.get_repos_branches_by_owner_repo(owner, repo, {query: request_params}) rescue nil
puts @gitea_data
@gitea_data = $gitea_hat_client.get_repos_branches_by_owner_repo(owner, repo, {query: request_params}) rescue nil
raise Error, '获取分支列表失败!' unless @gitea_data.is_a?(Hash)
end
def load_default_branch
@gitea_repo_data = $gitea_client.get_repos_by_owner_repo(owner, repo) rescue nil
raise Error, '获取仓库信息失败!' unless @gitea_data.is_a?(Hash)
end
end

View File

@@ -48,8 +48,8 @@ class Api::V1::Projects::Branches::UpdateDefaultBranchService < ApplicationServi
end
def check_branch_exist
result = $gitea_client.get_repos_branch_name_set_by_owner_repo(owner, repo, {query: request_params}) rescue nil
raise Error, '查询分支名称失败!' unless result.is_a?(Hash)
raise Error, '新默认分支不存在!' if !result['branch_name'].include?(@new_default_branch)
result = $gitea_hat_client.get_repos_branch_name_set_by_owner_repo(owner, repo, {query: request_params}) rescue nil
raise Error, '查询分支名称失败!' unless result.is_a?(Array)
raise Error, '新默认分支不存在!' if !result.include?(@new_default_branch)
end
end

View File

@@ -28,7 +28,7 @@ class Api::V1::Projects::CodeStats::ListService < ApplicationService
end
def load_gitea_data
@gitea_data = $gitea_client.get_repos_code_stats_by_owner_repo(owner, repo, {query: request_params}) rescue nil
@gitea_data = $gitea_hat_client.get_repos_code_stats_by_owner_repo(owner, repo, {query: request_params}) rescue nil
raise Error, '获取贡献者贡献度失败!' unless @gitea_data.is_a?(Hash)
end
end

View File

@@ -29,7 +29,7 @@ class Api::V1::Projects::Commits::DiffService < ApplicationService
end
def load_gitea_data
@gitea_data = $gitea_client.get_repos_commits_diff_by_owner_repo_sha(owner, repo, sha, {query: request_params}) rescue nil
@gitea_data = $gitea_hat_client.get_repos_commits_diff_by_owner_repo_sha(owner, repo, sha, {query: request_params}) rescue nil
raise Error, '获取提交对比失败!' unless @gitea_data.is_a?(Hash)
end

View File

@@ -78,15 +78,15 @@ class Api::V1::Projects::Contents::BatchCreateService < ApplicationService
def excute_data_to_gitea
puts request_body.to_json
@gitea_data = $gitea_client.post_repos_contents_batch_by_owner_repo(owner, repo, {body: request_body.to_json, query: request_params}) rescue nil
@gitea_data = $gitea_hat_client.post_repos_contents_batch_by_owner_repo(owner, repo, {body: request_body.to_json, query: request_params}) rescue nil
raise Error, '提交文件失败!' unless @gitea_data.is_a?(Hash)
end
def check_branch_exist
result = $gitea_client.get_repos_branch_name_set_by_owner_repo(owner, repo, {query: request_params} ) rescue nil
raise Error, '查询分支名称失败!' unless result.is_a?(Hash)
raise Error, '分支不存在!' unless result['branch_name'].include?(branch)
raise Error, '分支已存在!' if result['branch_name'].include?(new_branch) && !new_branch.nil?
result = $gitea_hat_client.get_repos_branch_name_set_by_owner_repo(owner, repo, {query: request_params} ) rescue nil
raise Error, '查询分支名称失败!' unless result.is_a?(Array)
raise Error, '分支不存在!' unless result.include?(branch)
raise Error, '分支已存在!' if result.include?(new_branch) && !new_branch.nil?
end
end

View File

@@ -45,6 +45,6 @@ class Api::V1::Projects::GetService < ApplicationService
end
def load_gitea_branch_tag_count
@gitea_branch_tag_count = $gitea_client.get_repos_branch_tag_count_by_owner_repo(owner, repo, {query: request_params}) rescue nil
@gitea_branch_tag_count = $gitea_hat_client.get_repos_branch_tag_count_by_owner_repo(owner, repo, {query: request_params}) rescue nil
end
end

View File

@@ -26,7 +26,7 @@ class Api::V1::Projects::Pulls::GetService < ApplicationService
end
def load_gitea_data
@gitea_data = $gitea_client.get_repos_pulls_by_owner_repo_index(owner, repo, index, {query: request_params})
@gitea_data = $gitea_hat_client.get_repos_pulls_by_owner_repo_index(owner, repo, index, {query: request_params})
# raise Error, '获取合并请求失败!' unless @gitea_data.is_a?(Hash)
end
end

View File

@@ -30,7 +30,7 @@ class Api::V1::Projects::Pulls::Versions::GetDiffService < ApplicationService
end
def load_gitea_data
@gitea_data = $gitea_client.get_repos_pulls_versions_diff_by_owner_repo_index_version_id(owner, repo, index, version_id, {query: request_params})
@gitea_data = $gitea_hat_client.get_repos_pulls_versions_diff_by_owner_repo_index_id(owner, repo, index, version_id, {query: request_params})
raise Error, '获取合并请求版本diff失败' unless @gitea_data.is_a?(Hash)
end
end

View File

@@ -30,7 +30,7 @@ class Api::V1::Projects::Pulls::Versions::ListService < ApplicationService
end
def load_gitea_data
@gitea_data = $gitea_client.get_repos_pulls_versions_by_owner_repo_index(owner, repo, index, {query: request_params})
@gitea_data = $gitea_hat_client.get_repos_pulls_versions_by_owner_repo_index(owner, repo, index, {query: request_params})
raise Error, '获取合并请求版本失败!' unless @gitea_data.is_a?(Hash)
end
end

View File

@@ -40,7 +40,7 @@ class Api::V1::Projects::Tags::DeleteService < ApplicationService
end
def check_tag_exist
result = $gitea_client.get_repos_tag_name_set_by_owner_repo(owner, repo, {query: request_params}) rescue nil
result = $gitea_hat_client.get_repos_tag_name_set_by_owner_repo(owner, repo, {query: request_params}) rescue nil
raise Error, '查询标签名称失败!' unless result.is_a?(Array)
raise Error, '标签不存在!' if !result.include?(@tag_name)
end

View File

@@ -30,7 +30,7 @@ class Api::V1::Projects::Tags::ListService < ApplicationService
end
def load_gitea_data
@gitea_data = $gitea_client.get_repos_tags_by_owner_repo(owner, repo, {query: request_params}) rescue nil
@gitea_data = $gitea_hat_client.get_repos_tags_by_owner_repo(owner, repo, {query: request_params}) rescue nil
raise Error, '获取标签列表失败!' unless @gitea_data.is_a?(Hash)
end
end

View File

@@ -58,6 +58,6 @@ class Api::V1::Projects::Webhooks::CreateService < ApplicationService
end
def excute_data_to_gitea
@gitea_data = $gitea_client.post_repos_hooks_by_owner_repo(owner, repo, {body: request_body.to_json, query: request_params}) rescue nil
@gitea_data = $gitea_hat_client.post_repos_hooks_by_owner_repo(owner, repo, {body: request_body.to_json, query: request_params}) rescue nil
end
end

View File

@@ -30,6 +30,6 @@ class Api::V1::Projects::Webhooks::ListService < ApplicationService
end
def load_gitea_data
@gitea_data = $gitea_client.get_repos_hooks_hooktasks_by_owner_repo(owner, repo, id, {query: request_params}) rescue nil
@gitea_data = $gitea_hat_client.get_repos_hooks_hooktasks_by_owner_repo(owner, repo, id, {query: request_params}) rescue nil
end
end

View File

@@ -58,6 +58,6 @@ class Api::V1::Projects::Webhooks::UpdateService < ApplicationService
end
def excute_data_to_gitea
@gitea_data = $gitea_client.patch_repos_hooks_by_owner_repo_id(owner, repo, id, {body: request_body.to_json, query: request_params}) rescue nil
@gitea_data = $gitea_hat_client.patch_repos_hooks_by_owner_repo_id(owner, repo, id, {body: request_body.to_json, query: request_params}) rescue nil
end
end

View File

@@ -18,19 +18,19 @@ class Gitea::ClientService < ApplicationService
# token: {},
# data: {}
# }
def post(url, params={})
def post(url, params={}, is_hat=false)
puts "[gitea] request params: #{params}"
auth_token = authen_params(params[:token])
conn(auth_token).post do |req|
req.url full_url(url)
req.url full_url(url, "post", is_hat)
req.body = params[:data].to_json
end
end
def get(url, params={})
def get(url, params={}, is_hat = false)
auth_token = authen_params(params[:token])
conn(auth_token).get do |req|
req.url full_url(url, 'get')
req.url full_url(url, 'get', is_hat)
params.except(:token).each_pair do |key, value|
req.params["#{key}"] = value
end
@@ -41,27 +41,27 @@ class Gitea::ClientService < ApplicationService
# end #=> 响应头
end
def delete(url, params={})
def delete(url, params={}, is_hat = false)
auth_token = authen_params(params[:token])
conn(auth_token).delete do |req|
req.url full_url(url)
req.url full_url(url, "delete", is_hat)
req.body = params[:data].to_json
end
end
def patch(url, params={})
def patch(url, params={}, is_hat=false)
puts "[gitea] request params: #{params}"
auth_token = authen_params(params[:token])
conn(auth_token).patch do |req|
req.url full_url(url)
req.url full_url(url, 'patch', is_hat)
req.body = params[:data].to_json
end
end
def put(url, params={})
def put(url, params={}, is_hat=false)
puts "[gitea] put request params: #{params}"
conn(authen_params(params[:token])).put do |req|
req.url full_url(url)
req.url full_url(url, "put", is_hat)
req.body = params[:data].to_json
end
end
@@ -99,16 +99,20 @@ class Gitea::ClientService < ApplicationService
GiteaService.gitea_config[:base_url]
end
def hat_base_url
GiteaService.gitea_config[:hat_base_url]
end
def domain
GiteaService.gitea_config[:domain]
end
def api_url
[domain, base_url].join('')
def api_url(is_hat=false)
is_hat ? [domain, hat_base_url].join('') : [domain, base_url].join('')
end
def full_url(api_rest, action='post')
url = [api_url, api_rest].join('').freeze
def full_url(api_rest, action='post', is_hat=false)
url = [api_url(is_hat), api_rest].join('').freeze
url = action === 'get' ? url : URI.escape(url)
url = URI.escape(url) unless url.ascii_only?
puts "[gitea] request url: #{url}"

View File

@@ -24,7 +24,7 @@ class Gitea::Hooks::CreateService < Gitea::ClientService
end
def call
response = post(url, params)
response = post(url, params, true)
render_201_response(response)
end

View File

@@ -7,7 +7,7 @@ class Gitea::Organization::CreateService < Gitea::ClientService
end
def call
response = post(url, request_params)
response = post(url, request_params, true)
render_status(response)
end

View File

@@ -8,7 +8,7 @@ class Gitea::Organization::UpdateService < Gitea::ClientService
end
def call
response = patch(url, request_params)
response = patch(url, request_params, true)
render_status(response)
end

View File

@@ -16,7 +16,7 @@ class Gitea::PullRequest::CommitsService < Gitea::ClientService
end
def call
response = get(url, params)
response = get(url, params, true)
render_result(response)
end

View File

@@ -17,7 +17,7 @@ class Gitea::PullRequest::FilesService < Gitea::ClientService
end
def call
response = get(url, params.merge(token: token))
response = get(url, params.merge(token: token), true)
render_result(response)
end

View File

@@ -12,7 +12,7 @@ class Gitea::PullRequest::GetService < Gitea::ClientService
end
def call
response = get(url, params)
response = get(url, params, true)
render_result(response)
end

View File

@@ -27,7 +27,7 @@ class Gitea::PullRequest::UpdateService < Gitea::ClientService
end
def call
response = patch(url, request_params)
response = patch(url, request_params, true)
status, message, body = render_response(response)
json_format(status, message, body)

View File

@@ -8,7 +8,7 @@ class Gitea::Repository::Branches::ListNameService < Gitea::ClientService
end
def call
response = get(url, params)
response = get(url, params, true)
render_200_response(response)
end

View File

@@ -7,7 +7,7 @@ class Gitea::Repository::Branches::ListSliceService < Gitea::ClientService
end
def call
response = get(url, params)
response = get(url, params, true)
render_200_response(response)
end

View File

@@ -14,7 +14,7 @@ class Gitea::Repository::Commits::CompareService < Gitea::ClientService
end
def call
response = get(url, params)
response = get(url, params, true)
render_status(response)
end

View File

@@ -14,7 +14,7 @@ class Gitea::Repository::Commits::FileListService < Gitea::ClientService
end
def call
response = get(url, params)
response = get(url, params, true)
render_result(response)
end

View File

@@ -14,7 +14,7 @@ class Gitea::Repository::Commits::GetService < Gitea::ClientService
end
def call
response = get(url, params)
response = get(url, params, true)
render_status(response)
end

View File

@@ -13,7 +13,7 @@ class Gitea::Repository::Commits::ListSliceService < Gitea::ClientService
end
def call
response = get(url, params)
response = get(url, params, true)
render_result(response)
end

View File

@@ -1,22 +1,38 @@
class Gitea::Repository::Contributors::GetService < Gitea::ClientService
attr_reader :owner, :repo_name
attr_reader :owner, :repo_name, :page, :limit
def initialize(owner, repo_name)
def initialize(owner, repo_name, params={})
@owner = owner
@repo_name = repo_name
@page = params[:page] || 1
@limit = params[:limit] || 20
end
def call
response = get(url, params)
render_status(response)
response = get(url, params, true)
render_result(response)
end
private
def params
Hash.new.merge(token: owner.gitea_token)
Hash.new.merge(token: owner.gitea_token, page: page, limit: limit)
end
def url
"/repos/#{owner.login}/#{repo_name}/contributors"
end
def render_result(response)
case response.status
when 200
result = {}
headers = response.headers.to_hash
body = JSON.parse(response.body)
total_count = headers["x-total"]
result.merge(total_count: total_count.to_i, body: body)
else
nil
# {status: -1, message: "#{body['message']}"}
end
end
end

View File

@@ -13,7 +13,7 @@ class Gitea::Repository::Entries::GetService < Gitea::ClientService
end
def call
response = get(url, params)
response = get(url, params, true)
render_result(response)
end

View File

@@ -10,7 +10,7 @@ class Gitea::Repository::Entries::ListService < Gitea::ClientService
end
def call
response = get(url, params)
response = get(url, params, true)
render_result(response)
end

View File

@@ -10,7 +10,7 @@ class Gitea::Repository::Files::GetService < Gitea::ClientService
end
def call
response = get(url, params)
response = get(url, params, true)
render_status(response)
end

View File

@@ -11,7 +11,7 @@ module Gitea
end
def call
response = get(url, params)
response = get(url, params, true)
render_result(response)
end

View File

@@ -10,7 +10,7 @@ class Gitea::Repository::Readme::DirService < Gitea::ClientService
end
def call
response = get(url, params)
response = get(url, params, true)
status, message, body = render_response(response)
json_format(status, message, body)
end

View File

@@ -15,7 +15,7 @@ class Gitea::Repository::Readme::GetService < Gitea::ClientService
end
def call
response = get(url, params)
response = get(url, params, true)
status, message, body = render_response(response)
json_format(status, message, body)
end

View File

@@ -8,7 +8,7 @@ class Gitea::Repository::Tags::ListNameService < Gitea::ClientService
end
def call
response = get(url, params)
response = get(url, params, true)
render_200_response(response)
end

View File

@@ -11,7 +11,7 @@ class Gitea::Repository::Tags::ListService < Gitea::ClientService
end
def call
response = get(url, request_params)
response = get(url, request_params, true)
render_result(response)
end

View File

@@ -9,7 +9,7 @@ class Gitea::Repository::TransferService < Gitea::ClientService
end
def call
response = post(url, request_params)
response = post(url, request_params, true)
render_status(response)
end

View File

@@ -8,7 +8,7 @@ class Gitea::Repository::Webhooks::CreateService < Gitea::ClientService
end
def call
response = post(url, request_params)
response = post(url, request_params, true)
render_response(response)
end

View File

@@ -11,7 +11,7 @@ class Gitea::Repository::Webhooks::TasksService < Gitea::ClientService
end
def call
response = get(url, params)
response = get(url, params, true)
render_response(response)
end

View File

@@ -9,7 +9,7 @@ class Gitea::Repository::Webhooks::UpdateService < Gitea::ClientService
end
def call
response = patch(url, data_params)
response = patch(url, data_params, true)
render_response(response)
end

View File

@@ -1,20 +1,21 @@
class Gitea::User::HeadmapService < Gitea::ClientService
attr_reader :start_time, :end_time, :username
attr_reader :start_time, :end_time, :username, :token
def initialize(username, start_time, end_time)
def initialize(username, start_time, end_time, token=nil)
@username = username
@start_time = start_time
@end_time = end_time
@token = token
end
def call
response = get(url, params)
response = get(url, params, true)
render_response(response)
end
private
def params
Hash.new.merge(start: start_time, end: end_time)
Hash.new.merge(start: start_time, end: end_time, token: token)
end
def url

View File

@@ -24,7 +24,7 @@ class Gitea::User::UpdateService < Gitea::ClientService
end
def call
patch(url, data_params)
patch(url, data_params, true)
end
private

View File

@@ -18,7 +18,7 @@ class Gitea::Versions::CreateService < Gitea::ClientService
end
def call
response = post(url, request_params)
response = post(url, request_params, true)
render_status(response)
end

View File

@@ -12,7 +12,7 @@ class Gitea::Versions::GetService < Gitea::ClientService
end
def call
response = get(url, params)
response = get(url, params, true)
render_result(response)
end

View File

@@ -11,7 +11,7 @@ class Gitea::Versions::ListService < Gitea::ClientService
end
def call
response = get(url, params)
response = get(url, params, true)
render_result(response)
end

View File

@@ -19,7 +19,7 @@ class Gitea::Versions::UpdateService < Gitea::ClientService
end
def call
patch(url, request_params)
patch(url, request_params, true)
end
private

View File

@@ -51,7 +51,7 @@ class Projects::TransferService < ApplicationService
def gitea_update_owner
begin
@gitea_repo = $gitea_client.post_repos_transfer_by_owner_repo(owner&.login, project.identifier, {body: {new_owner: new_owner&.login}.to_json})
@gitea_repo = $gitea_hat_client.post_repos_transfer_by_owner_repo(owner&.login, project.identifier, {body: {new_owner: new_owner&.login}.to_json})
# @gitea_repo = Gitea::Repository::TransferService.call(owner&.gitea_token, owner&.login, project.identifier, new_owner&.login)
rescue Exception => e
Rails.logger.info("##### Project transfer_service, gitea transfer error #{e}")