Envoy Proxy control-plane written in Python
pip install sovereign==0.9.5
This project implements a JSON control-plane based on the envoy data-plane-api
The purpose of sovereign
is to supply downstream envoy proxies with
configuration in near-realtime by responding to discovery requests.
The idea behind this architecture is to enable high-extensibility.
Users can add their own entry point to the package (todo: documentation) which the control-plane
will automatically use to retrieve data to be turned into configuration on the fly.
pip install sovereign
I recommend creating a virtualenv before doing any dev work
python3 -m venv venv
source venv/bin/activate
pip install -r requirements-dev.txt
Running the test env
make run
Running the test env daemonized
make run-daemon
Pylint
make lint
Unit tests
make unit
Acceptance tests
make run-daemon acceptance
Pull requests, issues and comments welcome. For pull requests:
See the existing issues for things to start contributing.
For bigger changes, make sure you start a discussion first by creating an issue and explaining the intended change.
Atlassian requires contributors to sign a Contributor License Agreement, known as a CLA. This serves as a record stating that the contributor is entitled to contribute the code/documentation/translation to the project and is willing to have it used in distributions and derivative works (or is willing to transfer ownership).
Prior to accepting your contributions we ask that you please follow the appropriate link below to digitally sign the CLA. The Corporate CLA is for those who are contributing as a member of an organization and the individual CLA is for those contributing as an individual.
Copyright (c) 2018 Atlassian and others. Apache 2.0 licensed, see LICENSE.txt file.