A Python client for Spring Config Server.
This library is inspired by amenezes/config-client and is essentially a toned-down fork that I customized to fit my own needs.
- Provide a basic client
- Provide basic authentication
- Add support for CloudFoundry
Install using pip
$ pip install spring-config-clientThe very basic usage of this library looks like this:
from spring_config import ClientConfigurationBuilder
from spring_config.client import SpringConfigClient
config = ClientConfigurationBuilder().app_name("test-application").build()
c = SpringConfigClient(config)
c.get_config()By default, ClientConfigurationBuilder builds a ClientConfiguration object with server address and application profile set to http://localhost:8888 and development. These can be changed like this:
Here are some examples:
# Fetch from http://someserver.com using profile "development"
config = (
ClientConfigurationBuilder()
.app_name("test-application")
.address("http://someserver.com")
.build()
)
# Fetch from http://someserver.com using profile "production"
config = (
ClientConfigurationBuilder()
.app_name("test-application")
.address("http://someserver.com")
.profile("production")
.build()
)If your configuration server requires to use basic authentication, you can create the client configuration like this:
from spring_config import ClientConfigurationBuilder
config = (
ClientConfigurationBuilder()
.app_name("test-application")
.authentication(("username", "password"))
.build()
)The ClientConfigurationBuilder allow controlling these parameters.
- Application Name :
app_name("some-app")- DefaultNone, required. - Server Address :
address("http://some-server")- Defaulthttp://localhost:8888, optional. - Profile :
profile("production")- Defaultdevelopment, optional. - Branch :
branch("devel/0.1")- Defaultmaster, optional.
Please use the issues section to request new features and I will try to take out my time to work on them. Contributions in any sorts are always welcome :)