mirror of
https://gitlink.org.cn/Gitlink/forgeplus.git
synced 2026-05-03 03:40:49 +08:00
Merge remote-tracking branch 'origin/pre_trustie_server' into pre_trustie_server
This commit is contained in:
@@ -135,7 +135,7 @@ class Api::V1::Issues::UpdateService < ApplicationService
|
||||
end
|
||||
|
||||
def build_previous_issue_changes
|
||||
@previous_issue_changes.merge!(@updated_issue.previous_changes.slice("status_id", "priority_id", "fixed_version_id", "issue_tags_value", "branch_name", "subject", "description").symbolize_keys)
|
||||
@previous_issue_changes.merge!(@updated_issue.previous_changes.slice("status_id", "priority_id", "fixed_version_id", "issue_tags_value", "branch_name", "subject").symbolize_keys)
|
||||
if @updated_issue.previous_changes[:start_date].present?
|
||||
@previous_issue_changes.merge!(start_date: [@updated_issue.previous_changes[:start_date][0].to_s, @updated_issue.previous_changes[:start_date][1].to_s])
|
||||
end
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
class Api::V1::Projects::Actions::Runs::JobShowService < ApplicationService
|
||||
include ActiveModel::Model
|
||||
|
||||
attr_reader :project, :token, :owner, :repo, :run, :job, :log_cursors
|
||||
attr_accessor :gitea_data
|
||||
|
||||
validates :run, :job, :log_cursors, presence: true
|
||||
|
||||
def initialize(project, run, job, log_cursors, token = nil)
|
||||
@project = project
|
||||
@owner = project&.owner.login
|
||||
@repo = project&.identifier
|
||||
@run = run
|
||||
@job = job
|
||||
@log_cursors = log_cursors
|
||||
@token = token
|
||||
end
|
||||
|
||||
def call
|
||||
raise Error, errors.full_messages.join(",") unless valid?
|
||||
load_gitea_data
|
||||
|
||||
@gitea_data
|
||||
end
|
||||
|
||||
private
|
||||
def request_params
|
||||
{
|
||||
access_token: token
|
||||
}
|
||||
end
|
||||
|
||||
def request_body
|
||||
{
|
||||
logCursors: log_cursors
|
||||
}
|
||||
end
|
||||
|
||||
def load_gitea_data
|
||||
@gitea_data = $gitea_hat_client.post_repos_actions_runs_jobs_by_owner_repo_run_job(owner, repo, run, job, {query: request_params, body: request_body.to_json})
|
||||
end
|
||||
end
|
||||
40
app/services/api/v1/projects/actions/runs/list_service.rb
Normal file
40
app/services/api/v1/projects/actions/runs/list_service.rb
Normal file
@@ -0,0 +1,40 @@
|
||||
class Api::V1::Projects::Actions::Runs::ListService < ApplicationService
|
||||
include ActiveModel::Model
|
||||
|
||||
attr_reader :project, :token, :owner, :repo, :workflow, :page, :limit
|
||||
attr_accessor :gitea_data
|
||||
|
||||
validates :workflow, presence: true
|
||||
|
||||
def initialize(project, params, token =nil)
|
||||
@project = project
|
||||
@owner = project&.owner.login
|
||||
@repo = project&.identifier
|
||||
@workflow = params[:workflow]
|
||||
@page = params[:page] || 1
|
||||
@limit = params[:limit] || 15
|
||||
@token = token
|
||||
end
|
||||
|
||||
def call
|
||||
raise Error, errors.full_messages.join(",") unless valid?
|
||||
load_gitea_data
|
||||
|
||||
@gitea_data
|
||||
end
|
||||
|
||||
private
|
||||
def request_params
|
||||
{
|
||||
access_token: token,
|
||||
workflow: workflow,
|
||||
page: page,
|
||||
limit: limit
|
||||
}
|
||||
end
|
||||
|
||||
def load_gitea_data
|
||||
@gitea_data = $gitea_hat_client.get_repos_actions_by_owner_repo(owner, repo, {query: request_params}) rescue nil
|
||||
raise Error, '获取流水线执行记录失败!' unless @gitea_data.is_a?(Hash)
|
||||
end
|
||||
end
|
||||
@@ -32,7 +32,7 @@ class Api::V1::Projects::Branches::DeleteService < ApplicationService
|
||||
|
||||
def excute_data_to_gitea
|
||||
begin
|
||||
@gitea_data = $gitea_client.delete_repos_branches_by_owner_repo_branch(owner, repo, branch_name, {query: request_params})
|
||||
@gitea_data = $gitea_client.delete_repos_branches_by_owner_repo_branch(owner, repo, CGI.escape(branch_name), {query: request_params})
|
||||
rescue => e
|
||||
raise Error, '保护分支无法删除!' if e.to_s.include?("branch protected")
|
||||
raise Error, '删除分支失败!'
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
class Api::V1::Projects::Branches::ListService < ApplicationService
|
||||
|
||||
attr_accessor :project, :token, :owner, :repo, :name, :page, :limit
|
||||
attr_accessor :project, :token, :owner, :repo, :name, :state, :page, :limit
|
||||
attr_accessor :gitea_data, :gitea_repo_data
|
||||
|
||||
def initialize(project, params, token=nil)
|
||||
@@ -9,6 +9,7 @@ class Api::V1::Projects::Branches::ListService < ApplicationService
|
||||
@repo = project&.identifier
|
||||
@token = token
|
||||
@name = params[:name]
|
||||
@state = params[:state]
|
||||
@page = params[:page]
|
||||
@limit = params[:limit]
|
||||
end
|
||||
@@ -18,7 +19,6 @@ class Api::V1::Projects::Branches::ListService < ApplicationService
|
||||
load_default_branch
|
||||
|
||||
@gitea_data[:default_branch] = @gitea_repo_data["default_branch"]
|
||||
|
||||
@gitea_data
|
||||
end
|
||||
|
||||
@@ -30,7 +30,8 @@ class Api::V1::Projects::Branches::ListService < ApplicationService
|
||||
limit: limit
|
||||
}
|
||||
params.merge!({name: name}) if name.present?
|
||||
|
||||
params.merge!({state: state}) if state.present?
|
||||
|
||||
params
|
||||
end
|
||||
|
||||
|
||||
47
app/services/api/v1/projects/branches/restore_service.rb
Normal file
47
app/services/api/v1/projects/branches/restore_service.rb
Normal file
@@ -0,0 +1,47 @@
|
||||
class Api::V1::Projects::Branches::RestoreService < ApplicationService
|
||||
|
||||
include ActiveModel::Model
|
||||
|
||||
attr_accessor :project, :token, :owner, :repo, :branch_id, :branch_name
|
||||
attr_accessor :gitea_data
|
||||
|
||||
validates :branch_id, :branch_name, presence: true
|
||||
|
||||
def initialize(project, branch_id, branch_name, token= nil)
|
||||
@project = project
|
||||
@owner = project&.owner&.login
|
||||
@repo = project&.identifier
|
||||
@branch_id = branch_id
|
||||
@branch_name = branch_name
|
||||
@token = token
|
||||
end
|
||||
|
||||
def call
|
||||
raise Error, errors.full_messages.join(",") unless valid?
|
||||
excute_data_to_gitea
|
||||
|
||||
true
|
||||
end
|
||||
|
||||
private
|
||||
def request_params
|
||||
{
|
||||
access_token: token
|
||||
}
|
||||
end
|
||||
|
||||
def request_body
|
||||
{
|
||||
branch_id: branch_id,
|
||||
name: branch_name,
|
||||
}
|
||||
end
|
||||
|
||||
def excute_data_to_gitea
|
||||
begin
|
||||
@gitea_data = $gitea_hat_client.post_repos_branches_restore_by_owner_repo(owner, repo, {query: request_params, body: request_body.to_json})
|
||||
rescue => e
|
||||
raise Error, '恢复分支失败!'
|
||||
end
|
||||
end
|
||||
end
|
||||
44
app/services/api/v1/projects/commits/recent_service.rb
Normal file
44
app/services/api/v1/projects/commits/recent_service.rb
Normal file
@@ -0,0 +1,44 @@
|
||||
class Api::V1::Projects::Commits::RecentService < ApplicationService
|
||||
|
||||
attr_reader :project, :page, :limit, :keyword, :owner, :repo, :token
|
||||
attr_accessor :gitea_data, :gitea_repo_detail
|
||||
|
||||
def initialize(project, params, token=nil)
|
||||
@project = project
|
||||
@page = params[:page] || 1
|
||||
@limit = params[:limit] || 15
|
||||
@keyword = params[:keyword]
|
||||
@owner = project&.owner&.login
|
||||
@repo = project&.identifier
|
||||
@token = token
|
||||
end
|
||||
|
||||
def call
|
||||
load_gitea_data
|
||||
load_gitea_repo_detail
|
||||
|
||||
{result: gitea_data, detail:gitea_repo_detail}
|
||||
end
|
||||
|
||||
private
|
||||
def request_params
|
||||
param = {
|
||||
access_token: token,
|
||||
page: page,
|
||||
limit: limit
|
||||
}
|
||||
param.merge!(keyword: keyword) if keyword.present?
|
||||
|
||||
param
|
||||
end
|
||||
|
||||
def load_gitea_data
|
||||
@gitea_data = $gitea_hat_client.get_repos_recent_commits_by_owner_repo(owner, repo, {query: request_params}) rescue nil
|
||||
raise Error, "获取最近提交列表失败" unless @gitea_data.is_a?(Hash)
|
||||
end
|
||||
|
||||
def load_gitea_repo_detail
|
||||
@gitea_repo_detail = $gitea_client.get_repos_by_owner_repo(owner, repo, {query: {access_token: token}})
|
||||
raise Error, "获取项目详情失败" unless @gitea_repo_detail.is_a?(Hash)
|
||||
end
|
||||
end
|
||||
@@ -29,6 +29,6 @@ class Api::V1::Projects::CompareService < ApplicationService
|
||||
end
|
||||
|
||||
def load_gitea_data
|
||||
@gitea_data = $gitea_client.get_repos_compare_by_owner_repo_from_to(owner, repo, from, to, {query: request_params}) rescue nil
|
||||
@gitea_data = $gitea_hat_client.get_repos_compare_by_owner_repo_baseref_headref(owner, repo, to, from, {query: request_params}) rescue nil
|
||||
end
|
||||
end
|
||||
@@ -32,7 +32,7 @@ class Api::V1::Projects::Tags::DeleteService < ApplicationService
|
||||
|
||||
def excute_data_to_gitea
|
||||
begin
|
||||
@gitea_data = $gitea_client.delete_repos_tags_by_owner_repo_tag(owner, repo, tag_name, {query: request_params})
|
||||
@gitea_data = $gitea_client.delete_repos_tags_by_owner_repo_tag(owner, repo, CGI.escape(tag_name), {query: request_params})
|
||||
rescue => e
|
||||
raise Error, '请先删除发行版!' if e.to_s.include?("409")
|
||||
raise Error, '删除标签失败!'
|
||||
|
||||
@@ -16,6 +16,6 @@ class Getway::Cms::GetService < Getway::ClientService
|
||||
end
|
||||
|
||||
def url
|
||||
"/cms/doc/open/#{doc_id}".freeze
|
||||
"/cms/doc/open/baseInfo/#{doc_id}".freeze
|
||||
end
|
||||
end
|
||||
@@ -29,7 +29,7 @@ class Gitea::User::GenerateTokenService < Gitea::ClientService
|
||||
end
|
||||
|
||||
def request_params
|
||||
{ name: "#{@username}-#{token_name}" }
|
||||
{ name: "#{@username}-#{token_name}", scopes: ["all"] }
|
||||
end
|
||||
|
||||
def token_name
|
||||
|
||||
@@ -47,7 +47,7 @@ class PageService
|
||||
repo_link = project.repository.url
|
||||
repo = project.repository.identifier
|
||||
branch = branch
|
||||
script_path =page.build_script_path
|
||||
script_path = branch == "gh-pages" ? "files_build" : page.build_script_path
|
||||
if script_path.present?
|
||||
uri = URI.parse("http://gitlink.#{@deploy_domain}/gitlink_execute_script?key=#{@deploy_key}&script_path=#{script_path}&project_dir=#{project_dir}&repo=#{repo}&repo_link=#{repo_link}&branch=#{branch}&owner=#{owner}")
|
||||
response = Net::HTTP.get_response(uri)
|
||||
|
||||
@@ -26,9 +26,6 @@ class Projects::CreateService < ApplicationService
|
||||
end
|
||||
end
|
||||
@project
|
||||
rescue => e
|
||||
puts "create project service error: #{e.message}"
|
||||
raise Error, e.message
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
@@ -33,18 +33,17 @@ class Repositories::CreateService < ApplicationService
|
||||
end
|
||||
repository
|
||||
end
|
||||
rescue => e
|
||||
puts "create repository service error: #{e.message}"
|
||||
raise Error, e.message
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def create_gitea_repository
|
||||
if project.owner.is_a?(User)
|
||||
@gitea_repository = Gitea::Repository::CreateService.new(user.gitea_token, gitea_repository_params).call
|
||||
# @gitea_repository = Gitea::Repository::CreateService.new(user.gitea_token, gitea_repository_params).call
|
||||
@gitea_repository = $gitea_client.post_user_repos({query: {token: user.gitea_token}, body: gitea_repository_params.to_json})
|
||||
elsif project.owner.is_a?(Organization)
|
||||
@gitea_repository = Gitea::Organization::Repository::CreateService.call(user.gitea_token, project.owner.login, gitea_repository_params)
|
||||
# @gitea_repository = Gitea::Organization::Repository::CreateService.call(user.gitea_token, project.owner.login, gitea_repository_params)
|
||||
@gitea_repository = $gitea_client.post_orgs_repos_by_org(project.owner.login, {query: {token: user.gitea_token}, body: gitea_repository_params.to_json})
|
||||
end
|
||||
end
|
||||
|
||||
@@ -67,7 +66,7 @@ class Repositories::CreateService < ApplicationService
|
||||
end
|
||||
|
||||
def repository_params
|
||||
params.merge(project_id: project.id)
|
||||
params.merge(project_id: project.id).except(:auto_init)
|
||||
end
|
||||
|
||||
def gitea_repository_params
|
||||
|
||||
Reference in New Issue
Block a user