Sha256: e5d429f679860c53484c2aabc25a4a64d364c3b362eb9a1a2e44b90aed9e185b
Contents?: true
Size: 1 KB
Versions: 20
Compression:
Stored size: 1 KB
Contents
module MCollective module Util class Playbook class DataStores class EtcdDataStore < Base def startup_hook require "etcdv3" rescue LoadError raise("Etcd Data Store is not functional. Please install the etcdv3 Gem.") end def conn return @_conn if @_conn opts = {} opts[:url] = @properties.fetch("url", "http://127.0.0.1:2379") opts[:user] = @properties["user"] if @properties["user"] opts[:password] = @properties["password"] if @properties["password"] @_conn = Etcdv3.new(opts) end def read(key) result = conn.get(key) raise("Could not find key %s" % key) if !result || result.kvs.empty? result.kvs[0].value end def write(key, value) conn.put(key, value) end def delete(key) conn.del(key) end end end end end end
Version data entries
20 entries across 20 versions & 1 rubygems