diff --git a/app/controllers/api/v1/projects/pipelines_controller.rb b/app/controllers/api/v1/projects/pipelines_controller.rb index 39f20a009..bfa08ab5e 100644 --- a/app/controllers/api/v1/projects/pipelines_controller.rb +++ b/app/controllers/api/v1/projects/pipelines_controller.rb @@ -23,20 +23,20 @@ class Api::V1::Projects::PipelinesController < Api::V1::BaseController end def build_yaml - # pipeline = params[:pipeline] - # @name = params[:name] - # params_nodes = JSON.parse(pipeline)["nodes"].select { |node| !["on-push", "on-schedule"].include?(node["component_name"]) } - # on_nodes = JSON.parse(pipeline)["nodes"].select { |node| ["on-push", "on-schedule"].include?(node["component_name"]) } - # @on_nodes = build_nodes(on_nodes) - # @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 = build_test_yaml + if params[:pipeline].present? + pipeline = params[:pipeline] + @name = params[:name] + params_nodes = JSON.parse(pipeline)["nodes"].select { |node| !["on-push", "on-schedule"].include?(node["component_name"]) } + on_nodes = JSON.parse(pipeline)["nodes"].select { |node| ["on-push", "on-schedule"].include?(node["component_name"]) } + @on_nodes = build_nodes(on_nodes) + @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/, "") + else + @pipeline_yaml = build_test_yaml + end render plain: @pipeline_yaml - # respond_to do |format| - # format.text { render yaml: @pipeline_yaml } - # end end def update diff --git a/config/routes/api.rb b/config/routes/api.rb index bb093a23e..826468776 100644 --- a/config/routes/api.rb +++ b/config/routes/api.rb @@ -130,7 +130,7 @@ defaults format: :json do end end resources :pipelines do - get :build_yaml, on: :collection + post :build_yaml, on: :collection end resources :pulls, module: 'pulls' do resources :versions, only: [:index] do