maybe now rossini will be quiet
[mirror/dsa-puppet.git] / modules / debian-org / lib / facter / cluster.rb
index 3588868..d7ef867 100644 (file)
@@ -1,12 +1,15 @@
-Facter.add('cluster') do
-  setcode do
-    if system('/usr/sbin/gnt-cluster getmaster >/dev/null')
-      require 'json'
-      config = '/var/lib/ganeti/config.data'
-      if FileTest.exist?(config)
-        JSON.parse(File.read(config))['cluster']['cluster_name']
-      else
-        ''
+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