|
|
|
@ -13,6 +13,18 @@ class VersionReleasesController < ApplicationController
|
|
|
|
|
@version_releases = version_releases.order("created_at desc").page(page).limit(@limit)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def new
|
|
|
|
|
#获取所有的分支
|
|
|
|
|
@all_branches = []
|
|
|
|
|
get_all_branches = Gitea::Repository::BranchesService.new(@user, @repository.try(:identifier)).call
|
|
|
|
|
if get_all_branches && get_all_branches.size > 0
|
|
|
|
|
get_all_branches.each do |b|
|
|
|
|
|
@all_branches.push(b["name"])
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def create
|
|
|
|
|
if params[:name].nil?
|
|
|
|
|
normal_status(-1, "名称不能为空")
|
|
|
|
@ -20,6 +32,7 @@ class VersionReleasesController < ApplicationController
|
|
|
|
|
normal_status(-1, "标签名称不能为空")
|
|
|
|
|
else
|
|
|
|
|
ActiveRecord::Base.transaction do
|
|
|
|
|
begin
|
|
|
|
|
version_params = {
|
|
|
|
|
body: params[:body],
|
|
|
|
|
draft: params[:draft] || false,
|
|
|
|
@ -40,7 +53,12 @@ class VersionReleasesController < ApplicationController
|
|
|
|
|
version_gid: git_version_release["id"],
|
|
|
|
|
}
|
|
|
|
|
version_release.update_attributes!(update_params)
|
|
|
|
|
normal_status(0, "发布成功")
|
|
|
|
|
else
|
|
|
|
|
normal_status(-1, "发布失败")
|
|
|
|
|
end
|
|
|
|
|
else
|
|
|
|
|
normal_status(-1, "发布失败")
|
|
|
|
|
end
|
|
|
|
|
rescue => e
|
|
|
|
|
puts "create version release error: #{e.message}"
|
|
|
|
@ -48,6 +66,7 @@ class VersionReleasesController < ApplicationController
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def edit
|
|
|
|
|
|
|
|
|
@ -60,6 +79,7 @@ class VersionReleasesController < ApplicationController
|
|
|
|
|
normal_status(-1, "标签名称不能为空")
|
|
|
|
|
else
|
|
|
|
|
ActiveRecord::Base.transaction do
|
|
|
|
|
begin
|
|
|
|
|
version_params = {
|
|
|
|
|
body: params[:body],
|
|
|
|
|
draft: params[:draft] || false,
|
|
|
|
@ -73,6 +93,9 @@ class VersionReleasesController < ApplicationController
|
|
|
|
|
unless git_version_release
|
|
|
|
|
raise Error, "更新失败"
|
|
|
|
|
end
|
|
|
|
|
normal_status(0, "更新成功")
|
|
|
|
|
else
|
|
|
|
|
normal_status(-1, "更新失败")
|
|
|
|
|
end
|
|
|
|
|
rescue => e
|
|
|
|
|
puts "update version release error: #{e.message}"
|
|
|
|
@ -80,32 +103,30 @@ class VersionReleasesController < ApplicationController
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def destroy
|
|
|
|
|
ActiveRecord::Base.transaction do
|
|
|
|
|
begin
|
|
|
|
|
if @version.destroy
|
|
|
|
|
git_version_release = Gitea::Versions::UpdateService.new(@user.gitea_token, @repository.try(:login), @repository.try(:identifier), version_params, @version.try(:version_gid)).call
|
|
|
|
|
unless git_version_release
|
|
|
|
|
raise Error, "删除失败"
|
|
|
|
|
end
|
|
|
|
|
normal_status(0, "删除成功")
|
|
|
|
|
else
|
|
|
|
|
normal_status(-1, "删除失败")
|
|
|
|
|
end
|
|
|
|
|
rescue => e
|
|
|
|
|
puts "destroy version release error: #{e.message}"
|
|
|
|
|
raise Error, e.message
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private
|
|
|
|
|
|
|
|
|
|
# def set_project
|
|
|
|
|
# @project = Project.find_by_id(params[:project_id])
|
|
|
|
|
# @repository = @project.repository #项目的仓库
|
|
|
|
|
# unless @project.present? && @repository.present?
|
|
|
|
|
# normal_status(-1, "仓库不存在")
|
|
|
|
|
# end
|
|
|
|
|
# end
|
|
|
|
|
|
|
|
|
|
def set_user_and_project
|
|
|
|
|
@project = Project.find_by_id(params[:project_id])
|
|
|
|
|
@repository = @project.repository #项目的仓库
|
|
|
|
|