From 0c98723f49348ce9fbe7f8cdd953dcd1caee8ea4 Mon Sep 17 00:00:00 2001 From: Ricky Date: Thu, 1 Aug 2019 16:39:58 -0300 Subject: [PATCH] Move join logic to a function --- mem3_helper.py | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/mem3_helper.py b/mem3_helper.py index 961e969..3055c62 100644 --- a/mem3_helper.py +++ b/mem3_helper.py @@ -30,24 +30,28 @@ def discover_peers(service_record): # but not sure of a more official answer return [rdata.target.to_text()[:-1] for rdata in answers] +def join_node(name): + creds = (os.getenv("COUCHDB_USER"), os.getenv("COUCHDB_PASSWORD")) + uri = "http://127.0.0.1:5986/_nodes/couchdb@{0}".format(name) + doc = {} + if creds[0] and creds[1]: + resp = requests.put(uri, data=json.dumps(doc), auth=creds) + else: + resp = requests.put(uri, data=json.dumps(doc)) + return resp + @backoff.on_exception( backoff.expo, requests.exceptions.ConnectionError, max_tries=10 ) def connect_the_dots(names): - creds = (os.getenv("COUCHDB_USER"), os.getenv("COUCHDB_PASSWORD")) for name in names: - uri = "http://127.0.0.1:5986/_nodes/couchdb@{0}".format(name) - doc = {} - if creds[0] and creds[1]: - resp = requests.put(uri, data=json.dumps(doc), auth=creds) - else: - resp = requests.put(uri, data=json.dumps(doc)) + resp = join_node(name) while resp.status_code == 404: print('Waiting for _nodes DB to be created ...') time.sleep(5) - resp = requests.put(uri, data=json.dumps(doc)) + resp = join_node(name) print('Adding cluster member', name, resp.status_code) def sleep_forever():