Asynchronous Kong Client
Project description
Async Python Client for Kong
Tested with kong v3.8
Installation & Testing
To install the package
pip install aio-kong
To run tests, clone and
make test
:warning: If you don't have Kong or postgres running locally, run the services first
make services
test certificates were generated using the command
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -nodes -subj '/CN=localhost'
Client
The client can be imported via
from kong.client import Kong
In a coroutine:
async with Kong() as cli:
services = await cli.services.get_list()
print(json.dumps([s.data for s in services], indent=2))
By default the url is obtained from the "KONG_ADMIN_URL" environment variable which defaults to http://127.0.0.1:8001.
The client has handlers for all Kong objects
- cli.services CRUD operations on services
- cli.routes CRUD operations on routes
- cli.plugins CRUD operations on plugins
- cli.consumers CRUD operations on consumers
- cli.certificates CRUD operations on TLS certificates
- cli.snis CRUD operations on SNIs
cli.acls
To list all ACLs
Apply a configuration
The client allow to apply a configuration object to kong:
await cli.apply_json(config)
Command line tool
The library install the kongfig
command line tool for uploading kong configuration files.
kongfig --yaml config.yaml
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
aio_kong-3.5.0.tar.gz
(9.4 kB
view hashes)
Built Distribution
aio_kong-3.5.0-py3-none-any.whl
(13.7 kB
view hashes)