summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVictor Shyba <victor1984@riseup.net>2017-11-22 19:38:13 -0300
committerVictor Shyba <victor1984@riseup.net>2017-11-22 19:38:13 -0300
commit54491b798ffd1c8e619c8cb94a8069f6f312dd95 (patch)
tree8245ab0ef67696f4c2b9acba9e4a0b3f88d2f01b
parent453d3c6cfe81c8d3ca401dd1f5558aeae523350c (diff)
[refactor] extract list dbs method
-rw-r--r--src/leap/soledad/common/couch/check.py19
1 files changed, 12 insertions, 7 deletions
diff --git a/src/leap/soledad/common/couch/check.py b/src/leap/soledad/common/couch/check.py
index 00c8ec87..6eca649c 100644
--- a/src/leap/soledad/common/couch/check.py
+++ b/src/leap/soledad/common/couch/check.py
@@ -98,16 +98,10 @@ def check_schema_versions(couch_url, agent=None):
url = urlsplit(couch_url)
auth = (url.username, url.password) if url.username else None
url = "%s://%s:%d" % (url.scheme, url.hostname, url.port)
- try:
- res = yield treq.get(urljoin(url, '_all_dbs'), auth=auth, agent=agent)
- dbs = yield res.json()
- except Exception as e:
- logger.error('Error trying to get list of dbs from %s: %r'
- % (url, e))
- raise e
deferreds = []
semaphore = defer.DeferredSemaphore(20)
logger.info('Starting CouchDB schema versions check...')
+ dbs = yield list_dbs(url, auth, agent)
for db in dbs:
if not db.startswith('user-'):
continue
@@ -121,3 +115,14 @@ def check_schema_versions(couch_url, agent=None):
msg = 'Error checking CouchDB schema versions: %r' % e
logger.error(msg)
raise Exception(msg)
+
+
+@defer.inlineCallbacks
+def list_dbs(url, auth, agent):
+ try:
+ res = yield treq.get(urljoin(url, '_all_dbs'), auth=auth, agent=agent)
+ defer.returnValue((yield res.json()))
+ except Exception as e:
+ logger.error('Error trying to get list of dbs from %s: %r'
+ % (url, e))
+ raise e