Documentation ¶
Index ¶
- Constants
- Variables
- func ConfigureConcurrencyLimits()
- func ConfigureLogging()
- func ConfigurePrometheus()
- func ConfigureRuby() error
- func ConfigureSentry(version string)
- func Load(file io.Reader) error
- func SetGitPath() error
- func StoragePath(storageName string) (string, bool)
- func Validate() error
- type Auth
- type Concurrency
- type Git
- type GitlabShell
- type Logging
- type Prometheus
- type Ruby
- type Storage
- type TLS
Constants ¶
const ( // EnvPidFile is the name of the environment variable containing the pid file path EnvPidFile = "GITALY_PID_FILE" // EnvUpgradesEnabled is an environment variable that when defined gitaly must enable graceful upgrades on SIGHUP EnvUpgradesEnabled = "GITALY_UPGRADES_ENABLED" )
Variables ¶
var (
// Config stores the global configuration
Config config
)
Functions ¶
func ConfigureConcurrencyLimits ¶ added in v0.43.0
func ConfigureConcurrencyLimits()
ConfigureConcurrencyLimits configures the per-repo, per RPC rate limits
func ConfigureLogging ¶ added in v0.11.0
func ConfigureLogging()
ConfigureLogging uses the global conf and environmental vars to configure log levels and format
func ConfigurePrometheus ¶ added in v0.11.0
func ConfigurePrometheus()
ConfigurePrometheus uses the global configuration to configure prometheus
func ConfigureRuby ¶ added in v0.60.0
func ConfigureRuby() error
ConfigureRuby validates the gitaly-ruby configuration and sets default values.
func ConfigureSentry ¶ added in v0.11.0
func ConfigureSentry(version string)
ConfigureSentry configures the sentry DSN
func Load ¶
Load initializes the Config variable from file and the environment.
Environment variables take precedence over the file.
func SetGitPath ¶ added in v0.18.0
func SetGitPath() error
SetGitPath populates the variable GitPath with the path to the `git` executable. It warns if no path was specified in the configuration.
func StoragePath ¶ added in v0.7.0
StoragePath looks up the base path for storageName. The second boolean return value indicates if anything was found.
Types ¶
type Concurrency ¶ added in v0.43.0
Concurrency allows endpoints to be limited to a maximum concurrency per repo
type Git ¶ added in v0.18.0
type Git struct { BinPath string `toml:"bin_path"` // ProtocolV2Enabled can be set to true to enable the newer Git protocol // version. This should not be enabled until GitLab *either* stops // using transfer.hideRefs for security purposes, *or* Git protocol v2 // respects this setting: // // https://public-inbox.org/git/20181213155817.27666-1-avarab@gmail.com/T/ // // This is not user-configurable. Once a new Git version has been released, // we can add code to enable it if the detected git binary is new enough ProtocolV2Enabled bool }
Git contains the settings for the Git executable
type GitlabShell ¶ added in v0.29.0
type GitlabShell struct {
Dir string `toml:"dir"`
}
GitlabShell contains the settings required for executing `gitlab-shell`
type Logging ¶ added in v0.11.0
type Logging struct { Format string SentryDSN string `toml:"sentry_dsn"` RubySentryDSN string `toml:"ruby_sentry_dsn"` Level string `toml:"level"` }
Logging contains the logging configuration for Gitaly
type Prometheus ¶ added in v0.11.0
type Prometheus struct {
GRPCLatencyBuckets []float64 `toml:"grpc_latency_buckets"`
}
Prometheus contains additional configuration data for prometheus
type Ruby ¶ added in v0.26.0
type Ruby struct { Dir string `toml:"dir"` MaxRSS int `toml:"max_rss"` GracefulRestartTimeout time.Duration GracefulRestartTimeoutToml duration `toml:"graceful_restart_timeout"` RestartDelay time.Duration RestartDelayToml duration `toml:"restart_delay"` NumWorkers int `toml:"num_workers"` LinguistLanguagesPath string `toml:"linguist_languages_path"` }
Ruby contains setting for Ruby worker processes