diff options
author | Sergio Castaño Arteaga <sarteaga@ipowow.com> | 2014-12-18 15:43:20 +1100 |
---|---|---|
committer | Sergio Castaño Arteaga <sarteaga@ipowow.com> | 2014-12-18 15:43:20 +1100 |
commit | 620876fd0001b13237d0113e525a8ecc2d37272f (patch) | |
tree | 9ade5cf75cf1947206737e046f4abb77b89923e5 /src/etcd | |
parent | b0dd619fce24dd608b86bd01941aeabd930eb0e0 (diff) | |
parent | 6ccabd858fe6f47618151ef44c6e3f9160979233 (diff) |
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'src/etcd')
-rw-r--r-- | src/etcd/client.py | 13 | ||||
-rw-r--r-- | src/etcd/tests/unit/test_client.py | 8 |
2 files changed, 17 insertions, 4 deletions
diff --git a/src/etcd/client.py b/src/etcd/client.py index f73c667..271d85e 100644 --- a/src/etcd/client.py +++ b/src/etcd/client.py @@ -30,6 +30,7 @@ class Client(object): self, host='127.0.0.1', port=4001, + version_prefix='/v2', read_timeout=60, allow_redirect=True, protocol='http', @@ -47,6 +48,8 @@ class Client(object): port (int): Port used to connect to etcd. + version_prefix (str): Url or version prefix in etcd url (default=/v2). + read_timeout (int): max seconds to wait for a read. allow_redirect (bool): allow the client to connect to other nodes. @@ -81,7 +84,7 @@ class Client(object): self._base_uri = uri(self._protocol, self._host, self._port) - self.version_prefix = '/v2' + self.version_prefix = version_prefix self._read_timeout = read_timeout self._allow_redirect = allow_redirect @@ -452,7 +455,7 @@ class Client(object): """ return self.read(key) - def watch(self, key, index=None, timeout=None): + def watch(self, key, index=None, timeout=None, recursive=None): """ Blocks until a new event has been received, starting at index 'index' @@ -476,9 +479,11 @@ class Client(object): """ if index: - return self.read(key, wait=True, waitIndex=index, timeout=timeout) + return self.read(key, wait=True, waitIndex=index, timeout=timeout, + recursive=recursive) else: - return self.read(key, wait=True, timeout=timeout) + return self.read(key, wait=True, timeout=timeout, + recursive=recursive) def eternal_watch(self, key, index=None): """ diff --git a/src/etcd/tests/unit/test_client.py b/src/etcd/tests/unit/test_client.py index 4d83161..7ed00ee 100644 --- a/src/etcd/tests/unit/test_client.py +++ b/src/etcd/tests/unit/test_client.py @@ -19,6 +19,10 @@ class TestClient(unittest.TestCase): client = etcd.Client() assert client.port == 4001 + def test_default_prefix(self): + client = etcd.Client() + assert client.version_prefix == '/v2' + def test_default_protocol(self): """ default protocol is http""" client = etcd.Client() @@ -44,6 +48,10 @@ class TestClient(unittest.TestCase): client = etcd.Client(port=4002) assert client.port == 4002 + def test_default_prefix(self): + client = etcd.Client(version_prefix='/etcd') + assert client.version_prefix == '/etcd' + def test_set_protocol(self): """ can change protocol """ client = etcd.Client(protocol='https') |