Native multi-file YAML config support like Nginx `include` directive
- Dominant language
- C++
- Stars
- 28.9k
- Forks
- 5.6k
- Avg merge
- 1d 22h
- Merged PRs (30d)
- 430
Description
## Feature Request Summary
Add native support for splitting Envoy bootstrap configuration across multiple YAML files, similar to Nginx's `include` directive and `/etc/nginx/conf.d/*.conf` directory scanning.
## Motivation
Unlike Nginx, which seamlessly loads multiple config files from a directory into a unified config tree, Envoy requires a single bootstrap YAML file. Current workarounds like `!ignore` YAML fragments with anchors/aliases work but have limitations:
- Still requires a "main" bootstrap file
- Manual anchor management across files
- No automatic directory scanning
- Full reload needed for fragment changes
- Not as intuitive for teams familiar with Nginx/HAProxy
This is especially painful for complex deployments (Kubernetes sidecars, Docker Compose with multiple services) where configs grow large and need modularization.
Contributor guide
Assessment
This issue has not been assessed yet.