# Example Gitaly configuration file # Documentation lives at https://docs.gitlab.com/ee/administration/gitaly/ and # https://docs.gitlab.com/ee//administration/gitaly/reference socket_path = "/home/git/gitlab/tmp/sockets/private/gitaly.socket" # The directory where Gitaly's executables are stored bin_dir = "/home/git/gitaly" # # Optional: listen on a TCP socket. This is insecure (no authentication) # listen_addr = "localhost:9999" # tls_listen_addr = "localhost:8888" # # Optional: export metrics via Prometheus # prometheus_listen_addr = "localhost:9236" # # Optional: configure where the Gitaly creates the sockets for internal connections. If unset, Gitaly will create a randomly # # named temp directory each time it boots. # # Non Gitaly clients should never connect to these sockets. # internal_socket_dir = "/home/git/gitlab/tmp/sockets/private/internal" # # Optional: authenticate Gitaly requests using a shared secret # [auth] # token = 'abc123secret' # transitioning = false # Set `transitioning` to true to temporarily allow unauthenticated while rolling out authentication. # [tls] # certificate_path = '/home/git/cert.cert' # key_path = '/home/git/key.pem' # # Git settings # [git] # bin_path = "/usr/bin/git" # catfile_cache_size = 100 [[storage]] name = "default" path = "/home/git/repositories" # # You can optionally configure more storages for this Gitaly instance to serve up # # [[storage]] # name = "other_storage" # path = "/mnt/other_storage/repositories" # # # You can optionally configure Gitaly to output JSON-formatted log messages to stdout # [logging] # # The directory where Gitaly stores extra log files dir = "/home/git/gitlab/log" # format = "json" # # Optional: Set log level to only log entries with that severity or above # # One of, in order: debug, info, warn, errror, fatal, panic # # Defaults to "info" # level = "warn" # # # Additionally exceptions from the Go server can be reported to Sentry # sentry_dsn = "https://:@sentry.io/" # # Exceptions from gitaly-ruby can also be reported to Sentry # ruby_sentry_dsn = "https://:@sentry.io/" # # You can optionally configure Gitaly to record histogram latencies on GRPC method calls # [prometheus] # grpc_latency_buckets = [0.001, 0.005, 0.025, 0.1, 0.5, 1.0, 10.0, 30.0, 60.0, 300.0, 1500.0] [gitaly-ruby] # The directory where gitaly-ruby is installed dir = "/home/git/gitaly/ruby" # # Gitaly-ruby resident set size (RSS) that triggers a memory restart (bytes) # max_rss = 200000000 # # # Grace period before a gitaly-ruby process is forcibly terminated after exceeding max_rss (seconds) # graceful_restart_timeout = "10m" # # # Time that gitaly-ruby memory must remain high before a restart (seconds) # restart_delay = "5m" # # # Number of gitaly-ruby worker processes # num_workers = 2 # # # Search path for system gitconfig file (e.g. /etc, /opt/gitlab/embedded/etc) # # NOTE: This only affects RPCs that use Rugged. # rugged_git_config_search_path = "/etc" [gitlab-shell] # The directory where gitlab-shell is installed dir = "/home/git/gitlab-shell" [hooks] custom_hooks_dir = "/home/git/custom_hooks" [gitlab] secret_file = "/home/git/gitlab-shell/.gitlab_shell_secret" url = "http+unix://%2Fhome%2Fgit%2Fgitlab%2Ftmp%2Fsockets%2Fgitlab-workhorse.socket" # Only needed if a UNIX socket is used in `url` and GitLab is configured to # use a relative path (e.g. /gitlab). # relative_url_root = '/' [gitlab.http-settings] # read_timeout = 300 # user = someone # password = somepass # ca_file = /etc/ssl/cert.pem # ca_path = /etc/pki/tls/certs self_signed_cert = false # # You can adjust the concurrency of each RPC endpoint # [[concurrency]] # rpc = "/gitaly.RepositoryService/GarbageCollect" # max_per_repo = 1 # Daily maintenance designates time slots to run daily to optimize and maintain # enabled storages. # [daily_maintenance] # start_hour = 23 # start_minute = 30 # duration = "45m" # storages = ["default"]