config service client
Project description
config-client
config-client package for spring cloud config.
Installing
Install and update using pip:
pip install -U config-client
Dependencies
Setup
config server url pattern:
- http://<config_server>:<config_server_port>/configuration/<branch>/<app_name>-<profile>.json
# expected environment variables:
#
CONFIGSERVER_ADDRESS=http://configserver:8888/configuration
BRANCH=master
PROFILE=development
APP_NAME=myapp
will result in:
http://configserver:8888/configuration/master/myapp-development.json
Default values
if no value was adjusted for the environment variables below, the default value will be assumed, as:
CONFIGSERVER_ADDRESS=http://localhost:8888/configuration
BRANCH=master
PROFILE=development
APP_NAME=
Usage Example
using standard client
from config.spring import ConfigServer
config_client = ConfigServer()
config_client.config['spring']['cloud']['consul']['host']
config_client.config.get('spring').get('cloud').get('consul').get('port')
standard client with @decorator
from config import spring
@spring.config_client
def my_test(config_client):
config_client.config['spring']['cloud']['consul']['host']
config_client.config.get('spring').get('cloud').get('consul').get('port')
Integration with Flask.
from config.spring import ConfigServer
from flask import Flask
config_client = ConfigServer()
app = Flask(__name__)
app.run(host='0.0.0.0',
port=config_client.config['app']['port']
using asyncio
client using asyncio
import asyncio
from config.spring import ConfigServer
loop = asyncio.get_event_loop()
config_client = ConfigServer()
async def service_discovery():
await discovery_client.register(config_client.config['app']['name'],
config_client.config.get('app').get('port'))
discovery_client = Consul(config_client.config['spring']['cloud']['consul']['host'],
config_client.config['spring']['cloud']['consul']['port'],
loop)
loop.run_until_complete(service_discovery)
Links
- License: Apache License
- Code: https://github.com/amenezes/config-client
- Issue tracker: https://github.com/amenezes/config-client/issues
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
config-client-0.2.1.tar.gz
(3.7 kB
view hashes)
Built Distribution
Close
Hashes for config_client-0.2.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c5fa35bbd3587e47a4bce87c00486dc51c73a4808257792b0c03b9f15bb84450 |
|
MD5 | 9ca49571adc4ecc9e3a44fffda9e0faa |
|
BLAKE2b-256 | 2ae1147f30506a57c9e9db292c3211e0bf309bd22339d0c14143b86922c343d4 |