Conversation
Signed-off-by: Ryan Northey <ryan@synca.io>
wbpcode
left a comment
There was a problem hiding this comment.
Thanks for adding this and some initial comments are added.
|
|
||
| ## Module Types | ||
|
|
||
| Envoy supports three primary approaches for building extensions: |
There was a problem hiding this comment.
| Envoy supports three primary approaches for building extensions: | |
| Envoy supports three primary approaches for building dynamic extensions: |
| Envoy supports three primary approaches for building extensions: | ||
|
|
||
| ### [Dynamic Modules](./dynamic/) | ||
| Native extensions written in C++, Rust, or Go that are compiled as shared libraries and loaded dynamically at runtime. |
There was a problem hiding this comment.
| Native extensions written in C++, Rust, or Go that are compiled as shared libraries and loaded dynamically at runtime. | |
| Extensions written in C++, Rust, or Go that are compiled as shared libraries and loaded dynamically at runtime. |
AFAIK, the native often be used to refer to the extensions that built in Envoy binary.
| ## Contributing | ||
|
|
||
| Contributions are welcome! Please ensure your modules: | ||
| - Follow Envoy's extension best practices |
| @@ -0,0 +1,81 @@ | |||
| # Dynamic Modules | |||
|
|
|||
| Dynamic modules are native extensions for Envoy that are compiled as shared libraries and loaded at runtime. These modules can be written in C++, Rust, or Go. | |||
There was a problem hiding this comment.
May be remove the native? I am not very sure now. Because, in some way, the shared lib is native..., but it is different with our native extensions in the envoyproxy/envoy.
| ## Supported Languages | ||
|
|
||
| ### C++ | ||
| - Direct access to Envoy's C++ APIs |
There was a problem hiding this comment.
Note, dynamic module couldn't access Envoy C++ API directly. The dynamic modules are build based a C API (https://github.com/envoyproxy/envoy/blob/main/source/extensions/dynamic_modules/abi.h) that exposed by the Envoy. It has very big difference with the actual C++ API that used by our actual native extension (Like https://github.com/envoyproxy/envoy/blob/main/envoy/http/filter.h)
|
hi @wbpcode i should have probably set this to WIP it was a bot generated first attempt now that you have reviewed tho - lets iterate - ill go through your review later today |
| - filters: | ||
| - name: envoy.filters.http.dynamic_module | ||
| typed_config: | ||
| "@type": type.googleapis.com/envoy.extensions.filters.http.dynamic_module.v3.DynamicModule |
There was a problem hiding this comment.
| "@type": type.googleapis.com/envoy.extensions.filters.http.dynamic_module.v3.DynamicModule | |
| "@type": type.googleapis.com/envoy.extensions.filters.http.dynamic_modules.v3.DynamicModuleFilter |
Is this the right type, from https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/filters/http/dynamic_modules/v3/dynamic_modules.proto#extensions-filters-http-dynamic-modules-v3-dynamicmodulefilter ?
No description provided.