require 'diplomat' require 'securerandom' module Skalera module Services class Errbit def self.configure(service_name) api_key(service_name) end def self.config Diplomat::Service.get('errbit') end def self.key_name(service_name) "#{service_name}/errbit/key" end def self.api_key(service_name) Diplomat.get(key_name(service_name)) rescue Diplomat::KeyNotFound key = SecureRandom.hex(8) # TODO: use logging puts "created errbit key '#{key}' for service '#{service_name}'" Diplomat::Kv.put(key_name(service_name), key) end end end end