summaryrefslogtreecommitdiff
path: root/lib/facter
diff options
context:
space:
mode:
Diffstat (limited to 'lib/facter')
-rw-r--r--lib/facter/acpi_available.rb10
-rwxr-xr-xlib/facter/interfaces.rb13
2 files changed, 23 insertions, 0 deletions
diff --git a/lib/facter/acpi_available.rb b/lib/facter/acpi_available.rb
new file mode 100644
index 0000000..9a0474f
--- /dev/null
+++ b/lib/facter/acpi_available.rb
@@ -0,0 +1,10 @@
+# return whether acpi is available -- used for deciding whether to install the munin plugin
+Facter.add("acpi_available") do
+ setcode do
+ if not File.exist? `which acpi 2>/dev/null`.chomp or `acpi -t -B -A 2>/dev/null`.match(/\d/).nil?
+ "absent"
+ else
+ "present"
+ end
+ end
+end
diff --git a/lib/facter/interfaces.rb b/lib/facter/interfaces.rb
new file mode 100755
index 0000000..a498d64
--- /dev/null
+++ b/lib/facter/interfaces.rb
@@ -0,0 +1,13 @@
+# return the set of active interfaces as an array
+Facter.add("interfaces") do
+ setcode do
+ `ip -o link show`.split(/\n/).collect do |line|
+ value = nil
+ matches = line.match(/^\d*: ([^:]*): <(.*,)?UP(,.*)?>/)
+ if !matches.nil?
+ value = matches[1]
+ end
+ value
+ end.compact.sort.join(" ")
+ end
+end