diff options
Diffstat (limited to 'app/graphql/mutations/security/ci_configuration/configure_sast.rb')
-rw-r--r-- | app/graphql/mutations/security/ci_configuration/configure_sast.rb | 33 |
1 files changed, 3 insertions, 30 deletions
diff --git a/app/graphql/mutations/security/ci_configuration/configure_sast.rb b/app/graphql/mutations/security/ci_configuration/configure_sast.rb index 237aff1f052..7ce0bf83a4b 100644 --- a/app/graphql/mutations/security/ci_configuration/configure_sast.rb +++ b/app/graphql/mutations/security/ci_configuration/configure_sast.rb @@ -3,9 +3,7 @@ module Mutations module Security module CiConfiguration - class ConfigureSast < BaseMutation - include FindsProject - + class ConfigureSast < BaseSecurityAnalyzer graphql_name 'ConfigureSast' description <<~DESC Configure SAST for a project by enabling SAST in a new or modified @@ -13,37 +11,12 @@ module Mutations create a Merge Request are a part of the response. DESC - argument :project_path, GraphQL::ID_TYPE, - required: true, - description: 'Full path of the project.' - argument :configuration, ::Types::CiConfiguration::Sast::InputType, required: true, description: 'SAST CI configuration for the project.' - field :success_path, GraphQL::STRING_TYPE, null: true, - description: 'Redirect path to use when the response is successful.' - - field :branch, GraphQL::STRING_TYPE, null: true, - description: 'Branch that has the new/modified `.gitlab-ci.yml` file.' - - authorize :push_code - - def resolve(project_path:, configuration:) - project = authorized_find!(project_path) - - result = ::Security::CiConfiguration::SastCreateService.new(project, current_user, configuration).execute - prepare_response(result) - end - - private - - def prepare_response(result) - { - branch: result.payload[:branch], - success_path: result.payload[:success_path], - errors: result.errors - } + def configure_analyzer(project, **args) + ::Security::CiConfiguration::SastCreateService.new(project, current_user, args[:configuration]).execute end end end |