envoyproxy/envoy

Native multi-file YAML config support like Nginx `include` directive

Open

#43,511 opened on Feb 16, 2026

View on GitHub
 (2 comments) (0 reactions) (0 assignees)C++ (5,373 forks)batch import
enhancementhelp wanted

Repository metrics

Stars
 (27,997 stars)
PR merge metrics
 (Avg merge 8d) (303 merged PRs in 30d)

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