public
Description: ShadowFacter is a Ruby DSL for Facter
Homepage: http://railsmachine.github.com/shadow_facter/
Clone URL: git://github.com/railsmachine/shadow_facter.git
name age message
file .gitignore Tue Jan 20 10:43:23 -0800 2009 updated gitignore [wrecked]
file LICENSE Mon Jan 26 18:48:47 -0800 2009 Removed trailing whitespace for Jesse [wrecked]
file Rakefile Fri Feb 20 07:32:07 -0800 2009 rescue LoadError [jnewland]
file Readme.rdoc Tue Jan 27 07:49:07 -0800 2009 More rdoc updates [wrecked]
directory bin/ Mon Jan 26 19:18:41 -0800 2009 Fixed bad example syntax [wrecked]
directory examples/ Mon Jan 26 19:21:41 -0800 2009 Modified param name [wrecked]
directory lib/ Fri Feb 20 07:00:57 -0800 2009 moved DSL methods out of base [wrecked]
file shadow_facter.gemspec Fri Feb 20 07:31:26 -0800 2009 bump version [jnewland]
directory spec/ Tue Jan 27 08:48:36 -0800 2009 Fixed namespace test to use public methods [wrecked]
Readme.rdoc

ShadowFacter

ShadowFacter is a Ruby DSL for Facter, extracted out of the work we at Rails Machine are doing on Moonshine.

ShadowFacter provides a DSL for creating facts and processing them using Facter. A binary is provided to parse facts.

Example:

 $ cat examples/lib/facts/kernel.rb
  require 'shadow_facter'

  namespace :kernel do
    fact :name do
      exec "uname -s"
    end

    fact :release do
      exec "uname -r"
    end

    fact :version do
      value(:release).to_s.split('.')[0]
    end
  end

Executing this fact:

 $ bin/shadow_facter examples/lib/facts/kernel.rb
 kernel_name => Darwin
 kernel_version => 9
 kernel_release => 9.6.0