• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

environments/H11-Jan-2022-21683

events/H11-Jan-2022-3,0492,913

feature_flags/H11-Jan-2022-3,2722,910

helpers/incremental_webpack_compiler/H03-May-2022-

initializers/H11-Jan-2022-5,2953,073

initializers_before_autoloader/H11-Jan-2022-246161

knative/H11-Jan-2022-119

locales/H11-Jan-2022-1,0531,037

metrics/H11-Jan-2022-40,38338,736

plugins/H03-May-2022-

prometheus/H11-Jan-2022-504485

routes/H11-Jan-2022-1,9891,511

README.mdH A D11-Jan-20223.9 KiB9070

application.rbH A D11-Jan-202222.1 KiB510302

boot.rbH A D11-Jan-2022255 73

bullet.ymlH A D11-Jan-20221.3 KiB4543

bundler_setup.rbH A D11-Jan-2022925 2512

cable.yml.exampleH A D11-Jan-2022431 1514

database.yml.decomposed-postgresqlH A D11-Jan-20221.1 KiB4846

database.yml.envH A D11-Jan-2022873 1816

database.yml.postgresqlH A D11-Jan-20221.3 KiB6258

database_geo.yml.postgresqlH A D11-Jan-2022859 4440

dependency_decisions.ymlH A D11-Jan-202210.3 KiB365364

environment.rbH A D11-Jan-2022159 82

feature_categories.ymlH A D11-Jan-20222.6 KiB134133

gitlab.yml.exampleH A D11-Jan-202262.5 KiB1,5921,415

known_invalid_graphql_queries.ymlH A D11-Jan-2022128 33

license_finder.ymlH A D11-Jan-202256 32

mail_room.ymlH A D11-Jan-20221.9 KiB5852

no_todos_messages.ymlH A D11-Jan-2022471 1211

object_store_settings.rbH A D11-Jan-20227.3 KiB20874

pseudonymizer.ymlH A D11-Jan-20229 KiB473471

puma.example.development.rbH A D11-Jan-20223.2 KiB9529

puma.rb.exampleH A D11-Jan-20223 KiB9473

resque.yml.exampleH A D11-Jan-20221 KiB3534

routes.rbH A D11-Jan-20229.6 KiB328233

secrets.yml.exampleH A D11-Jan-2022404 1310

settings.rbH A D11-Jan-20226.2 KiB206142

sidekiq.yml.exampleH A D11-Jan-202219 22

sidekiq_queues.ymlH A D11-Jan-20227.9 KiB448447

smime_signature_settings.rbH A D11-Jan-2022451 1510

spring.rbH A D11-Jan-2022400 1914

storage.ymlH A D11-Jan-2022149 32

README.md

1# Configuration files Documentation
2
3Note that most configuration files (`config/*.*`) committed into
4[gitlab-foss](https://gitlab.com/gitlab-org/gitlab-foss) **will not be used** for
5[omnibus-gitlab](https://gitlab.com/gitlab-org/omnibus-gitlab). Configuration
6files committed into gitlab-foss are only used for development.
7
8## gitlab.yml
9
10You can find most of the GitLab configuration settings here.
11
12## mail_room.yml
13
14This file is actually an YML wrapped inside an ERB file to enable templated
15values to be specified from `gitlab.yml`. mail_room loads this file first as
16an ERB file and then loads the resulting YML as its configuration.
17
18## resque.yml
19
20This file is called `resque.yml` for historical reasons. We are **NOT**
21using Resque at the moment. It is used to specify Redis configuration
22values when a single database instance of Redis is desired.
23
24## Advanced Redis configuration files
25
26In more advanced configurations of Redis key-value storage, it is desirable
27to separate the keys by lifecycle and intended use to ease provisioning and
28management of scalable Redis clusters.
29
30These settings provide routing and other configuration data (such as sentinel,
31persistence policies, and other Redis customization) for connections
32to Redis single instances, Redis sentinel, and Redis clusters.
33
34If desired, the routing URL provided by these settings can be used with:
351. Unix Socket
36    1. named socket for each Redis instance desired.
37    2. `database number` for each Redis instance desired.
382. TCP Socket
39    1. `host name` or IP for each Redis instance desired
40    2. TCP port number for each Redis instance desired
41    3. `database number` for each Redis instance desired
42
43### Example URL attribute formats for GitLab Redis `.yml` configuration files
44* Unix Socket, default Redis database (0)
45    * `url: unix:/path/to/redis.sock`
46    * `url: unix:/path/to/redis.sock?db=`
47* Unix Socket, Redis database 44
48    * `url: unix:/path/to/redis.sock?db=44`
49    * `url: unix:/path/to/redis.sock?extra=foo&db=44`
50* TCP Socket for Redis on localhost, port 6379, database 33
51    * `url: redis://:mynewpassword@localhost:6379/33`
52* TCP Socket for Redis on remote host `myserver`, port 6379, database 33
53    * `url: redis://:mynewpassword@myserver:6379/33`
54
55## Available configuration files
56
57The Redis instances that can be configured are described in the table below. The
58order of precedence for configuration is described below, where `$NAME` and
59`$FALLBACK_NAME` are the upper-cased instance names from the table, and `$name`
60and `$fallback_name` are the lower-cased versions:
61
621. The configuration file pointed to by the `GITLAB_REDIS_$NAME_CONFIG_FILE`
63   environment variable.
641. The configuration file `redis.$name.yml`.
651. **If a fallback instance is available**, the configuration file
66   `redis.$fallback_name.yml`.
671. The configuration file pointed to by the `GITLAB_REDIS_CONFIG_FILE`
68environment variable.
691. The configuration file `resque.yml`.
70
71An example configuration file for Redis is in this directory under the name
72`resque.yml.example`.
73
74| Name | Fallback instance | Purpose |
75| --- | --- | --- |
76| `cache` | | Volatile non-persistent data |
77| `queues` | | Background job processing queues |
78| `shared_state` | | Persistent application state |
79| `trace_chunks` | `shared_state` | [CI trace chunks](https://docs.gitlab.com/ee/administration/job_logs.html#incremental-logging-architecture) |
80| `rate_limiting` | `cache` | [Rate limiting](https://docs.gitlab.com/ee/user/admin_area/settings/user_and_ip_rate_limits.html) state |
81| `sessions` | `shared_state` | [Sessions](https://docs.gitlab.com/ee/development/session.html#redis)|
82
83If no configuration is found, or no URL is found in the configuration
84file, the default URL used is:
85
861. `redis://localhost:6380` for `cache`.
871. `redis://localhost:6381` for `queues`.
881. `redis://localhost:6382` for `shared_state`.
891. The URL from the fallback instance for all other instances.
90