Issue #5486 has been updated by Jeff Weiss. Target version deleted (1.6.x)
---------------------------------------- Bug #5486: facter does not work on iphone https://projects.puppetlabs.com/issues/5486#change-63737 Author: Garrett Honeycutt Status: Tests Insufficient Priority: Normal Assignee: Category: library Target version: Keywords: iphone Branch: Affected Facter version: <pre> Kevin-Lords-iPhone:~/rubygems-1.3.7 root# facter /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/macosx.rb:28: undefined method `each' for nil:NilClass (NoMethodError) from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/loader.rb:73:in `load' from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/loader.rb:73:in `load_file' from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/loader.rb:38:in `load_all' from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/loader.rb:33:in `each' from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/loader.rb:33:in `load_all' from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/loader.rb:30:in `each' from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/loader.rb:30:in `load_all' from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/collection.rb:90:in `load_all' from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter.rb:95:in `to_hash' from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/bin/facter:137 from /usr/bin/facter:19:in `load' from /usr/bin/facter:19 </pre> In case anyone else wants to try to get this running, here are the steps needed: 1. Install the 1.8.6 ruby package found here: http://apt.saurik.com/cydia-3.7/debs/ruby_1.8.6-p111-5_iphoneos-arm.deb 2. Install the latest ruby gems from rubygems.org 3. Install the facter / puppet gems 4. Apply the included patch 5. Install the network-cmds package from the Telesphoreo Cydia repo 6. ln -s /sbin/netstat /usr/sbin/netstat 7. ln -s /usr/lib/gettext/hostname /bin/hostname 8. Tada: <pre> Kevin-Lords-iPhone:~/rubygems-1.3.7 root# facter facterversion => 1.5.8 hardwaremodel => iPhone3,1 hostname => Kevin-Lords-iPhone interfaces => lo0,pdp_ip0,pdp_ip1,pdp_ip2,pdp_ip3,en0,en1 ipaddress => 192.168.1.71 ipaddress_en0 => 192.168.1.71 ipaddress_lo0 => 127.0.0.1 ipaddress_pdp_ip0 => 10.130.83.122 kernel => Darwin kernelmajversion => 10.3 kernelrelease => 10.3.1 kernelversion => 10.3.1 macaddress_en0 => 90:27:e4:4b:b4:b8 macaddress_en1 => 90:27:e4:4b:b4:bb macosx_buildversion => 8B117 macosx_productname => iPhone OS macosx_productversion => 4.1 macosx_productversion_major => 4.1 macosx_productversion_minor => 0 netmask => 255.255.255.0 netmask_en0 => 255.255.255.0 netmask_lo0 => 255.0.0.0 netmask_pdp_ip0 => 255.255.255.255 network_en0 => 192.168.1.0 network_lo0 => 127.0.0.0 network_pdp_ip0 => 10.130.83.122 operatingsystem => Darwin operatingsystemrelease => 10.3.1 path => /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11:/usr/games ps => ps auxwww puppetversion => 2.6.4 rubysitedir => /usr/lib/ruby/site_ruby/1.8 rubyversion => 1.8.6 sshdsakey => (redacted sshrsakey => (redacted) timezone => CST uptime => 3 days uptime_days => 3 uptime_hours => 90 uptime_seconds => 324539 Kevin-Lords-iPhone:~/rubygems-1.3.7 root# puppet --version 2.6.4 </pre> Patch to fix <pre> --- macosx.rb 2010-12-08 20:40:11.000000000 -0600 +++ macosx.rb.new 2010-12-09 09:24:35.000000000 -0600 @@ -25,30 +25,36 @@ require 'facter/util/macosx' if Facter.value(:kernel) == "Darwin" - Facter::Util::Macosx.hardware_overview.each do |fact, value| - Facter.add("sp_#{fact}") do - confine :kernel => :darwin - setcode do - value.to_s - end - end - end + if Facter::Util::Macosx.hardware_overview + Facter::Util::Macosx.hardware_overview.each do |fact, value| + Facter.add("sp_#{fact}") do + confine :kernel => :darwin + setcode do + value.to_s + end + end + end + end - Facter::Util::Macosx.os_overview.each do |fact, value| - Facter.add("sp_#{fact}") do - confine :kernel => :darwin - setcode do - value.to_s - end - end - end + if Facter::Util::Macosx.os_overview + Facter::Util::Macosx.os_overview.each do |fact, value| + Facter.add("sp_#{fact}") do + confine :kernel => :darwin + setcode do + value.to_s + end + end + end + end - Facter::Util::Macosx.sw_vers.each do |fact, value| - Facter.add(fact) do - confine :kernel => :darwin - setcode do - value - end - end - end + if Facter::Util::Macosx.sw_vers + Facter::Util::Macosx.sw_vers.each do |fact, value| + Facter.add(fact) do + confine :kernel => :darwin + setcode do + value + end + end + end + end end </pre> -- Kevin Lord -- You have received this notification because you have either subscribed to it, or are involved in it. To change your notification preferences, please click here: http://projects.puppetlabs.com/my/account -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/puppet-bugs?hl=en.
