Module: Reachable::Under::Helper
- Included in:
- Reachable::Under
- Defined in:
- lib/reachable/under/helper.rb
Instance Method Summary collapse
Instance Method Details
#address ⇒ Object
25 26 27 28 29 30 31 32 |
# File 'lib/reachable/under/helper.rb', line 25 def address reachable_address do address ||= Rails::Server.new.[:Host] if Helper.via_rails_server? address ||= ReverseProxy.instance.binds.first.tcp.host rescue nil if Helper.via_reverse_proxy? address ||= URI(Puma.cli_config.[:binds].select{|l| l =~ /^tcp:/ }.first).host rescue nil if Helper.via_puma? address ||= "127.0.0.1" end end |
#default_address ⇒ Object
18 19 20 |
# File 'lib/reachable/under/helper.rb', line 18 def default_address @default_address ||= UDPSocket.open {|s| s.connect("64.233.187.99", 1); s.addr.last } end |
#port ⇒ Object
33 34 35 36 37 38 |
# File 'lib/reachable/under/helper.rb', line 33 def port port ||= Rails::Server.new.[:Port] if Helper.via_rails_server? port ||= ReverseProxy.instance.binds.first.tcp.port rescue nil if Helper.via_reverse_proxy? port ||= URI(Puma.cli_config.[:binds].select{|l| l =~ /^tcp:/ }.first).port rescue nil if Helper.via_puma? port ||= 3000 end |
#reachable_address ⇒ Object
21 22 23 24 |
# File 'lib/reachable/under/helper.rb', line 21 def reachable_address return unless block_given? yield.sub(/0\.0\.0\.0/,default_address) end |