From 6f2d6981cb8983bcd0493792808a92e8d1fdc44c Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Tue, 26 Nov 2013 11:44:16 -0800 Subject: [PATCH] website/docs: better Chef docs [GH-2436] --- plugins/provisioners/chef/config/chef_solo.rb | 6 +- .../v2/provisioning/chef_common.html.md | 61 +++++++++++++++++++ .../source/v2/provisioning/chef_solo.html.md | 35 +++++++++++ 3 files changed, 99 insertions(+), 3 deletions(-) create mode 100644 website/docs/source/v2/provisioning/chef_common.html.md diff --git a/plugins/provisioners/chef/config/chef_solo.rb b/plugins/provisioners/chef/config/chef_solo.rb index f4b601442..0f7bf1704 100644 --- a/plugins/provisioners/chef/config/chef_solo.rb +++ b/plugins/provisioners/chef/config/chef_solo.rb @@ -5,14 +5,14 @@ module VagrantPlugins module Config class ChefSolo < Base attr_accessor :cookbooks_path - attr_accessor :roles_path attr_accessor :data_bags_path - attr_accessor :recipe_url - attr_accessor :nfs attr_accessor :encrypted_data_bag_secret_key_path attr_accessor :encrypted_data_bag_secret attr_accessor :environments_path attr_accessor :environment + attr_accessor :nfs + attr_accessor :recipe_url + attr_accessor :roles_path def initialize super diff --git a/website/docs/source/v2/provisioning/chef_common.html.md b/website/docs/source/v2/provisioning/chef_common.html.md new file mode 100644 index 000000000..356dba78b --- /dev/null +++ b/website/docs/source/v2/provisioning/chef_common.html.md @@ -0,0 +1,61 @@ +--- +page_title: "Common Chef Options - Provisioning" +sidebar_current: "provisioning-chefcommon" +--- + +# Shared Chef Options + +This page documents the list of available options that are available in +both the +[Chef solo](/v2/provisioning/chef_solo.html) +and +[Chef client](/v2/provisioning/chef_client.html) +provisioners. + +* `arguments` (string) - A list of additional arguments to pass on the + command-line to Chef. Since these are passed in a shell-like environment, + be sure to properly quote and escape characters if necessary. By default, + no additional arguments are sent. + +* `attempts` (int) - The number of times Chef will be run if an error occurs. + This defaults to 1. This can be increased to a higher number if your Chef + runs take multiple runs to reach convergence. + +* `binary_path` (string) - The full path to the binary to execute to run + Chef. By default, Vagrant looks for the proper Chef binary on the PATH. + +* `custom_config_path` (string) - A path to a custom Chef configuration local + on your machine that will be used as the Chef configuration. This Chef + configuration will be loaded _after_ the Chef configuration that Vagrant + generates, allowing you to override anything that Vagrant does. This is + also a great way to use new Chef features that may not be supported fully + by Vagrant's abstractions yet. + +* `formatter` (string) - The formatter to use for output from Chef. + +* `http_proxy`, `http_proxy_user`, `http_proxy_pass`, `no_proxy` (string) - Settings + to configure HTTP and HTTPS proxies to use from Chef. These settings are + also available with `http` replaced with `https` to configure HTTPS proxies. + +* `json` (hash) - Custom node attributes to pass into the Chef run. + +* `log_level` (string) - The log level for Chef output. This defaults to + "info". + +* `node_name` (string) - The node name for the Chef client. By default this + will be your hostname. + +* `provisioning_path` (string) - The path on the remote machine where Vagrant + will store all necessary files for provisioning such as cookbooks, configurations, + etc. This path must be world writable. By default this is + `/tmp/vagrant-chef-#` where "#" is replaced by a unique counter. + +* `run_list` (array) - The run list that will be executed on the node. + +* `file_cache_path` and `file_backup_path` (string) - Paths on the remote + machine where files will be cached and backed up. It is useful sometimes + to configure this to a synced folder address so that this can be shared + across many Vagrant runs. + +* `verbose_logging` (boolean) - Whether or not to enable the Chef + `verbose_logging` option. By default this is false. diff --git a/website/docs/source/v2/provisioning/chef_solo.html.md b/website/docs/source/v2/provisioning/chef_solo.html.md index e9bdd6065..4aa358921 100644 --- a/website/docs/source/v2/provisioning/chef_solo.html.md +++ b/website/docs/source/v2/provisioning/chef_solo.html.md @@ -26,6 +26,41 @@ of a single page of documentation.

+## Options + +This section lists the complete set of available options for the Chef solo +provisioner. More detailed examples of how to use the provisioner are +available below this section. + +Note that only the Chef-solo specific options are shown below. There is +also a large set of [common options](/v2/provisioning/chef_common.html) +that are available with both the Chef solo and Chef client provisioners. + +* `cookbooks_path` (string or array) - A list of paths to where cookbooks + are stored. By default this is "cookbooks", expecting a cookbooks folder + relative to the Vagrantfile location. + +* `data_bags_path` (string or array) - A list of paths where data bags are + stored. By default, no data bag paths are set. + +* `encrypted_data_bag_secret_key_path` (string) - The path to the secret key + file to decrypt encrypted data bags. By default, this is not set. + +* `environments_path` (string or array) - A list of paths where environment + definitions are located. By default, no environments folder is set. + +* `environment` (string) - The environment you want the Chef run to be + a part of. This requires that `environments_path` is set. + +* `nfs` (boolean) - If true, any synced folders that need to be used are + shared via NFS, rather than the default synced folder mechanism. This can + result in performance increases. By default, this is false. + +* `recipe_url` (string) - URL to an archive of cookbooks that Chef will download + and use. + +* `roles_path` (string or array) - A list of paths where roles are defined. + By default this is empty. ## Specifying a Run List