1# frozen_string_literal: true 2 3module Mutations 4 module Ci 5 module Job 6 class Retry < Base 7 graphql_name 'JobRetry' 8 9 field :job, 10 Types::Ci::JobType, 11 null: true, 12 description: 'Job after the mutation.' 13 14 authorize :update_build 15 16 def resolve(id:) 17 job = authorized_find!(id: id) 18 project = job.project 19 20 ::Ci::RetryBuildService.new(project, current_user).execute(job) 21 { 22 job: job, 23 errors: errors_on_object(job) 24 } 25 end 26 end 27 end 28 end 29end 30