summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/facter/ipaddress.rb19
1 files changed, 19 insertions, 0 deletions
diff --git a/lib/facter/ipaddress.rb b/lib/facter/ipaddress.rb
index 942c134..c97abe4 100644
--- a/lib/facter/ipaddress.rb
+++ b/lib/facter/ipaddress.rb
@@ -149,3 +149,22 @@ Facter.add(:ipaddress) do
ip
end
end
+
+Facter.add(:ipaddress) do
+ confine :kernel => %w{windows}
+ setcode do
+ ip = nil
+ output = %x{ipconfig}
+
+ output.split(/^\S/).each { |str|
+ if str =~ /IP Address.*: ([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)/
+ tmp = $1
+ unless tmp =~ /127\./
+ ip = tmp
+ break
+ end
+ end
+ }
+ ip
+ end
+end