1- # Envoy Types
1+ # envoy-types
22
3- Collection of protobuf types and other assets to work with the [ Envoy Proxy ]
4- through Rust gRPC services.
3+ Collection of protobuf types and other assets to work with the
4+ [ Envoy Proxy ] ( https://www.envoyproxy.io ) through Rust gRPC services.
55
66Among other use cases, this crate can be used to implement an
7- [ Envoy External Authorization] (ExtAuthz) gRPC Server written in Rust.
7+ [ Envoy External Authorization] ( https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/ext_authz_filter )
8+ (ExtAuthz) gRPC Server written in Rust.
89
910[ ![ Crates.io Badge] ( https://img.shields.io/crates/v/envoy-types )] ( https://crates.io/crates/envoy-types )
1011[ ![ Documentation Badge] ( https://docs.rs/envoy-types/badge.svg )] ( https://docs.rs/envoy-types )
11- [ ![ License Badge] ( https://img.shields.io/crates/l/envoy-types )] ( LICENSE )
12+ [ ![ License Badge] ( https://img.shields.io/crates/l/envoy-types )] ( https://github.com/flemosr/envoy-types/blob/main/ LICENSE)
1213![ CI Badge] ( https://github.com/flemosr/envoy-types/actions/workflows/ci.yml/badge.svg )
1314
14- [ Examples] | [ Docs]
15+ [ Repository] ( https://github.com/flemosr/envoy-types ) |
16+ [ Examples] ( https://github.com/flemosr/envoy-types/tree/main/examples ) |
17+ [ Documentation] ( https://docs.rs/envoy-types/latest/envoy_types )
1518
1619## Getting Started
1720
@@ -26,20 +29,19 @@ This project's MSRV is `1.75`.
2629envoy-types = " <envoy-types-version>"
2730```
2831
29- The protobuf types made available are already pre-compiled, so you only need the
30- latest stable Protocol Buffer Compiler (` protoc ` ) to run the crate's tests.
31- Generated code may vary across ` protoc ` versions, and the use of the latest
32- stable version is enforced by CI.
33- Installation instructions can be found [ here] [ protoc-install ] .
32+ The protobuf types made available are already pre-compiled, so the latest stable Protocol Buffer
33+ Compiler (` protoc ` ) is only needed to run the crate's tests. Generated code may vary across ` protoc `
34+ versions, and the use of the latest stable version is enforced by CI. Installation instructions can
35+ be found [ here] ( https://grpc.io/docs/protoc-installation/ ) .
3436
3537## Examples
3638
3739The example bellow covers a bare-bones implementation of an Envoy ExtAuthz gRPC
38- ` AuthorizationServer ` , with [ ` tonic ` ] . A more complete implementation,
39- including query parameters and header manipulation, can be found at the
40- [ examples] directory.
40+ ` AuthorizationServer ` , with [ ` tonic ` ] ( https://github.com/hyperium/tonic ) . A more complete
41+ implementation, including query parameters and header manipulation, can be found at the
42+ [ examples] ( https://github.com/flemosr/envoy-types/tree/main/examples ) directory.
4143
42- ``` rust
44+ ``` rust,ignore
4345use std::env;
4446use tonic::{transport::Server, Request, Response, Status};
4547
@@ -94,8 +96,9 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
9496
9597## Compatibility
9698
97- The table bellow outlines the correspondence between the versions of [ ` tonic ` ]
98- and the compatible versions of [ ` envoy-types ` ] .
99+ The table bellow outlines the correspondence between the versions of
100+ [ ` tonic ` ] ( https://github.com/hyperium/tonic ) and the compatible versions of
101+ [ ` envoy-types ` ] ( https://crates.io/crates/envoy-types ) .
99102
100103` tonic ` | ` envoy-types `
101104:- | :-
@@ -108,18 +111,10 @@ v0.9 | [v0.2](https://crates.io/crates/envoy-types/0.2.0)
108111
109112## License
110113
111- This project is licensed under the [ Apache License (Version 2.0)] ( LICENSE ) .
114+ This project is licensed under the
115+ [ Apache License (Version 2.0)] ( https://github.com/flemosr/envoy-types/blob/main/LICENSE ) .
112116
113117## Contribution
114118
115- Unless you explicitly state otherwise, any contribution intentionally submitted
116- for inclusion by you, shall be licensed as Apache-2.0, without any additional
117- terms or conditions.
118-
119- [ Envoy Proxy ] : https://www.envoyproxy.io
120- [ Envoy External Authorization ] : https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/ext_authz_filter
121- [ examples ] : https://github.com/flemosr/envoy-types/tree/main/examples
122- [ `envoy-types` ] : https://crates.io/crates/envoy-types
123- [ Docs ] : https://docs.rs/envoy-types/latest/envoy_types
124- [ protoc-install ] : https://grpc.io/docs/protoc-installation/
125- [ `tonic` ] : https://github.com/hyperium/tonic
119+ Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion by
120+ you, shall be licensed as Apache-2.0, without any additional terms or conditions.
0 commit comments