gitlab-org--gitlab-foss/lib/gitlab/utils/execution_tracker.rb

26 lines
455 B
Ruby

# frozen_string_literal: true
module Gitlab
module Utils
class ExecutionTracker
MAX_RUNTIME = 30.seconds
ExecutionTimeOutError = Class.new(StandardError)
delegate :monotonic_time, to: :'Gitlab::Metrics::System'
def initialize
@start_time = monotonic_time
end
def over_limit?
monotonic_time - start_time >= MAX_RUNTIME
end
private
attr_reader :start_time
end
end
end