Skip to content

Instantly share code, notes, and snippets.

@vishnu2kmohan
Created May 7, 2017 22:28
Show Gist options
  • Select an option

  • Save vishnu2kmohan/363b475b098dde9d69176813cad7a06d to your computer and use it in GitHub Desktop.

Select an option

Save vishnu2kmohan/363b475b098dde9d69176813cad7a06d to your computer and use it in GitHub Desktop.
Load DC/OS Bouncer Datastore from a JSON File: bouncer-datastore-data.json
from kazoo.client import KazooClient
DCOS_ZK_HOSTS='zk-1.zk:2181,zk-2.zk:2181,zk-3.zk:2181,zk-4.zk:2181,zk-5.zk:2181'
DCOS_ZK_AUTH_TYPE='digest'
DCOS_ZK_CREDS='super:secret'
DCOS_ZK_AUTH_DATA=[(DCOS_ZK_AUTH_TYPE, DCOS_ZK_CREDS)]
DCOS_BOUNCER_LOCK_PATH='/bouncer/datastore/locking'
DCOS_BOUNCER_DATA_PATH='/bouncer/datastore/data.json'
DCOS_BOUNCER_DATA_FILE='bouncer-datastore-data.json'
zk = KazooClient(hosts=DCOS_ZK_HOSTS, auth_data=DCOS_ZK_AUTH_DATA)
zk.start()
if zk.exists(DCOS_BOUNCER_DATA_PATH):
with open(DCOS_BOUNCER_DATA_FILE) as f:
with zk.Lock(DCOS_BOUNCER_LOCK_PATH):
zk.set(DCOS_BOUNCER_DATA_PATH, f.read().encode())
data, stat = zk.get(DCOS_BOUNCER_DATA_PATH)
print(data.decode())
print(stat)
zk.stop()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment