Use munin to monitor temperature sensors on some hosts (those having a /sys/devices...
[mirror/dsa-puppet.git] / modules / debian-org / lib / facter / cluster.rb
index d7ef867..543eeba 100644 (file)
@@ -1,16 +1,24 @@
 if FileTest.exist?('/usr/sbin/gnt-cluster') and FileTest.exist?('/var/lib/ganeti/config.data')
-  if system('/usr/sbin/gnt-cluster getmaster >/dev/null')
-    require 'json'
-    json = JSON.parse(File.read('/var/lib/ganeti/config.data'))
-    Facter.add('cluster') do
-      setcode do
-        json['cluster']['cluster_name']
-      end
-    end
-    Facter.add('cluster_nodes') do
-      setcode do
-        json['nodes'].keys.join(' ')
-      end
-    end
-  end
+       begin
+               if system('/usr/sbin/gnt-cluster getmaster >/dev/null')
+                       require 'yaml'
+                       yaml = YAML.load_file('/var/lib/ganeti/config.data')
+                       Facter.add('cluster') do
+                               setcode do
+                                       yaml['cluster']['cluster_name']
+                               end
+                               Facter.add('cluster_nodes') do
+                                       nodename = []
+                                       yaml["nodes"].each do |uuid,value|
+                                               nodename << value["name"]
+                                       end
+                                       ret = nodename.join(" ")
+                                       setcode do
+                                               ret
+                                       end
+                               end
+                       end
+               end
+       rescue Exception => e
+       end
 end