chef

https://github.com/opscode/chef

Ruby

A systems integration framework, built to bring the benefits of configuration management to your entire infrastructure.

ChefConfig::PathHelper.all_homes

See self.home.  This method performs a similar operation except that it yields all the different
possible values of 'HOME' that one could have on this platform.  Hence, on windows, if
HOMEDRIVE\HOMEPATH and USERPROFILE are different, the provided block will be called twice.
This method goes out and checks the existence of each location at the time of the call.

The return is a list of all the returned values from each block invocation or a list of paths
if no block is provided.

Source | Google | Stack overflow

Edit

git clone [email protected]:opscode/chef.git

cd chef

open chef-config/lib/chef-config/path_helper.rb

Contribute

# Make a new branch

git checkout -b -your-name--update-docs-ChefConfig--PathHelper-all_homes-for-pr


# Commit to git

git add chef-config/lib/chef-config/path_helper.rbgit commit -m "better docs for ChefConfig::PathHelper.all_homes"


# Open pull request

gem install hub # on a mac you can `brew install hub`

hub fork

git push <your name> -your-name--update-docs-ChefConfig--PathHelper-all_homes-for-pr

hub pull-request


# Celebrate!