新增:创建项目auto_init参数
This commit is contained in:
parent
d0bc8e4378
commit
447429a663
|
@ -283,7 +283,7 @@ class ProjectsController < ApplicationController
|
|||
private
|
||||
def project_params
|
||||
params.permit(:user_id, :name, :description, :repository_name, :website, :lesson_url, :default_branch, :identifier,
|
||||
:project_category_id, :project_language_id, :license_id, :ignore_id, :private)
|
||||
:project_category_id, :project_language_id, :license_id, :ignore_id, :private, :auto_init)
|
||||
end
|
||||
|
||||
def mirror_params
|
||||
|
|
|
@ -60,8 +60,9 @@ class RepositoriesController < ApplicationController
|
|||
@entries = Gitea::Repository::Entries::ListService.new(@owner, @project.identifier, ref: @ref).call
|
||||
@entries = @entries.present? ? @entries.sort_by{ |hash| hash['type'] } : []
|
||||
@path = GiteaService.gitea_config[:domain]+"/#{@project.owner.login}/#{@project.identifier}/raw/branch/#{@ref}/"
|
||||
@repo_detail = $gitea_client.get_repos_by_owner_repo(@owner.login, @project.identifier)
|
||||
return render_not_found if @entries.blank? && !@repo_detail["empty"]
|
||||
end
|
||||
return render_not_found if @entries.blank?
|
||||
end
|
||||
|
||||
def top_counts
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
class Projects::CreateForm < BaseForm
|
||||
attr_accessor :user_id, :name, :description, :repository_name, :project_category_id,
|
||||
:project_language_id, :ignore_id, :license_id, :private, :owner
|
||||
:project_language_id, :ignore_id, :license_id, :private, :owner, :auto_init
|
||||
|
||||
validates :user_id, :name, :repository_name, presence: true
|
||||
validates :repository_name, format: { with: CustomRegexp::REPOSITORY_NAME_REGEX, multiline: true, message: "项目标识只能包含数字,字母,下划线(_),中划线(-),英文句号(.),必须以数字和字母开头,不能以下划线/中划线/英文句号开头和结尾" }
|
||||
|
@ -9,7 +9,7 @@ class Projects::CreateForm < BaseForm
|
|||
validates :repository_name, length: { maximum: 100 }
|
||||
validates :description, length: { maximum: 200 }
|
||||
|
||||
validate :check_ignore, :check_license, :check_owner, :check_max_repo_creation
|
||||
validate :check_ignore, :check_license, :check_auto_init, :check_owner, :check_max_repo_creation
|
||||
validate do
|
||||
check_project_category(project_category_id)
|
||||
check_project_language(project_language_id)
|
||||
|
@ -25,6 +25,10 @@ class Projects::CreateForm < BaseForm
|
|||
raise "ignore_id值无效." if ignore_id && Ignore.find_by(id: ignore_id).blank?
|
||||
end
|
||||
|
||||
def check_auto_init
|
||||
raise "auto_init值无效." if ignore_id && license_id && !auto_init
|
||||
end
|
||||
|
||||
def check_owner
|
||||
@project_owner = Owner.find_by(id: user_id)
|
||||
raise "user_id值无效." if user_id && @project_owner.blank?
|
||||
|
|
|
@ -61,7 +61,8 @@ class Projects::CreateService < ApplicationService
|
|||
{
|
||||
hidden: !repo_is_public,
|
||||
user_id: params[:user_id],
|
||||
identifier: params[:repository_name]
|
||||
identifier: params[:repository_name],
|
||||
auto_init: params[:auto_init]
|
||||
}
|
||||
end
|
||||
|
||||
|
|
|
@ -67,7 +67,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
|
||||
|
@ -75,7 +75,7 @@ class Repositories::CreateService < ApplicationService
|
|||
name: params[:identifier],
|
||||
private: params[:hidden],
|
||||
# readme: "ReadMe",
|
||||
"auto_init": true,
|
||||
auto_init: params[:auto_init],
|
||||
# "description": "string",
|
||||
# "gitignores": "string",
|
||||
# "issue_labels": "string",
|
||||
|
@ -89,7 +89,7 @@ class Repositories::CreateService < ApplicationService
|
|||
license = project.license
|
||||
hash = hash.merge(license: license.name) if license
|
||||
hash = hash.merge(gitignores: ignore.name) if ignore
|
||||
hash = hash.merge(auto_init: true) if ignore || license
|
||||
hash = hash.merge(auto_init: true) if ignore && license
|
||||
hash
|
||||
end
|
||||
end
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
json.empty @result[:repo]["empty"]
|
||||
json.content @project.content
|
||||
json.website @project.website
|
||||
json.lesson_url @project.lesson_url
|
||||
|
|
Loading…
Reference in New Issue