diff --git a/app/controllers/api/v1/projects/pipelines_controller.rb b/app/controllers/api/v1/projects/pipelines_controller.rb index fb5eee64d..cc90f8a10 100644 --- a/app/controllers/api/v1/projects/pipelines_controller.rb +++ b/app/controllers/api/v1/projects/pipelines_controller.rb @@ -19,7 +19,7 @@ class Api::V1::Projects::PipelinesController < Api::V1::BaseController @pipeline.save! sha = get_pipeline_file_sha(@pipeline.file_name, @pipeline.branch) tip_exception("#{@pipeline.file_name}已存在") if sha - interactor = Gitea::CreateFileInteractor.call(current_user.gitea_token, @owner.login, content_params) + interactor = Gitea::CreateFileInteractor.call(current_user.gitea_token, @owner.login, content_params("create")) tip_exception(interactor.error) unless interactor.success? render_ok({ id: @pipeline.id }) end @@ -33,7 +33,7 @@ class Api::V1::Projects::PipelinesController < Api::V1::BaseController tip_exception("流水线yaml内空不能为空") if pipeline_yaml.blank? @pipeline.yaml = pipeline_yaml sha = get_pipeline_file_sha(@pipeline.file_name, @pipeline.branch) - interactor = sha.present? ? Gitea::UpdateFileInteractor.call(current_user.gitea_token, @owner.login, content_params.merge(sha: sha)) : Gitea::CreateFileInteractor.call(current_user.gitea_token, @owner.login, content_params) + 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 end @@ -58,7 +58,7 @@ class Api::V1::Projects::PipelinesController < Api::V1::BaseController @pipeline.yaml = pipeline_yaml @pipeline.save sha = get_pipeline_file_sha(@pipeline.file_name, @pipeline.branch) - interactor = Gitea::UpdateFileInteractor.call(current_user.gitea_token, @owner.login, content_params.merge(sha: sha)) + interactor = Gitea::UpdateFileInteractor.call(current_user.gitea_token, @owner.login, content_params("create").merge(sha: sha)) tip_exception(interactor.error) unless interactor.success? render_ok end @@ -66,7 +66,7 @@ class Api::V1::Projects::PipelinesController < Api::V1::BaseController def destroy @pipeline = Action::Pipeline.find(params[:id]) if pipeline - interactor = Gitea::DeleteFileInteractor.call(current_user.gitea_token, @owner.login, content_params) + interactor = Gitea::DeleteFileInteractor.call(current_user.gitea_token, @owner.login, content_params("update")) tip_exception(interactor.error) unless interactor.success? @pipeline.destroy! end @@ -147,13 +147,13 @@ class Api::V1::Projects::PipelinesController < Api::V1::BaseController end end - def content_params + def content_params(opt) { - filepath: ".gitea/workflows/#{URI.parse(@pipeline.pipeline_name)}.yaml", + filepath: ".gitea/workflows/#{@pipeline.pipeline_name}.yaml", branch: @pipeline.branch, new_branch: @pipeline.branch, content: Base64.encode64(@pipeline.yaml), - message: 'create pipeline', + message: "#{opt} pipeline", committer: { email: current_user.mail, name: current_user.login