25 lines
905 B
Ruby
25 lines
905 B
Ruby
|
# frozen_string_literal: true
|
||
|
|
||
|
module Resolvers
|
||
|
module Ci
|
||
|
# NOTE: This class was introduced to allow modifying the meaning of certain values in RunnerStatusEnum
|
||
|
# while preserving backward compatibility. It can be removed in 15.0 once the API has stabilized.
|
||
|
class RunnerStatusResolver < BaseResolver
|
||
|
type Types::Ci::RunnerStatusEnum, null: false
|
||
|
|
||
|
alias_method :runner, :object
|
||
|
|
||
|
argument :legacy_mode,
|
||
|
type: GraphQL::Types::String,
|
||
|
default_value: '14.5',
|
||
|
required: false,
|
||
|
description: 'Compatibility mode. A null value turns off compatibility mode.',
|
||
|
deprecated: { reason: 'Will be removed in 15.0. From that release onward, the field will behave as if legacyMode is null', milestone: '14.6' }
|
||
|
|
||
|
def resolve(legacy_mode:, **args)
|
||
|
runner.status(legacy_mode)
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
end
|