]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-cookbooks.git/commitdiff
Prevents crash if an interface doesn't have an address
authorWalter Huf <walter.huf@corvisa.com>
Fri, 14 Mar 2014 14:56:04 +0000 (09:56 -0500)
committerWalter Huf <walter.huf@corvisa.com>
Thu, 27 Mar 2014 17:19:00 +0000 (12:19 -0500)
libraries/default.rb

index faeeebde84f3025c490fcd34e0ad89f002390744..8b00ccdecc97e161b7127ff55f458d7610f9b704 100644 (file)
@@ -32,17 +32,22 @@ def find_node_ip_in_network(network, nodeish = nil)
   nodeish = node unless nodeish
   net = IPAddr.new(network)
   nodeish['network']['interfaces'].each do |iface, addrs|
-    addrs['addresses'].each do |ip, params|
-      if params['family'].eql?('inet6') && net.include?(ip)
-        return "[#{ip}]:6789"
-      elsif params['family'].eql?('inet') && net.include?(ip)
-        return "#{ip}:6789"
-      end
+    addresses = addrs['addresses'] || []
+    addresses.each do |ip, params|
+      return ip_address_to_ceph_address(ip, params) if net.include?(ip)
     end
   end
   nil
 end
 
+def ip_address_to_ceph_address(ip, params)
+  if params['family'].eql?('inet6') && net.include?(ip)
+    return "[#{ip}]:6789"
+  elsif params['family'].eql?('inet') && net.include?(ip)
+    return "#{ip}:6789"
+  end
+end
+
 def mon_addresses
   mon_ips = []