summaryrefslogtreecommitdiff
path: root/lib/gitlab/git/wraps_gitaly_errors.rb
blob: 2009683d32c5e912fb31bb9ff4b7690db4b33309 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# frozen_string_literal: true

module Gitlab
  module Git
    module WrapsGitalyErrors
      def wrapped_gitaly_errors(&block)
        yield block
      rescue GRPC::NotFound => e
        raise Gitlab::Git::Repository::NoRepository.new(e)
      rescue GRPC::InvalidArgument => e
        raise ArgumentError.new(e)
      rescue GRPC::DeadlineExceeded => e
        raise Gitlab::Git::CommandTimedOut.new(e)
      rescue GRPC::BadStatus => e
        raise Gitlab::Git::CommandError.new(e)
      end
    end
  end
end