Class: Lita::Handlers::Consul

Inherits:
Handler
  • Object
show all
Defined in:
lib/lita/handlers/consul.rb

Instance Method Summary collapse

Instance Method Details

#consul_get(response) ⇒ Object



31
32
33
34
35
36
# File 'lib/lita/handlers/consul.rb', line 31

def consul_get(response)
  key = response.matches.first.first

  value = get_key_value(key)
  response.reply "#{key} = #{value}"
end

#consul_members(response) ⇒ Object



22
23
24
25
26
27
28
29
# File 'lib/lita/handlers/consul.rb', line 22

def consul_members(response)
    resp = http.get("#{api_url}/catalog/nodes")
    replies = []
    MultiJson.load(resp.body).each do | node |
      replies << "#{node['Node']} - #{node['Address']}"
    end 
    response.reply replies.join("\n")
end

#consul_set(response) ⇒ Object



38
39
40
41
42
43
44
45
46
47
48
49
50
# File 'lib/lita/handlers/consul.rb', line 38

def consul_set(response)
  key = response.matches.first.first
  value = response.matches.first.last
  begin
    resp = http.put("#{api_url}/kv/#{key}", value)
    if resp.status == 200
      value = get_key_value(key)
      response.reply "#{key} = #{value}"
    else
      response.reply resp.body
    end
  end
end