# aioetcd3 [![Build Status](https://travis-ci.org/gaopeiliang/aioetcd3.svg?branch=master)](https://travis-ci.org/gaopeiliang/aioetcd3) [![Code Coverage](https://codecov.io/gh/gaopeiliang/aioetcd3/branch/master/graphs/badge.svg)](https://codecov.io/gh/gaopeiliang/aioetcd3) ## AsyncIO bindings for etcd V3 example: ``` from aioetcd3.client import client from aioetcd3.help import range_all from aioetcd3.kv import KV from aioetcd3 import transaction etcd_client = client(endpoints="127.0.0.1:2379") await etcd_client.put('/foo', 'foo') value, meta = await etcd_client.get('/foo') value_list = await etcd_client.range(range_all()) await etcd_client.delete('/foo') lease = await etcd_client.grant_lease(ttl=5) await etcd_client.put('/foo1', 'foo', lease=lease) is_success, response = await etcd_client.txn(compare=[ transaction.Value('/trans1') == b'trans1', transaction.Value('/trans2') == b'trans2' ], success=[ KV.delete.txn('/trans1'), KV.put.txn('/trans3', 'trans3', prev_kv=True) ], fail=[ KV.delete.txn('/trans1') ]) await self.client.user_add(username="test user", password='1234') await self.client.role_add(name="test_role") ``` ## Install ``` pip install aioetcd3 ```