config: `include` section for config files.
@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:
- Config file provided by
--configflag is read (config.yamlin
our example). config_a.yamlfrom the same directory as theconfig.yamlis
merged onto it.- Recursively, the includes of
config_a.yamlare merged onto the
configuration. /etc/tarantool/config_b.yamlis merged.- Recursively, the includes of
/etc/tarantool/config_b.yamlare
merged onto the configuration. - 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
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.