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.
Filename, size | File type | Python version | Upload date | Hashes |
---|---|---|---|---|
Filename, size python_envoy_protobuf_installer-0.1.0-py2.py3-none-any.whl (6.9 kB) | File type Wheel | Python version py2.py3 | Upload date | Hashes View |
Filename, size python-envoy-protobuf-installer-0.1.0.tar.gz (8.0 kB) | File type Source | Python version None | Upload date | Hashes View |
Close
Hashes for python_envoy_protobuf_installer-0.1.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 00a094b13ab1fb1efaf9e229d7cfe4933cff16fe02bb311b0d7d2c071de92946 |
|
MD5 | 41e6a53d81d65adcc7b83776dc776782 |
|
BLAKE2-256 | 39d0511eb731213fa1cfa1f5aeb81c6420798c75b8ae19b4a6cee735c530e6ab |
Close
Hashes for python-envoy-protobuf-installer-0.1.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 656f4f0482e21bac7763e3fe82013750d7d1879d8a5501932ce7829f6a49ca6d |
|
MD5 | 9a13d79eb6a3f043e36c17bf109378aa |
|
BLAKE2-256 | a9daef04c0b633e03d6f79667a86ada1867c48622e8531213cbe7492ba93982c |