]> git.donarmstrong.com Git - dsa-puppet.git/blob - 3rdparty/modules/staging/lib/facter/staging_http_get.rb
add nanliu/staging to 3rdparty
[dsa-puppet.git] / 3rdparty / modules / staging / lib / facter / staging_http_get.rb
1 Facter.add("staging_http_get") do
2   setcode do
3
4     fact = nil
5
6     which = lambda do |cmd|
7       result = nil
8       exts = ENV['PATHEXT'] ? ENV['PATHEXT'].split(';') : ['']
9       ENV['PATH'].split(File::PATH_SEPARATOR).each do |path|
10         exts.each do |ext|
11           exe = File.join(path, "#{cmd}#{ext}")
12           result = exe if File.executable? exe
13           break if result
14         end
15         break if result
16       end
17       result
18     end
19
20     ['powershell', 'curl', 'wget'].each do |cmd|
21       available = which.call(cmd)
22       fact = available ? cmd : nil
23       break if fact
24     end
25
26     fact
27
28   end
29 end