Module: Odania

Defined in:
lib/odania.rb,
lib/odania/consul.rb,
lib/odania/plugin.rb,
lib/odania/service.rb,
lib/odania/version.rb

Defined Under Namespace

Classes: Consul, Plugin, Service

Constant Summary collapse

VERSION =
'0.0.9'

Class Method Summary collapse

Class Method Details

.configure(consul_url = nil) ⇒ Object



23
24
25
26
27
28
29
30
31
32
33
# File 'lib/odania.rb', line 23

def self.configure(consul_url=nil)
	if @configured.nil?
		consul_url = "http://#{ENV['CONSUL_PORT_8500_TCP_ADDR']}:#{ENV['CONSUL_PORT_8500_TCP_PORT']}" if consul_url.nil?
		puts "Consul URL: #{consul_url}"
		Diplomat.configure do |config|
			# Set up a custom Consul URL
			config.url = consul_url
		end
		@configured = true
	end
end

.ipsObject



35
36
37
38
39
40
41
42
# File 'lib/odania.rb', line 35

def self.ips
	ips = []
	Socket.ip_address_list.each do |address|
		ip = address.ip_address
		ips << ip unless %w(127.0.0.1 ::1).include? ip
	end
	ips
end

.pluginObject



17
18
19
20
21
# File 'lib/odania.rb', line 17

def self.plugin
	Odania.configure
	@plugin = Plugin.new if @plugin.nil?
	@plugin
end

.serviceObject



9
10
11
12
13
14
15
# File 'lib/odania.rb', line 9

def self.service
	if @service.nil?
		Odania.configure
		@service = Service.new
	end
	@service
end