Description
The current implementation of the Dynamic Modules bootstrap extension envoy.bootstrap.dynamic_modulesenvoy.extensions.bootstrap.dynamic_modules.v3.DynamicModuleBootstrapExtension does not provide any API for dynamic modules to read values from the extension_config field at runtime. This makes it impossible to pass global configuration settings into dynamic modules through the standard bootstrap extension mechanism.
Background
The DynamicModuleBootstrapExtension proto supports an extension_config field of type google.protobuf.Any, which allows operators to embed arbitrary typed configuration alongside the module declaration.
For example:
bootstrap_extensions:
- name: envoy.bootstrap.dynamic_modules
typed_config:
"@type": type.googleapis.com/envoy.extensions.bootstrap.dynamic_modules.v3.DynamicModuleBootstrapExtension
dynamic_module_config:
name: composer
extension_name: composer
extension_config:
"@type": "type.googleapis.com/google.protobuf.StringValue"
value: myCustomValue
Problem
Despite the extension_config field being present in the proto definition and accepted by Envoy during bootstrap parsing, there is no API surface exposed to the dynamic module itself to retrieve this value at runtime.
Description
The current implementation of the Dynamic Modules bootstrap extension envoy.bootstrap.dynamic_modulesenvoy.extensions.bootstrap.dynamic_modules.v3.DynamicModuleBootstrapExtension does not provide any API for dynamic modules to read values from the extension_config field at runtime. This makes it impossible to pass global configuration settings into dynamic modules through the standard bootstrap extension mechanism.
Background
The DynamicModuleBootstrapExtension proto supports an extension_config field of type google.protobuf.Any, which allows operators to embed arbitrary typed configuration alongside the module declaration.
For example:
Problem
Despite the extension_config field being present in the proto definition and accepted by Envoy during bootstrap parsing, there is no API surface exposed to the dynamic module itself to retrieve this value at runtime.