Python client for Consul.io <http://www.consul.io/>
_
|Build Status|
|Github-actions Build Status|
|License Status|
|Pypi Status|
|Pyversions Status|
|Docs Status|
|Coverage Status|
Example
.. code:: python
import consul
c = consul.Consul()
# poll a key for updates
index = None
while True:
index, data = c.kv.get('foo', index=index)
print data['Value']
# in another process
c.kv.put('foo', 'bar')
Installation
::
pip install python-consul2
Note: When using python-consul library in environment with proxy server, setting of http_proxy
, https_proxy
and no_proxy
environment variables can be required for proper functionality.
.. |Build Status|
image:: https://api.travis-ci.org/poppyred/python-consul2.svg?branch=master
:target: https://travis-ci.org/poppyred/python-consul2
.. |Github-actions Build Status|
image:: https://github.com/poppyred/python-consul2/workflows/python-consul2-x86/badge.svg
:target: https://github.com/poppyred/python-consul2/actions
.. |License Status|
image:: https://img.shields.io/pypi/l/python-consul2
:target: https://github.com/poppyred/python-consul2/blob/master/LICENSE
.. |Pypi Status|
image:: https://img.shields.io/pypi/v/python-consul2
:target: https://pypi.org/project/python-consul2/
.. |Pyversions Status|
image:: https://img.shields.io/pypi/pyversions/python-consul2
:target: https://pypi.org/project/python-consul2/
.. |Docs Status|
image:: https://img.shields.io/readthedocs/python-consul2
:target: https://python-consul2.readthedocs.io/
.. |Coverage Status1|
image:: https://codecov.io/gh/poppyred/python-consul2/branch/master/graph/badge.svg
:target: https://codecov.io/gh/poppyred/python-consul2
.. |Coverage Status|
image:: https://codecov.io/gh/poppyred/python-consul2/branch/master/graph/badge.svg
:target: https://codecov.io/gh/poppyred/python-consul2
Status
This python-consul <https://github.com/cablehead/python-consul>
_ author may be a little busy, I will maintain a version
python-consul2 <https://github.com/poppyred/python-consul2>
_,
welcome to use. The new consul version was used(v1.6.1). Progressively
implement all API interfaces in the future
There's a few API endpoints still to go to expose all features available in
Consul v1.6.1. If you need an endpoint that's not in the documentation, just
open an issue and I'll try and add it straight away.
Mailing List
Contributing
python-consul2 is currently maintained by:
Please reach out if you're interested in being a maintainer as well. Otherwise,
open a PR or Issue we'll try and respond as quickly as we're able.
Issue Labels
:today!: Some triaging is in progress and this issue should be taken care of in
a couple of hours!
:priority: There's a clear need to address this issue and it's likely a core
contributor will take it on. Opening a PR for these is greatly
appreciated!
:help wanted: This issue makes sense and would be useful. It's unlikely a core
contributor will get to this though, so if you'd like to see it
addressed please open a PR.
:question: The need for the issue isn't clear or needs clarification, so please
follow up. Issues in this state for a few months, without
responses will likely will be closed.
PRs
~~~
Pull requests are very much appreciated! When you create a PR please ensure:
#. All current tests pass, including flake8
#. To add tests for your new features, if reasonable
#. To add docstrings for new api features you add and if needed link to these
docstrings from the sphinx documentation
Releases
~~~~~~~~
.. code:: bash
# release the current version, eg: 0.6.1-dev -> 0.6.1
bumpversion release
# prepare the next patch (z-stream) version, eg: 0.6.1 -> 0.6.2-dev
bumpversion --no-tag patch
# else, prepare the next minor (y-stream) version, eg: 0.6.1 -> 0.7.0-dev
bumpversion --no-tag minor
Change log
==========
0.0.1
-----
Features
~~~~~~~~
* forked from cablehead/python-consul
* Fix `Consul.ACL` support
0.0.4
-----
Features
~~~~~~~~
* implement Connect Config Snapshot consul_api
0.0.5
-----
Features
~~~~~~~~
* implement all consul http-api
0.0.8
-----
Features
~~~~~~~~
* Add TLSSkipVerify for HTTPS check <bhuisgen@hbis.fr>
0.0.16
-------
Features
~~~~~~~~
* Timeout added to http requests <https://github.com/poppyred/python-consul2/pull/4>
* Handle CONSUL_HTTP_ADDR including a http:// or https:// scheme <https://github.com/poppyred/python-consul2/pull/3>
0.0.17
-------
Features
~~~~~~~~
* removes the WriteRequest in the json body where used. <https://www.consul.io/docs/upgrade-specific.html#stricter-json-decoding>
* refactors the api token to use the `X-Consul-Token` header instead of a parameter, which is recommended and more secure.
* Fix catalog.register node_meta in data not in params <https://github.com/poppyred/python-consul2/issues/11>
* Fix #7 #9 #10 #11
0.1.0
------
Features
~~~~~~~~
* `long_description` has syntax errors in markup and would not be rendered on PyPI.
0.1.3
-----
Features
~~~~~~~~
* Support `SkipNodeUpdate` parameter