chef
https://github.com/opscode/chef
Ruby
A systems integration framework, built to bring the benefits of configuration management to your entire infrastructure.
Chef::Knife::SubcommandLoader::CustomManifestLoader#find_subcommands_via_manifest
If the user has created a ~/.chef/plugin_manifest.json file, we'll use
that instead of inspecting the on-system gems to find the plugins. The
file format is expected to look like:
{ "plugins": {
"knife-ec2": {
"paths": [
"/home/alice/.rubymanagerthing/gems/knife-ec2-x.y.z/lib/chef/knife/ec2_server_create.rb",
"/home/alice/.rubymanagerthing/gems/knife-ec2-x.y.z/lib/chef/knife/ec2_server_delete.rb"
]
}
}
}
Extraneous content in this file is ignored. This is intentional so that we
can adapt the file format for potential behavior changes to knife in
the future.Edit
git clone [email protected]:opscode/chef.git
cd chef
open lib/chef/knife/core/custom_manifest_loader.rb
Contribute
# Make a new branchgit checkout -b -your-name--update-docs-Chef--Knife--SubcommandLoader--CustomManifestLoader-find_subcommands_via_manifest-for-pr
# Commit to gitgit add lib/chef/knife/core/custom_manifest_loader.rbgit commit -m "better docs for Chef::Knife::SubcommandLoader::CustomManifestLoader#find_subcommands_via_manifest"
# Open pull requestgem install hub # on a mac you can `brew install hub`
hub fork
git push <your name> -your-name--update-docs-Chef--Knife--SubcommandLoader--CustomManifestLoader-find_subcommands_via_manifest-for-pr
hub pull-request
# Celebrate!