tarantool / tarantool/doc

config: `include` section for config files.

Open
#5,247 0 comments 0 reactions 1 assignee View on GitHub

@lenkis is already working on this.

Since Sep 25, 2025.

Dominant language
CSS
Stars
15
Forks
49
Avg merge
1d 13h
Merged PRs (30d)
3

Description

Using this section it is possible to include one or several other config
files from any config file. This is a top level field for file-based
configuration. If present, this field must be an array of strings.
Each entry in this array can be an absolute or relative path to a config
file to be included, or a wildcard pattern. Relative path are considered
relative to the file, where they are included.
Include section can be placed inside a conditional section.
The non-existing included files are skipped. If an included file exists
and is not a valid tarantool config file, an error will be raised.

Example config.yaml:

include:
  - config_a.yaml
  - /etc/tarantool/config_b.yaml
  - conf.d/*.yaml

For the provided example the resulting configuration will be merged
according to the rules:

  1. Config file provided by --config flag is read (config.yaml in
    our example).
  2. config_a.yaml from the same directory as the config.yaml is
    merged onto it.
  3. Recursively, the includes of config_a.yaml are merged onto the
    configuration.
  4. /etc/tarantool/config_b.yaml is merged.
  5. Recursively, the includes of /etc/tarantool/config_b.yaml are
    merged onto the configuration.
  6. For each config file, matching the wildcard pattern, in alphabetical
    order the configuration from the file itself is merged, then its
    includes are processed recursively, before processing the next
    wildcard match.
    Requested by @grafin in https://github.com/tarantool/tarantool/commit/e204545fe4ea0d764298760aa83a5a7968f1c5c9.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.