forgeplus/app/controllers/ci/secrets_controller.rb

53 lines
1.3 KiB
Ruby
Raw Permalink Normal View History

2021-03-03 14:58:51 +08:00
class Ci::SecretsController < Ci::BaseController
before_action :load_repo
# 参数列表
def index
2021-03-05 15:26:29 +08:00
result = Ci::Drone::API.new(@ci_user.user_hash, ci_drone_url, params[:owner], params[:repo], nil).secrets
2021-03-03 14:58:51 +08:00
@secrets = result
end
#新增、更新参数
def create
options = {
name: params[:name],
data: params[:data]
}
id = params[:id]
if id
2021-03-05 15:26:29 +08:00
result = Ci::Drone::API.new(@ci_user.user_hash, ci_drone_url, params[:owner], params[:repo], options).update_secret
2021-03-03 14:58:51 +08:00
if result["id"]
render_ok
else
render_error(result["message"])
end
else
2021-03-05 15:26:29 +08:00
result = Ci::Drone::API.new(@ci_user.user_hash, ci_drone_url, params[:owner], params[:repo], options).create_secret
2021-03-03 14:58:51 +08:00
if result["id"]
render_ok
else
render_error(result["message"])
end
end
end
#删除参数
def destroy
name = params[:name]
if !name.blank?
2021-03-05 15:26:29 +08:00
Ci::Drone::API.new(@ci_user.user_hash, ci_drone_url, params[:owner], params[:repo], {name: name}).delete_secret
2021-03-03 14:58:51 +08:00
render_ok
else
render_error("参数名不能为空")
end
2021-03-04 09:33:04 +08:00
rescue Exception => ex
render_ok
2021-03-03 14:58:51 +08:00
end
2021-03-05 15:26:29 +08:00
def ci_drone_url
2022-02-10 14:08:14 +08:00
user = User.find_by(login: params[:owner]) || User.find_by(login: current_user.login)
2021-03-05 15:43:42 +08:00
user&.ci_cloud_account.drone_url
2021-03-05 15:26:29 +08:00
end
2021-03-03 14:58:51 +08:00
end