Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAhmad Hassan <ahmad.hassan612@gmail.com>2018-12-19 20:07:33 +0300
committerAhmad Hassan <ahmad.hassan612@gmail.com>2018-12-20 19:24:53 +0300
commitd975074e1fc0d8c28da5a9ddb9ccfbd319e39046 (patch)
tree70db3fae556616e4dd6e83b47eb7d1b10944977a /lib/gitlab/gitaly_client.rb
parent32c4f70aa585f58619c32d6c8e9db44191d82bfb (diff)
Log certificate loading errors into sentry
Diffstat (limited to 'lib/gitlab/gitaly_client.rb')
-rw-r--r--lib/gitlab/gitaly_client.rb12
1 files changed, 8 insertions, 4 deletions
diff --git a/lib/gitlab/gitaly_client.rb b/lib/gitlab/gitaly_client.rb
index d54d40c08fb..8bf8a3b53cd 100644
--- a/lib/gitlab/gitaly_client.rb
+++ b/lib/gitlab/gitaly_client.rb
@@ -57,18 +57,22 @@ module Gitlab
end
end
- def self.stub_certs
- return @certs if @certs
-
+ def self.stub_cert_paths
cert_paths = Dir["#{OpenSSL::X509::DEFAULT_CERT_DIR}/*"]
cert_paths << OpenSSL::X509::DEFAULT_CERT_FILE if File.exist? OpenSSL::X509::DEFAULT_CERT_FILE
+ cert_paths
+ end
+
+ def self.stub_certs
+ return @certs if @certs
- @certs = cert_paths.flat_map do |cert_file|
+ @certs = stub_cert_paths.flat_map do |cert_file|
File.read(cert_file).scan(PEM_REGEX).map do |cert|
begin
OpenSSL::X509::Certificate.new(cert).to_pem
rescue OpenSSL::OpenSSLError => e
Rails.logger.error "Could not load certificate #{cert_file} #{e}"
+ Gitlab::Sentry.track_exception(e, extra: { cert_file: cert_file })
nil
end
end.compact