This tree hosts the configuration and APIs that drive Envoy. The APIs are also in some cases used by other proxy solutions that aim to interoperate with management systems and configuration generators that are built against this standard. Thus, we consider these a set of universal data plane APIs. See this blog post for more information on the universal data plane concept.
The .proto files in the protos directory have been placed such that simply running the protoc compiler will generate the required code.
protoc --plugin=protoc-gen-haskell-protolens=<path to proto-lens-protoc> --haskell-protolens_out=./<path to output folder> $(find protos -type f) --proto_path=./protos
The API tree can be found at two locations:
- https://github.com/envoyproxy/envoy/tree/master/api - canonical read/write home for the APIs.
- https://github.com/envoyproxy/data-plane-api - read-only mirror of https://github.com/envoyproxy/envoy/tree/master/api, providing the ability to consume the data plane APIs without the Envoy implementation.