Installer for Envoy Protobuf files
Project description
envoy-proto-builder
Builds and installs Envoy protocol buffers and the following dependencies:
data-plane-api
googleapis
protoc-gen-validate
opencensus-proto
How it works
Clones the Envoy repository and associated dependencies to a temporary location. Builds the proto files into virtual Python module and installs the module with pip. The protobuf files are available in envoy_proto.
Installation
pip installl envoy-proto-builder
Usage
Running with no arguments will install the Envoy files from the master branch.
usage: envoy-protobuf-builder [-h] [--version VERSION] [--src-dir SRC_DIR] [--no-clone]
optional arguments:
-h, --help show this help message and exit
--version VERSION The Envoy version to build. Defaults to master.
--src-dir SRC_DIR The directory to clone the repositories to. If not specified a temporary
location is used.
--no-clone Build the files with cloning the repositories.
Code Sample
from .common import make_any
from envoy_proto.envoy.config.filter.accesslog.v2.accesslog_pb2 import AccessLog
from envoy_proto.envoy.config.accesslog.v2.file_pb2 import FileAccessLog
from envoy_proto.envoy.api.v2.core.config_source_pb2 import ConfigSource
from envoy_proto.envoy.api.v2.listener.listener_pb2 import (
Filter,
FilterChain,
)
from envoy_proto.envoy.config.filter.network.http_connection_manager.v2.http_connection_manager_pb2 import (
HttpConnectionManager,
HttpFilter,
Rds,
)
FilterChain(
filters=[
Filter(
name='envoy.http_connection_manager',
typed_config=make_any(
HttpConnectionManager(
stat_prefix='ingress_http',
rds=Rds(
route_config_name='local_route',
config_source=ConfigSource(
path='/etc/envoy/routes.yaml',
)
),
http_filters=[
HttpFilter(name='envoy.router')
],
access_log=[
AccessLog(
name='envoy.file_access_log',
typed_config=make_any(
FileAccessLog(
format='''\
%REQ(:METHOD)% %REQ(:AUTHORITY)%%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% -> %UPSTREAM_CLUSTER% %REQ(:PATH)% %RESPONSE_CODE% %RESPONSE_FLAGS%\n''',
path='/dev/stdout',
)
)
)
]
)
)
)
]
)
History
0.1.0 (2019-12-05)
First release on PyPI.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for envoy-protobuf-builder-0.1.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 73c8d25f64ab7221636d6d0bc81b41b59d3385b28385b766ff27db49faaa18ba |
|
MD5 | 1633848422fb754f76516896e5239a57 |
|
BLAKE2b-256 | 14db6ddb32aa11ac4a53d07bb766b105bb29df2157a0057596db4ab9c0d904c8 |
Close
Hashes for envoy_protobuf_builder-0.1.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 25f08ae6439fb84ec0be7f65cd17047e28d2a27d3c0c3cf786f7067f5e413b80 |
|
MD5 | 1c370b70ddc8cef3029869f608a587dc |
|
BLAKE2b-256 | d33fd04778ffe8bb812168a342bf514df26eed6bcddf4426ec9eec45c7bc5aab |