File: 7_gitlab_http.rb

package info (click to toggle)
gitlab 17.6.5-19
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 629,368 kB
  • sloc: ruby: 1,915,304; javascript: 557,307; sql: 60,639; xml: 6,509; sh: 4,567; makefile: 1,239; python: 406
file content (32 lines) | stat: -rw-r--r-- 1,081 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# frozen_string_literal: true

# When including this gem, we also initialize the patch / override classes in the gem.
require 'gitlab-http'

Gitlab::HTTP_V2.configure do |config|
  config.allowed_internal_uris = [
    (Gitlab.config.gitlab.protocol == 'https' ? URI::HTTPS : URI::HTTP).build(
      host: Gitlab.config.gitlab.host,
      port: Gitlab.config.gitlab.port
    ),
    URI::Generic.build(
      scheme: 'ssh',
      host: Gitlab.config.gitlab_shell.ssh_host,
      port: Gitlab.config.gitlab_shell.ssh_port
    )
  ]

  config.log_exception_proc = ->(exception, extra_info) do
    Gitlab::ErrorTracking.log_exception(exception, extra_info)
  end
  config.silent_mode_log_info_proc = ->(message, http_method) do
    Gitlab::SilentMode.log_info(message: message, outbound_http_request_method: http_method)
  end
end

if Gitlab.config.gitlab['http_client'].present?
  pem = File.read(Gitlab.config.gitlab['http_client']['tls_client_cert_file'])
  password = Gitlab.config.gitlab['http_client']['tls_client_cert_password']

  Gitlab::HTTP_V2::Client.pem(pem, password)
end