diff --git a/app/controllers/api/v1/projects/pipelines_controller.rb b/app/controllers/api/v1/projects/pipelines_controller.rb index cc90f8a10..185120501 100644 --- a/app/controllers/api/v1/projects/pipelines_controller.rb +++ b/app/controllers/api/v1/projects/pipelines_controller.rb @@ -10,7 +10,7 @@ class Api::V1::Projects::PipelinesController < Api::V1::BaseController size = Action::Pipeline.where(pipeline_name: params[:pipeline_name], project_id: @project.id).size tip_exception("已经存在#{params[:pipeline_name]}流水线!") if size > 0 @pipeline = Action::Pipeline.new(pipeline_name: params[:pipeline_name], project_id: @project.id) - @pipeline.file_name = ".gitea/workflows/#{@pipeline.pipeline_name}.yaml" + @pipeline.file_name = ".gitea/workflows/#{@pipeline.pipeline_name}.yml" @pipeline.branch = params[:branch] || @project.default_branch @pipeline.json = params[:pipeline_json].to_json pipeline_yaml = build_pipeline_yaml(params[:pipeline_name], params[:pipeline_json]) @@ -26,7 +26,7 @@ class Api::V1::Projects::PipelinesController < Api::V1::BaseController def save_yaml @pipeline = Action::Pipeline.new(pipeline_name: params[:pipeline_name], project_id: @project.id) - @pipeline.file_name = ".gitea/workflows/#{@pipeline.pipeline_name}.yaml" + @pipeline.file_name = ".gitea/workflows/#{@pipeline.pipeline_name}.yml" @pipeline.branch = params[:branch] || @project.default_branch @pipeline.json = params[:pipeline_json].to_json pipeline_yaml = build_pipeline_yaml(params[:pipeline_name], params[:pipeline_json]) @@ -35,22 +35,23 @@ class Api::V1::Projects::PipelinesController < Api::V1::BaseController sha = get_pipeline_file_sha(@pipeline.file_name, @pipeline.branch) interactor = sha.present? ? Gitea::UpdateFileInteractor.call(current_user.gitea_token, @owner.login, content_params("update").merge(sha: sha)) : Gitea::CreateFileInteractor.call(current_user.gitea_token, @owner.login, content_params("create")) tip_exception(interactor.error) unless interactor.success? - render_ok + render_ok({ pipeline_yaml: pipeline_yaml }) end def build_yaml if params[:pipeline_json].present? - @pipeline_yaml = build_pipeline_yaml(params[:pipeline_name], params[:pipeline_json]) + pipeline_yaml = build_pipeline_yaml(params[:pipeline_name], params[:pipeline_json]) else - @pipeline_yaml = build_test_yaml + pipeline_yaml = build_test_yaml end - render plain: @pipeline_yaml + # render plain: pipeline_yaml + render_ok({ pipeline_yaml: pipeline_yaml }) end def update @pipeline = Action::Pipeline.find(params[:id]) @pipeline.pipeline_name = params[:pipeline_name] - @pipeline.file_name = ".gitea/workflows/#{@pipeline.pipeline_name}.yaml" + @pipeline.file_name = ".gitea/workflows/#{@pipeline.pipeline_name}.yml" @pipeline.branch = params[:branch] || @project.default_branch @pipeline.json = params[:pipeline_json].to_json pipeline_yaml = build_pipeline_yaml(params[:pipeline_name], params[:pipeline_json]) @@ -87,11 +88,11 @@ class Api::V1::Projects::PipelinesController < Api::V1::BaseController @steps_nodes = build_nodes(params_nodes) yaml = ERB.new(File.read(File.join(Rails.root, "app/views/api/v1/projects/pipelines", "build_pipeline.yaml.erb"))).result(binding) # 删除空行内容 - @pipeline_yaml = yaml.gsub(/^\s*\n/, "") + pipeline_yaml = yaml.gsub(/^\s*\n/, "") else - @pipeline_yaml = params[:pipeline_yaml] + pipeline_yaml = params[:pipeline_yaml] end - @pipeline_yaml + pipeline_yaml end def build_test_yaml @@ -128,10 +129,10 @@ class Api::V1::Projects::PipelinesController < Api::V1::BaseController Rails.logger.info "@@on_nodes===#{@on_nodes.to_json}" Rails.logger.info "@steps_nodes===#{@steps_nodes.to_json}" yaml = ERB.new(File.read(File.join(Rails.root, "app/views/api/v1/projects/pipelines", "build_pipeline.yaml.erb"))).result(binding) - @pipeline_yaml = yaml.gsub(/^\s*\n/, "") + pipeline_yaml = yaml.gsub(/^\s*\n/, "") Rails.logger.info "=========================" - Rails.logger.info @pipeline_yaml - @pipeline_yaml + Rails.logger.info pipeline_yaml + pipeline_yaml end private @@ -149,7 +150,7 @@ class Api::V1::Projects::PipelinesController < Api::V1::BaseController def content_params(opt) { - filepath: ".gitea/workflows/#{@pipeline.pipeline_name}.yaml", + filepath: ".gitea/workflows/#{@pipeline.pipeline_name}.yml", branch: @pipeline.branch, new_branch: @pipeline.branch, content: Base64.encode64(@pipeline.yaml),