Sha256: a52c239abb2946102315fe539c49c32d807609574a1ac4ca96edc88e7d69df67
Contents?: true
Size: 927 Bytes
Versions: 14
Compression:
Stored size: 927 Bytes
Contents
class Etcdv3 class Maintenance # Sadly these are the only alarm types supported by the api right now. ALARM_TYPES = { NONE: 0, NOSPACE: 1 } ALARM_ACTIONS = { get: 0, activate: 1, # Should only be used in testing. Not a stable feature... deactivate: 2 } def initialize(hostname, credentials, _timeout, metadata = {}) @stub = Etcdserverpb::Maintenance::Stub.new(hostname, credentials) @metadata = metadata end def alarms(action, member_id, alarm=:NONE) alarm = ALARM_TYPES[alarm] request = Etcdserverpb::AlarmRequest.new( action: ALARM_ACTIONS[action], memberID: member_id, alarm: action == :deactivate ? ALARM_TYPES[:NOSPACE] : alarm ) @stub.alarm(request, metadata: @metadata) end def member_status @stub.status(Etcdserverpb::StatusRequest.new, metadata: @metadata) end end end
Version data entries
14 entries across 14 versions & 2 rubygems