]> git.openstreetmap.org Git - chef.git/blobdiff - cookbooks/networking/libraries/interfaces.rb
docker: add missing systemd depends
[chef.git] / cookbooks / networking / libraries / interfaces.rb
index cc9c11a232a33b4795bb2bf252e33dfe48f8f0ea..c2f170b9c73a2f56c290d0a0f3cc38110c563eae 100644 (file)
@@ -4,17 +4,16 @@ class Chef
       interfaces = []
 
       networking = construct_attributes[:networking] || {}
-      networking_interfaces = networking[:interfaces] || []
+      networking_interfaces = networking[:interfaces] || {}
 
-      networking_interfaces.each do |name,interface|
-        if options[:role].nil? or interface[:role].to_s == options[:role].to_s
-          if options[:family].nil? or interface[:family].to_s == options[:family].to_s
-            if block.nil?
-              interfaces << interface
-            else
-              block.call(interface)
-            end
-          end
+      networking_interfaces.each_value  do |interface|
+        next unless options[:role].nil? || interface[:role].to_s == options[:role].to_s
+        next unless options[:family].nil? || interface[:family].to_s == options[:family].to_s
+
+        if block.nil?
+          interfaces << interface
+        else
+          yield interface
         end
       end