diff options
Diffstat (limited to 'distro')
32 files changed, 759 insertions, 806 deletions
diff --git a/distro/common/man/man1/chef-shell.1 b/distro/common/man/man1/chef-shell.1 index 095e8623c0..d865ce52ae 100644 --- a/distro/common/man/man1/chef-shell.1 +++ b/distro/common/man/man1/chef-shell.1 @@ -1,220 +1,115 @@ -.\" generated with Ronn/v0.7.3 -.\" http://github.com/rtomayko/ronn/tree/0.7.3 +.TH "CHEF-SHELL" "1" "Chef 11.8.0" "" "chef-shell" +.SH NAME +chef-shell \- The man page for the chef-shell command line tool. +. +.nr rst2man-indent-level 0 +. +.de1 rstReportMargin +\\$1 \\n[an-margin] +level \\n[rst2man-indent-level] +level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] +- +\\n[rst2man-indent0] +\\n[rst2man-indent1] +\\n[rst2man-indent2] +.. +.de1 INDENT +.\" .rstReportMargin pre: +. RS \\$1 +. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] +. nr rst2man-indent-level +1 +.\" .rstReportMargin post: +.. +.de UNINDENT +. RE +.\" indent \\n[an-margin] +.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] +.nr rst2man-indent-level -1 +.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] +.in \\n[rst2man-indent\\n[rst2man-indent-level]]u +.. +.\" Man page generated from reStructuredText. +. +.sp +chef\-shell is a recipe debugging tool that allows the use of breakpoints within recipes. chef\-shell runs as an Interactive Ruby (IRb) session. chef\-shell supports both recipe and attribute file syntax, as well as interactive debugging features. +.IP Note +chef\-shell is the new name for Shef as of Chef 11.x. chef\-shell is backwards compatible and aside from the name change, has the same set of functionality as with previous releases. +.RE +.sp +The chef\-shell executable can be run as a command\-line tool. +.SH MODES +.sp +chef\-shell is tool that allows Knife to be run using an Interactive Ruby (IRb) session. chef\-shell currently supports recipe and attribute file syntax, as well as interactive debugging features. chef\-shell has three run modes: +.TS +center; +|l|l|. +_ +T{ +Mode +T} T{ +Description +T} +_ +T{ +Standalone +T} T{ +No cookbooks are loaded, and the run list is empty. This mode is the default. +T} +_ +T{ +Solo +T} T{ +chef\-shell acts as a chef\-solo client. It attempts to load the chef\-solo configuration file and JSON attributes. If the JSON attributes set a run list, it will be honored. Cookbooks will be loaded in the same way that chef\-solo loads them. chef\-solo mode is activated with the \fB\-s\fP or \fB\-\-solo\fP command line option, and JSON attributes are specified in the same way as for chef\-solo, with \fB\-j /path/to/chef\-solo.json\fP. +T} +_ +T{ +Client +T} T{ +chef\-shell acts as a chef\-client. During startup, it reads the chef\-client configuration file and contacts the server to get attributes and cookbooks. The run list will be set in the same way as normal chef\-client runs. chef\-client mode is activated with the \fB\-z\fP or \fB\-\-client\fP options. You can also specify the configuration file with \fB\-c CONFIG\fP and the server URL with \fB\-S SERVER_URL\fP. +T} +_ +.TE +.SH OPTIONS +.sp +This command has the following syntax: +.sp +.nf +.ft C +chef\-shell OPTION VALUE OPTION VALUE ... +.ft P +.fi +.sp +This command has the following options: +.INDENT 0.0 +.TP +.B \fB\-a\fP, \fB\-\-standalone\fP +Indicates that chef\-shell will be run in standalone mode. +.TP +.B \fB\-c CONFIG\fP, \fB\-\-config CONFIG\fP +The configuration file to use. +.TP +.B \fB\-h\fP, \fB\-\-help\fP +Shows help for the command. +.TP +.B \fB\-j PATH\fP, \fB\-\-json\-attributes PATH\fP +The path to a file that contains JSON data. Use this option to override attributes that are set from other locations, such as from within a cookbook or by a role. +.TP +.B \fB\-l LEVEL\fP, \fB\-\-log_level LEVEL\fP +The level of logging that will be stored in a log file: \fBdebug\fP, \fBinfo\fP, \fBwarn\fP, \fBerror\fP, or \fBfatal\fP. +.TP +.B \fB\-s\fP, \fB\-\-solo\fP +Indicates that chef\-shell will be run in chef\-solo mode. +.TP +.B \fB\-S CHEF_SERVER_URL\fP, \fB\-\-server CHEF_SERVER_URL\fP +The URL for the server. +.TP +.B \fB\-v\fP, \fB\-\-version\fP +The version of the chef\-client. +.TP +.B \fB\-z\fP, \fB\-\-client\fP +Indicates that chef\-shell will be run in chef\-client mode. +.UNINDENT +.SH AUTHOR +Opscode +.\" Generated by docutils manpage writer. . -.TH "CHEF\-SHELL" "1" "July 2013" "Chef 11.8.0.alpha.0" "Chef Manual" -. -.SH "NAME" -\fBchef\-shell\fR \- Interactive Chef Console -. -.SH "SYNOPSIS" -\fBchef\-shell\fR [\fInamed configuration\fR] \fI(options)\fR -. -.TP -\fB\-S\fR, \fB\-\-server CHEF_SERVER_URL\fR -The chef server URL -. -.TP -\fB\-z\fR, \fB\-\-client\fR -chef\-client mode -. -.TP -\fB\-c\fR, \fB\-\-config CONFIG\fR -The configuration file to use -. -.TP -\fB\-j\fR, \fB\-\-json\-attributes JSON_ATTRIBS\fR -Load attributes from a JSON file or URL -. -.TP -\fB\-l\fR, \fB\-\-log\-level LOG_LEVEL\fR -Set the logging level -. -.TP -\fB\-s\fR, \fB\-\-solo\fR -chef\-solo session -. -.TP -\fB\-a\fR, \fB\-\-standalone\fR -standalone session -. -.TP -\fB\-v\fR, \fB\-\-version\fR -Show chef version -. -.TP -\fB\-h\fR, \fB\-\-help\fR -Show command options -. -.P -When no \-\-config option is specified, chef\-shell attempts to load a default configuration file: -. -.IP "\(bu" 4 -If a \fInamed configuration\fR is given, chef\-shell will load ~/\.chef/\fInamed configuration\fR/chef_shell\.rb -. -.IP "\(bu" 4 -If no \fInamed configuration\fR is given chef\-shell will load ~/\.chef/chef_shell\.rb if it exists -. -.IP "\(bu" 4 -chef\-shell falls back to loading /etc/chef/client\.rb or /etc/chef/solo\.rb if \-z or \-s options are given and no chef_shell\.rb can be found\. -. -.IP "\(bu" 4 -The \-\-config option takes precedence over implicit configuration paths\. -. -.IP "" 0 -. -.SH "DESCRIPTION" -\fBchef\-shell\fR is an irb(1) (interactive ruby) session customized for Chef\. \fBchef\-shell\fR serves two primary functions: it provides a means to interact with a Chef Server interactively using a convenient DSL; it allows you to define and run Chef recipes interactively\. -. -.SH "SYNTAX" -chef\-shell uses irb\'s subsession feature to provide multiple modes of interaction\. In addition to the primary mode which is entered on start, \fBrecipe\fR and \fBattributes\fR modes are available\. -. -.SH "PRIMARY MODE" -The following commands are available in the primary session: -. -.TP -\fBhelp\fR -Prints a list of available commands -. -.TP -\fBversion\fR -Prints the Chef version -. -.TP -\fBrecipe\fR -Switches to \fBrecipe\fR mode -. -.TP -\fBattributes\fR -Switches to \fBattributes\fR mode -. -.TP -\fBrun_chef\fR -Initiates a chef run -. -.TP -\fBreset\fR -reinitializes chef\-shell session -. -.TP -\fBecho :on|:off\fR -Turns irb\'s echo function on or off\. Echo is \fIon\fR by default\. -. -.TP -\fBtracing :on|:off\fR -Turns irb\'s function tracing feature on or off\. Tracing is extremely verbose and expected to be of interest primarily to developers\. -. -.TP -\fBnode\fR -Returns the \fInode\fR object for the current host\. See knife\-node(1) for more information about nodes\. -. -.TP -\fBohai\fR -Prints the attributes of \fInode\fR -. -.P -In addition to these commands, chef\-shell provides a DSL for accessing data on the Chef Server\. When working with remote data in chef\-shell, you chain method calls in the form \fIobject type\fR\.\fIoperation\fR, where \fIobject type\fR is in plural form\. The following object types are available: -. -.IP "\(bu" 4 -\fBnodes\fR -. -.IP "\(bu" 4 -\fBroles\fR -. -.IP "\(bu" 4 -\fBdata_bags\fR -. -.IP "\(bu" 4 -\fBclients\fR -. -.IP "\(bu" 4 -\fBcookbooks\fR -. -.IP "" 0 -. -.P -For each \fIobject type\fR the following operations are available: -. -.TP -\fIobject type\fR\.all(\fI&block\fR) -Loads all items from the server\. If the optional code \fIblock\fR is given, each item will be passed to the block and the results returned, similar to ruby\'s \fBEnumerable#map\fR method\. -. -.TP -\fIobject type\fR\.show(\fIobject name\fR) -Aliased as \fIobject type\fR\.load -. -.IP -Loads the singular item identified by \fIobject name\fR\. -. -.TP -\fIobject type\fR\.search(\fIquery\fR, \fI&block\fR) -Aliased as \fIobject type\fR\.find -. -.IP -Runs a search against the server and returns the matching items\. If the optional code \fIblock\fR is given each item will be passed to the block and the results returned\. -. -.IP -The \fIquery\fR may be a Solr/Lucene format query given as a String, or a Hash of conditions\. If a Hash is given, the options will be ANDed together\. To join conditions with OR, use negative queries, or any advanced search syntax, you must provide give the query in String form\. -. -.TP -\fIobject type\fR\.transform(:all|\fIquery\fR, \fI&block\fR) -Aliased as \fIobject type\fR\.bulk_edit -. -.IP -Bulk edit objects by processing them with the (required) code \fIblock\fR\. You can edit all objects of the given type by passing the Symbol \fB:all\fR as the argument, or only a subset by passing a \fIquery\fR as the argument\. The \fIquery\fR is evaluated in the same way as with \fBsearch\fR\. -. -.IP -The return value of the code \fIblock\fR is used to alter the behavior of \fBtransform\fR\. If the value returned from the block is \fBnil\fR or \fBfalse\fR, the object will not be saved\. Otherwise, the object is saved after being passed to the block\. This behavior can be exploited to create a dry run to test a data transformation\. -. -.SH "RECIPE MODE" -Recipe mode implements Chef\'s recipe DSL\. Exhaustively documenting this DSL is outside the scope of this document\. See the following pages in the Chef documentation for more information: -. -.IP "\(bu" 4 -\fIhttp://wiki\.opscode\.com/display/chef/Resources\fR -. -.IP "\(bu" 4 -\fIhttp://wiki\.opscode\.com/display/chef/Recipes\fR -. -.IP "" 0 -. -.P -Once you have defined resources in the recipe, you can trigger a convergence run via \fBrun_chef\fR -. -.SH "EXAMPLES" -. -.IP "\(bu" 4 -A "Hello World" interactive recipe -. -.IP -chef > recipe chef:recipe > echo :off chef:recipe > file "/tmp/hello_world" chef:recipe > run_chef [Sat, 09 Apr 2011 08:56:56 \-0700] INFO: Processing file[/tmp/hello_world] action create ((irb#1) line 2) [Sat, 09 Apr 2011 08:56:56 \-0700] INFO: file[/tmp/hello_world] created file /tmp/hello_world chef:recipe > pp ls \'/tmp\' ["\.", "\.\.", "hello_world"] -. -.IP "\(bu" 4 -Search for \fInodes\fR by role, and print their IP addresses -. -.IP -chef > nodes\.find(:roles => \'monitoring\-server\') {|n| n[:ipaddress] } => ["10\.254\.199\.5"] -. -.IP "\(bu" 4 -Remove the role \fIobsolete\fR from every node in the system -. -.IP -chef > nodes\.transform(:all) {|n| n\.run_list\.delete(\'role[obsolete]\') } => [node[chef098b2\.opschef\.com], node[ree\-woot], node[graphite\-dev], node[fluke\.localdomain], node[ghost\.local], node[kallistec]] -. -.IP "" 0 -. -.SH "BUGS" -\fBchef\-shell\fR often does not perfectly replicate the context in which chef\-client(8) configures a host, which may lead to discrepancies in observed behavior\. -. -.P -\fBchef\-shell\fR has to duplicate much code from chef\-client\'s internal libraries and may become out of sync with the behavior of those libraries\. -. -.SH "SEE ALSO" -chef\-client(8) knife(1) \fIhttp://wiki\.opscode\.com/display/chef/Chef+Shell\fR -. -.SH "AUTHOR" -Chef was written by Adam Jacob \fIadam@opscode\.com\fR with many contributions from the community\. chef\-shell was written by Daniel DeLeo\. -. -.SH "DOCUMENTATION" -This manual page was written by Daniel DeLeo \fIdan@opscode\.com\fR\. Permission is granted to copy, distribute and / or modify this document under the terms of the Apache 2\.0 License\. -. -.SH "CHEF" -chef\-shell is distributed with Chef\. \fIhttp://wiki\.opscode\.com/display/chef/Home\fR diff --git a/distro/common/man/man1/knife-bootstrap.1 b/distro/common/man/man1/knife-bootstrap.1 index 57afe45343..b62031e6d8 100644 --- a/distro/common/man/man1/knife-bootstrap.1 +++ b/distro/common/man/man1/knife-bootstrap.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-BOOTSTRAP" "1" "Chef 11.8" "" "knife bootstrap" +.TH "KNIFE-BOOTSTRAP" "1" "Chef 11.8.0" "" "knife bootstrap" .SH NAME knife-bootstrap \- The man page for the knife bootstrap subcommand. . @@ -193,7 +193,5 @@ $ knife bootstrap 192.168.1.1 \-x username \-i ~/.ssh/id_rsa \-\-sudo .fi .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-client.1 b/distro/common/man/man1/knife-client.1 index 50b42c759b..79d433dce9 100644 --- a/distro/common/man/man1/knife-client.1 +++ b/distro/common/man/man1/knife-client.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-CLIENT" "1" "Chef 11.8" "" "knife client" +.TH "KNIFE-CLIENT" "1" "Chef 11.8.0" "" "knife client" .SH NAME knife-client \- The man page for the knife client subcommand. . @@ -364,7 +364,5 @@ $ knife role show devops \-F json Other formats available include \fBtext\fP, \fByaml\fP, and \fBpp\fP. .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-configure.1 b/distro/common/man/man1/knife-configure.1 index 8ca138f3d4..e06793e219 100644 --- a/distro/common/man/man1/knife-configure.1 +++ b/distro/common/man/man1/knife-configure.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-CONFIGURE" "1" "Chef 11.8" "" "knife configure" +.TH "KNIFE-CONFIGURE" "1" "Chef 11.8.0" "" "knife configure" .SH NAME knife-configure \- The man page for the knife configure subcommand. . @@ -146,7 +146,5 @@ $ knife configure client \(aq/directory\(aq .fi .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-cookbook-site.1 b/distro/common/man/man1/knife-cookbook-site.1 index 049900fce8..8a2b535333 100644 --- a/distro/common/man/man1/knife-cookbook-site.1 +++ b/distro/common/man/man1/knife-cookbook-site.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-COOKBOOK-SITE" "1" "Chef 11.8" "" "knife cookbook site" +.TH "KNIFE-COOKBOOK-SITE" "1" "Chef 11.8.0" "" "knife cookbook site" .SH NAME knife-cookbook-site \- The man page for the knife cookbook site subcommand. . @@ -473,7 +473,5 @@ $ knife cookbook site unshare getting\-started .fi .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-cookbook.1 b/distro/common/man/man1/knife-cookbook.1 index 82e991687c..c9b4e807dc 100644 --- a/distro/common/man/man1/knife-cookbook.1 +++ b/distro/common/man/man1/knife-cookbook.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-COOKBOOK" "1" "Chef 11.8" "" "knife cookbook" +.TH "KNIFE-COOKBOOK" "1" "Chef 11.8.0" "" "knife cookbook" .SH NAME knife-cookbook \- The man page for the knife cookbook subcommand. . @@ -530,7 +530,7 @@ $ knife role show devops \-F json Other formats available include \fBtext\fP, \fByaml\fP, and \fBpp\fP. .SH TEST .sp -The \fBtest\fP argument is used to test a cookbook for syntax errors. This argument uses Ruby syntax checking to verify every file in a cookbook that ends in .rb and erb. +The \fBtest\fP argument is used to test a cookbook for syntax errors. This argument uses Ruby syntax checking to verify every file in a cookbook that ends in .rb and Embedded Ruby (ERB). .sp \fBSyntax\fP .sp @@ -638,7 +638,5 @@ ERROR: Version 0.1.6 of cookbook redis is frozen. Use \-\-force to override. .fi .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-data-bag.1 b/distro/common/man/man1/knife-data-bag.1 index df44979710..b5fae1742a 100644 --- a/distro/common/man/man1/knife-data-bag.1 +++ b/distro/common/man/man1/knife-data-bag.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-DATA-BAG" "1" "Chef 11.8" "" "knife data bag" +.TH "KNIFE-DATA-BAG" "1" "Chef 11.8.0" "" "knife data bag" .SH NAME knife-data-bag \- The man page for the knife data bag subcommand. . @@ -482,7 +482,5 @@ $ knife data bag show admins \-F json Other formats available include \fBtext\fP, \fByaml\fP, and \fBpp\fP. .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-delete.1 b/distro/common/man/man1/knife-delete.1 index 9b9bb51dce..7f1028fbb9 100644 --- a/distro/common/man/man1/knife-delete.1 +++ b/distro/common/man/man1/knife-delete.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-DELETE" "1" "Chef 11.8" "" "knife delete" +.TH "KNIFE-DELETE" "1" "Chef 11.8.0" "" "knife delete" .SH NAME knife-delete \- The man page for the knife delete subcommand. . @@ -128,7 +128,5 @@ The layout of the local chef\-repo. Possible values: \fBstatic\fP, \fBeverything .UNINDENT .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-deps.1 b/distro/common/man/man1/knife-deps.1 index 8879ed536c..2f8056ed26 100644 --- a/distro/common/man/man1/knife-deps.1 +++ b/distro/common/man/man1/knife-deps.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-DEPS" "1" "Chef 11.8" "" "knife deps" +.TH "KNIFE-DEPS" "1" "Chef 11.8.0" "" "knife deps" .SH NAME knife-deps \- The man page for the knife deps subcommand. . @@ -215,7 +215,5 @@ $ knife deps nodes/*.json | xargs knife upload .fi .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-diff.1 b/distro/common/man/man1/knife-diff.1 index cc83401863..f773820286 100644 --- a/distro/common/man/man1/knife-diff.1 +++ b/distro/common/man/man1/knife-diff.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-DIFF" "1" "Chef 11.8" "" "knife diff" +.TH "KNIFE-DIFF" "1" "Chef 11.8.0" "" "knife diff" .SH NAME knife-diff \- The man page for the knife diff subcommand. . @@ -208,7 +208,5 @@ node\-lb/Rakefile .fi .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-download.1 b/distro/common/man/man1/knife-download.1 index 71eafe15a0..5ab5e788fe 100644 --- a/distro/common/man/man1/knife-download.1 +++ b/distro/common/man/man1/knife-download.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-DOWNLOAD" "1" "Chef 11.8" "" "knife download" +.TH "KNIFE-DOWNLOAD" "1" "Chef 11.8.0" "" "knife download" .SH NAME knife-download \- The man page for the knife download subcommand. . @@ -216,7 +216,5 @@ $ knife download cookbooks/apache\e* roles/webserver.json .fi .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-edit.1 b/distro/common/man/man1/knife-edit.1 index e1a0a45424..fd443726c3 100644 --- a/distro/common/man/man1/knife-edit.1 +++ b/distro/common/man/man1/knife-edit.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-EDIT" "1" "Chef 11.8" "" "knife edit" +.TH "KNIFE-EDIT" "1" "Chef 11.8.0" "" "knife edit" .SH NAME knife-edit \- The man page for the knife edit subcommand. . @@ -122,7 +122,5 @@ The layout of the local chef\-repo. Possible values: \fBstatic\fP, \fBeverything .UNINDENT .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-environment.1 b/distro/common/man/man1/knife-environment.1 index ed272e3892..c70556a190 100644 --- a/distro/common/man/man1/knife-environment.1 +++ b/distro/common/man/man1/knife-environment.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-ENVIRONMENT" "1" "Chef 11.8" "" "knife environment" +.TH "KNIFE-ENVIRONMENT" "1" "Chef 11.8.0" "" "knife environment" .SH NAME knife-environment \- The man page for the knife environment subcommand. . @@ -320,7 +320,5 @@ $ knife role show devops \-F json Other formats available include \fBtext\fP, \fByaml\fP, and \fBpp\fP. .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-exec.1 b/distro/common/man/man1/knife-exec.1 index 3f9e6fc47b..962ec4079e 100644 --- a/distro/common/man/man1/knife-exec.1 +++ b/distro/common/man/man1/knife-exec.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-EXEC" "1" "Chef 11.8" "" "knife exec" +.TH "KNIFE-EXEC" "1" "Chef 11.8.0" "" "knife exec" .SH NAME knife-exec \- The man page for the knife exec subcommand. . @@ -321,7 +321,5 @@ Your attributes: ipaddress fqdn .fi .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-index-rebuild.1 b/distro/common/man/man1/knife-index-rebuild.1 index 2bacf68619..1dc7dc1703 100644 --- a/distro/common/man/man1/knife-index-rebuild.1 +++ b/distro/common/man/man1/knife-index-rebuild.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-INDEX-REBUILD" "1" "Chef 11.8" "" "knife index rebuild" +.TH "KNIFE-INDEX-REBUILD" "1" "Chef 11.8.0" "" "knife index rebuild" .SH NAME knife-index-rebuild \- The man page for the knife index rebuild subcommand. . @@ -111,7 +111,5 @@ $ knife index rebuild This command does not have any specific options. .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-index.1 b/distro/common/man/man1/knife-index.1 deleted file mode 100644 index ac7c5b2655..0000000000 --- a/distro/common/man/man1/knife-index.1 +++ /dev/null @@ -1,29 +0,0 @@ -.\" generated with Ronn/v0.7.3 -.\" http://github.com/rtomayko/ronn/tree/0.7.3 -. -.TH "KNIFE\-INDEX" "1" "July 2013" "Chef 11.8.0.alpha.0" "Chef Manual" -. -.SH "NAME" -\fBknife\-index\fR \- Rebuild the search index on a Chef Server -. -.SH "SYNOPSIS" -\fBknife\fR \fBindex rebuild\fR \fI(options)\fR -. -.TP -\fB\-y\fR, \fB\-\-yes\fR -don\'t bother to ask if I\'m sure -. -.SH "DESCRIPTION" -Rebuilds all the search indexes on the server\. This is accomplished by deleting all objects from the search index, and then forwarding each item in the database to \fBchef\-expander\fR(8) via \fBrabbitmq\-server\fR(1)\. Depending on the number of objects in the database, it may take some time for all objects to be indexed and available for search\. -. -.SH "SEE ALSO" -\fBknife\-search\fR(1) -. -.SH "AUTHOR" -Chef was written by Adam Jacob \fIadam@opscode\.com\fR with many contributions from the community\. -. -.SH "DOCUMENTATION" -This manual page was written by Joshua Timberman \fIjoshua@opscode\.com\fR\. Permission is granted to copy, distribute and / or modify this document under the terms of the Apache 2\.0 License\. -. -.SH "CHEF" -Knife is distributed with Chef\. \fIhttp://wiki\.opscode\.com/display/chef/Home\fR diff --git a/distro/common/man/man1/knife-list.1 b/distro/common/man/man1/knife-list.1 index e4cfb6710d..0314abef33 100644 --- a/distro/common/man/man1/knife-list.1 +++ b/distro/common/man/man1/knife-list.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-LIST" "1" "Chef 11.8" "" "knife list" +.TH "KNIFE-LIST" "1" "Chef 11.8.0" "" "knife list" .SH NAME knife-list \- The man page for the knife list subcommand. . @@ -163,7 +163,5 @@ $ knife list \-R / .fi .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-node.1 b/distro/common/man/man1/knife-node.1 index 9b36a04228..394cf54c87 100644 --- a/distro/common/man/man1/knife-node.1 +++ b/distro/common/man/man1/knife-node.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-NODE" "1" "Chef 11.8" "" "knife node" +.TH "KNIFE-NODE" "1" "Chef 11.8.0" "" "knife node" .SH NAME knife-node \- The man page for the knife node subcommand. . @@ -574,7 +574,5 @@ knife node show \-l \-\-format=json <node_name> .fi .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-raw.1 b/distro/common/man/man1/knife-raw.1 index 5053006c0b..c35b010031 100644 --- a/distro/common/man/man1/knife-raw.1 +++ b/distro/common/man/man1/knife-raw.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-RAW" "1" "Chef 11.8" "" "knife raw" +.TH "KNIFE-RAW" "1" "Chef 11.8.0" "" "knife raw" .SH NAME knife-raw \- The man page for the knife raw subcommand. . @@ -166,7 +166,5 @@ to return something similar to: .fi .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-recipe-list.1 b/distro/common/man/man1/knife-recipe-list.1 index d8cca9edec..ab7bf6ec8c 100644 --- a/distro/common/man/man1/knife-recipe-list.1 +++ b/distro/common/man/man1/knife-recipe-list.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-RECIPE-LIST" "1" "Chef 11.8" "" "knife recipe list" +.TH "KNIFE-RECIPE-LIST" "1" "Chef 11.8.0" "" "knife recipe list" .SH NAME knife-recipe-list \- The man page for the knife recipe list subcommand. . @@ -129,7 +129,5 @@ couchdb::org_cleanu .fi .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-role.1 b/distro/common/man/man1/knife-role.1 index cbf736ebf7..33c7b6bf8f 100644 --- a/distro/common/man/man1/knife-role.1 +++ b/distro/common/man/man1/knife-role.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-ROLE" "1" "Chef 11.8" "" "knife role" +.TH "KNIFE-ROLE" "1" "Chef 11.8.0" "" "knife role" .SH NAME knife-role \- The man page for the knife role subcommand. . @@ -370,7 +370,5 @@ $ knife role show devops \-F json Other formats available include \fBtext\fP, \fByaml\fP, and \fBpp\fP. .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-search.1 b/distro/common/man/man1/knife-search.1 index 6f4edebe1f..e59be88bd9 100644 --- a/distro/common/man/man1/knife-search.1 +++ b/distro/common/man/man1/knife-search.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-SEARCH" "1" "Chef 11.8" "" "knife search" +.TH "KNIFE-SEARCH" "1" "Chef 11.8.0" "" "knife search" .SH NAME knife-search \- The man page for the knife search subcommand. . @@ -300,7 +300,5 @@ $ knife search node "role:web AND NOT name:web03" where the query in the previous example will search all servers that have the \fBweb\fP role, but not on the server named \fBweb03\fP. .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-show.1 b/distro/common/man/man1/knife-show.1 index da0aff8511..0612440672 100644 --- a/distro/common/man/man1/knife-show.1 +++ b/distro/common/man/man1/knife-show.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-SHOW" "1" "Chef 11.8" "" "knife show" +.TH "KNIFE-SHOW" "1" "Chef 11.8.0" "" "knife show" .SH NAME knife-show \- The man page for the knife show subcommand. . @@ -134,7 +134,5 @@ $ knife show roles/ environments/ .fi .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-ssh.1 b/distro/common/man/man1/knife-ssh.1 index ea755c9769..41f47eecbd 100644 --- a/distro/common/man/man1/knife-ssh.1 +++ b/distro/common/man/man1/knife-ssh.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-SSH" "1" "Chef 11.8" "" "knife ssh" +.TH "KNIFE-SSH" "1" "Chef 11.8.0" "" "knife ssh" .SH NAME knife-ssh \- The man page for the knife ssh subcommand. . @@ -250,7 +250,5 @@ ERROR: LoadError: cannot load such file \-\- appscript .fi .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-status.1 b/distro/common/man/man1/knife-status.1 index b61f877b71..0682fdca70 100644 --- a/distro/common/man/man1/knife-status.1 +++ b/distro/common/man/man1/knife-status.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-STATUS" "1" "Chef 11.8" "" "knife status" +.TH "KNIFE-STATUS" "1" "Chef 11.8.0" "" "knife status" .SH NAME knife-status \- The man page for the knife status subcommand. . @@ -144,7 +144,7 @@ to return something like: .ft P .fi .sp -To show only the status nodes on which the chef\-client ran within the past hour, enter: +To show the status for nodes on which the chef\-client did not run successfully within the past hour, enter: .sp .nf .ft C @@ -203,7 +203,5 @@ to return something like: .fi .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-tag.1 b/distro/common/man/man1/knife-tag.1 index 135969b393..945912f35e 100644 --- a/distro/common/man/man1/knife-tag.1 +++ b/distro/common/man/man1/knife-tag.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-TAG" "1" "Chef 11.8" "" "knife tag" +.TH "KNIFE-TAG" "1" "Chef 11.8.0" "" "knife tag" .SH NAME knife-tag \- The man page for the knife tag subcommand. . @@ -176,7 +176,5 @@ $ knife tag list [NODE_NAME...] This command does not have any specific options. .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-upload.1 b/distro/common/man/man1/knife-upload.1 index 91ebb198d5..f7498f861c 100644 --- a/distro/common/man/man1/knife-upload.1 +++ b/distro/common/man/man1/knife-upload.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-UPLOAD" "1" "Chef 11.8" "" "knife upload" +.TH "KNIFE-UPLOAD" "1" "Chef 11.8.0" "" "knife upload" .SH NAME knife-upload \- The man page for the knife upload subcommand. . @@ -235,7 +235,5 @@ $ knife upload \(gaknife deps nodes/*.json\(ga .fi .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-user.1 b/distro/common/man/man1/knife-user.1 index 7d6fada5ce..b8fe4583f0 100644 --- a/distro/common/man/man1/knife-user.1 +++ b/distro/common/man/man1/knife-user.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-USER" "1" "Chef 11.8" "" "knife user" +.TH "KNIFE-USER" "1" "Chef 11.8.0" "" "knife user" .SH NAME knife-user \- The man page for the knife user subcommand. . @@ -313,7 +313,5 @@ $ knife user show "Dennis Teck" \-F json Other formats available include \fBtext\fP, \fByaml\fP, and \fBpp\fP. .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife-xargs.1 b/distro/common/man/man1/knife-xargs.1 index 68710a19df..74f7bcaaab 100644 --- a/distro/common/man/man1/knife-xargs.1 +++ b/distro/common/man/man1/knife-xargs.1 @@ -1,4 +1,4 @@ -.TH "KNIFE-XARGS" "1" "Chef 11.8" "" "knife xargs" +.TH "KNIFE-XARGS" "1" "Chef 11.8.0" "" "knife xargs" .SH NAME knife-xargs \- The man page for the knife xargs subcommand. . @@ -162,7 +162,5 @@ $ knife deps nodes/*.json | xargs knife upload .fi .SH AUTHOR Opscode -.SH COPYRIGHT -This work is licensed under a Creative Commons Attribution 3.0 Unported License .\" Generated by docutils manpage writer. . diff --git a/distro/common/man/man1/knife.1 b/distro/common/man/man1/knife.1 index a8ce1c10fd..7e20d8a4c9 100644 --- a/distro/common/man/man1/knife.1 +++ b/distro/common/man/man1/knife.1 @@ -1,285 +1,228 @@ -.\" generated with Ronn/v0.7.3 -.\" http://github.com/rtomayko/ronn/tree/0.7.3 +.TH "KNIFE" "1" "Chef 11.8.0" "" "knife" +.SH NAME +knife \- The man page for the knife command line tool. +. +.nr rst2man-indent-level 0 +. +.de1 rstReportMargin +\\$1 \\n[an-margin] +level \\n[rst2man-indent-level] +level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] +- +\\n[rst2man-indent0] +\\n[rst2man-indent1] +\\n[rst2man-indent2] +.. +.de1 INDENT +.\" .rstReportMargin pre: +. RS \\$1 +. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] +. nr rst2man-indent-level +1 +.\" .rstReportMargin post: +.. +.de UNINDENT +. RE +.\" indent \\n[an-margin] +.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] +.nr rst2man-indent-level -1 +.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] +.in \\n[rst2man-indent\\n[rst2man-indent-level]]u +.. +.\" Man page generated from reStructuredText. +. +.sp +Knife is a command\-line tool that provides an interface between a local chef\-repo and the server. Knife helps users to manage: +.INDENT 0.0 +.IP \(bu 2 +Nodes +.IP \(bu 2 +Cookbooks and recipes +.IP \(bu 2 +Roles +.IP \(bu 2 +Stores of JSON data (data bags), including encrypted data +.IP \(bu 2 +Environments +.IP \(bu 2 +Cloud resources, including provisioning +.IP \(bu 2 +The installation of the chef\-client on management workstations +.IP \(bu 2 +Searching of indexed data on the server +.UNINDENT +.sp +Knife subcommands: +.INDENT 0.0 +.IP \(bu 2 +knife bootstrap +.IP \(bu 2 +knife client +.IP \(bu 2 +knife configure +.IP \(bu 2 +knife cookbook +.IP \(bu 2 +knife cookbook site +.IP \(bu 2 +knife data bag +.IP \(bu 2 +knife delete +.IP \(bu 2 +knife deps +.IP \(bu 2 +knife diff +.IP \(bu 2 +knife download +.IP \(bu 2 +knife edit +.IP \(bu 2 +knife environment +.IP \(bu 2 +knife exec +.IP \(bu 2 +knife list +.IP \(bu 2 +knife node +.IP \(bu 2 +knife raw +.IP \(bu 2 +knife recipe list +.IP \(bu 2 +knife role +.IP \(bu 2 +knife search +.IP \(bu 2 +knife show +.IP \(bu 2 +knife ssh +.IP \(bu 2 +knife status +.IP \(bu 2 +knife tag +.IP \(bu 2 +knife upload +.IP \(bu 2 +knife user +.IP \(bu 2 +knife xargs +.UNINDENT +.SH WORKING WITH KNIFE +.sp +Knife runs from a management workstation and sits in\-between a server and an organization\(aqs infrastructure. Knife interacts with a server by using the same REST API that is used by a chef\-client. Role\-based authentication controls (RBAC) can be used to authorize changes when Knife is run with Hosted Chef or Private Chef. Knife is configured during workstation setup, but subsequent modifications can be made using the knife.rb configuration file. +.SS JSON Data Format +.sp +Most data is entered using a text editor in JSON format, unless the \fB\-\-disable\-editing\fP option is entered as part of a command. (Encrypted data bags use YAML, which is a superset of JSON.) JSON is a common, language\-independent data format that provides a simple text representation of arbitrary data structures. For more information about JSON, see \fI\%http://www.json.org/\fP or \fI\%http://en.wikipedia.org/wiki/JSON\fP. +.SS Set the Text Editor +.sp +Some Knife commands, such as \fBknife data bag edit\fP, require that information be edited as JSON data using a text editor. For example, the following command: +.sp +.nf +.ft C +$ knife data bag edit admins admin_name +.ft P +.fi +.sp +will open up the text editor with data similar to: +.sp +.nf +.ft C +{ + "id": "admin_name" +} +.ft P +.fi +.sp +Changes to that file can then be made: +.sp +.nf +.ft C +{ + "id": "Justin C." + "description": "I am passing the time by letting time pass over me ..." +} +.ft P +.fi +.sp +The type of text editor that is used by Knife can be configured by adding an entry to the knife.rb file or by setting an \fBEDITOR\fP environment variable. For example, to configure the text editor to always open with vim, add the following to the knife.rb file: +.sp +.nf +.ft C +knife[:editor] = "/usr/bin/vim" +.ft P +.fi +.sp +When a Microsoft Windows file path is enclosed in a double\-quoted string (" "), the same backslash character (\fB\e\fP) that is used to define the file path separator is also used in Ruby to define an escape character. The knife.rb file is a Ruby file; therefore, file path separators must be escaped. In addition, spaces in the file path must be replaced with \fB~1\fP so that the length of each section within the file path is not more than 8 characters. For example, if EditPad Pro is the text editor of choice and is located at the following path: +.sp +.nf +.ft C +C:\e\eProgram Files (x86)\eEditPad Pro\eEditPad.exe +.ft P +.fi +.sp +the setting in the knife.rb file would be similar to: +.sp +.nf +.ft C +knife[:editor] = "C:\e\eProgra~1\e\eEditPa~1\e\eEditPad.exe" +.ft P +.fi +.sp +One approach to working around the double\- vs. single\-quote issue is to put the single\-quotes outside of the double\-quotes. For example, for Notepad++: +.sp +.nf +.ft C +knife[:editor] = \(aq"C:\eProgram Files (x86)\eNotepad++\enotepad++.exe \-nosession \-multiInst"\(aq +.ft P +.fi +.sp +for Sublime Text: +.sp +.nf +.ft C +knife[:editor] = \(aq"C:\eProgram Files\eSublime Text 2\esublime_text.exe \-\-wait"\(aq +.ft P +.fi +.sp +for TextPad: +.sp +.nf +.ft C +knife[:editor] = \(aq"C:\eProgram Files (x86)\eTextPad 7\eTextPad.exe"\(aq +.ft P +.fi +.sp +and for vim: +.sp +.nf +.ft C +knife[:editor] = \(aq"C:\eProgram Files (x86)\evim\evim74\egvim.exe"\(aq +.ft P +.fi +.SS Using Quotes +.sp +Values can be entered with double quotes (" ") or single quotes (\(aq \(aq), but this should be done consistently. +.SS Sub\-commands +.sp +Knife comes with a collection of built in subcommands that work together to provide all of the functionality required to take specific actions against any object in an organization, including cookbooks, nodes, roles, data bags, environments, and users. A Knife plugin extends the functionality beyond built\-in subcommands. +.sp +Knife has the following subcommands: \fBbootstrap\fP, \fBclient\fP, \fBconfigure\fP, \fBcookbook\fP, \fBcookbook site\fP, \fBdata bag\fP, \fBdelete\fP, \fBdeps\fP, \fBdiff\fP, \fBdownload\fP, \fBedit\fP, \fBenvironment\fP, \fBexec\fP, \fBindex rebuild\fP, \fBlist\fP, \fBnode\fP, \fBrecipe list\fP, \fBrole\fP, \fBsearch\fP, \fBshow\fP, \fBssh\fP, \fBstatus\fP, \fBtag\fP, \fBupload\fP, \fBuser\fP, and \fBxargs\fP. +.IP Note +The following subcommands run only against the open source server: \fBindex rebuild\fP and \fBuser\fP. +.RE +.SS Syntax +.sp +All Knife subcommands have the following syntax: +.INDENT 0.0 +.INDENT 3.5 +knife subcommand [ARGUMENT] (options) +.UNINDENT +.UNINDENT +.sp +Each subcommand has its own set of arguments and options. +.IP Note +All syntax examples in this document show variables in ALL_CAPS. For example \fB\-u PORT_LIST\fP (where PORT_LIST is a comma\-separated list of local and public UDP ports) or \fB\-F FORMAT\fP (where FORMAT determines the output format, either \fBsummary\fP, \fBtext\fP, \fBjson\fP, \fByaml\fP, or \fBpp\fP). These variables often require specific values that are unique to each organization. +.RE +.SH AUTHOR +Opscode +.\" Generated by docutils manpage writer. . -.TH "KNIFE" "1" "July 2013" "Chef 11.8.0.alpha.0" "Chef Manual" -. -.SH "NAME" -\fBknife\fR \- Chef Server API client utility -. -.SH "SYNOPSIS" -\fBknife\fR \fIsub\-command\fR [\fIargument\fR\.\.\.] \fI(options)\fR -. -.SH "DESCRIPTION" -Knife is a command\-line utility used to manage data on a Chef server through the HTTP(S) API\. Knife is organized into groups of subcommands centered around the various object types in Chef\. Each category of subcommand is documented in its own manual page\. Available topics are: -. -.IP "\(bu" 4 -bootstrap -. -.IP "\(bu" 4 -client -. -.IP "\(bu" 4 -configure -. -.IP "\(bu" 4 -cookbook\-site -. -.IP "\(bu" 4 -cookbook -. -.IP "\(bu" 4 -data\-bag -. -.IP "\(bu" 4 -environment -. -.IP "\(bu" 4 -exec -. -.IP "\(bu" 4 -index -. -.IP "\(bu" 4 -node -. -.IP "\(bu" 4 -recipe -. -.IP "\(bu" 4 -role -. -.IP "\(bu" 4 -search -. -.IP "\(bu" 4 -ssh -. -.IP "\(bu" 4 -status -. -.IP "\(bu" 4 -tag -. -.IP "" 0 -. -.P -If the knife manuals are in your \fBMANPATH\fR, you can access help for the above topics using \fBman knife\-TOPIC\fR; otherwise, you can view the documentation using \fBknife help TOPIC\fR\. -. -.SH "OPTIONS" -. -.TP -\fB\-s\fR, \fB\-\-server\-url\fR URL -Chef Server URL, corresponds to \fBChef::Config\fR \fBchef_server_url\fR\. -. -.TP -\fB\-k\fR, \fB\-\-key\fR KEY -API Client Key, corresponds to \fBChef::Config\fR \fBclient_key\fR\. -. -.TP -\fB\-c\fR, \fB\-\-config\fR CONFIG -The configuration file to use -. -.TP -\fB\-E\fR, \fB\-\-environment ENVIRONMENT\fR -Set the Chef environment -. -.TP -\fB\-e\fR, \fB\-\-editor\fR EDITOR -Set the editor to use for interactive commands -. -.TP -\fB\-F\fR, \fB\-\-format\fR FORMAT -Which format to use for output\. See FORMATS for details\. -. -.TP -\fB\-d\fR, \fB\-\-disable\-editing\fR -Do not open EDITOR, just accept the data as is -. -.TP -\fB\-u\fR, \fB\-\-user\fR USER -API Client Username, corresponds to \fBChef::Config\fR \fBnode_name\fR\. -. -.TP -\fB\-p\fR, \fB\-\-print\-after\fR -Show the data after a destructive operation -. -.TP -\fB\-v\fR, \fB\-\-version\fR -Show chef version -. -.TP -\fB\-V\fR, \fB\-\-verbose\fR -More verbose output\. Use twice for max verbosity\. -. -.TP -\fB\-y\fR, \fB\-\-yes\fR -Say yes to all prompts for confirmation -. -.TP -\fB\-\-defaults\fR -Accept default values for all questions -. -.TP -\fB\-\-[no\-]color\fR -Use colored output\. Color enabled by default\. -. -.TP -\fB\-h\fR, \fB\-\-help\fR -Show the available options for a command\. -. -.SH "SUB\-COMMANDS" -Sub\-commands that operate on the basic Chef data types are structured as \fINOUN verb NOUN (options)\fR\. For all data types, the following commands are available: -. -.IP "\(bu" 4 -create (create) -. -.IP "\(bu" 4 -list and show (read) -. -.IP "\(bu" 4 -edit (update) -. -.IP "\(bu" 4 -delete (destroy) -. -.IP "" 0 -. -.P -Knife also includes commands that take actions other than displaying or modifying data on the Chef Server, such as \fBknife\-ssh(1)\fR\. -. -.SH "CONFIGURATION" -The knife configuration file is a Ruby DSL to set configuration parameters for Knife\'s \fBGENERAL OPTIONS\fR\. The default location for the config file is \fB~/\.chef/knife\.rb\fR\. If managing multiple Chef repositories, per\-repository config files can be created\. The file must be \fB\.chef/knife\.rb\fR in the current directory of the repository\. -. -.P -If the config file exists, knife uses these settings for \fBGENERAL OPTIONS\fR defaults\. -. -.IP "\(bu" 4 -\fBnode_name\fR: User or client identity (i\.e\., \fIname\fR) to use for authenticating requests to the Chef Server\. -. -.IP "\(bu" 4 -\fBclient_key\fR: Private key file to authenticate to the Chef server\. Corresponds to the \fB\-k\fR or \fB\-\-key\fR option\. -. -.IP "\(bu" 4 -\fBchef_server_url\fR: URL of the Chef server\. Corresponds to the \fB\-s\fR or \fB\-\-server\-url\fR option\. This is requested from the user when running this sub\-command\. -. -.IP "\(bu" 4 -\fBsyntax_check_cache_path\fR: Specifies the path to a directory where knife caches information about files that it has syntax checked\. -. -.IP "\(bu" 4 -\fBvalidation_client_name\fR: Specifies the name of the client used to validate new clients\. -. -.IP "\(bu" 4 -\fBvalidation_key\fR: Specifies the private key file to use when bootstrapping new hosts\. See knife\-client(1) for more information about the validation client\. -. -.IP "\(bu" 4 -\fBcookbook_copyright\fR, \fBcookbook_email\fR, \fBcookbook_license\fR, \fBreadme_format\fR Used by \fBknife cookbook create\fR sub\-command to specify the copyright holder, maintainer email, license and readme format (respectively) for new cookbooks\. The copyright holder is listed as the maintainer in the cookbook\'s metadata and as the Copyright in the comments of the default recipe\. The maintainer email is used in the cookbook metadata\. The license determines what preamble to put in the comment of the default recipe, and is listed as the license in the cookbook metadata\. Currently supported licenses are "apachev2" and "none"\. Any other values will result in an empty license in the metadata (needs to be filled in by the author), and no comment preamble in the default recipe\. Currently supported readme formats are "md", "mkd", "txt", and "rdoc"\. Any other value will result in an unformatted README\. -. -.IP "" 0 -. -.SH "FILES" -\fI~/\.chef/knife\.rb\fR -. -.P -Ruby DSL configuration file for knife\. See \fBCONFIGURATION\fR\. -. -.SH "FORMATS" -The amount of content displayed and the output format are modified by the \fB\-\-format\fR option\. If no alternate format is selected, the default is summary\. -. -.P -Valid formats are: -. -.TP -\fBsummary\fR -displays the node in a custom, summarized format (default) -. -.TP -\fBtext\fR -displays the node data in its entirety using the colorized tree display -. -.TP -\fBjson\fR -displays the node in JSON format -. -.TP -\fByaml\fR -displays the node in YAML format -. -.TP -\fBpp\fR -displays the node using Ruby\'s pretty printer\. -. -.P -For brevity, only the first character of the format is required, for example, \-Fj will produce JSON format output\. -. -.SH "CHEF WORKFLOW" -When working with Chef and Knife in the local repository, the recommended workflow outline looks like: -. -.IP "\(bu" 4 -Create repository\. A skeleton sample is provided at \fIhttp://github\.com/opscode/chef\-repo/\fR\. -. -.IP "\(bu" 4 -Configure knife, see \fBCONFIGURATION\fR\. -. -.IP "\(bu" 4 -Download cookbooks from the Opscode cookbooks site, see \fBCOOKBOOK SITE SUB\-COMMANDS\fR\. -. -.IP "\(bu" 4 -Or, create new cookbooks, see \fBcookbook create\fR sub\-command\. -. -.IP "\(bu" 4 -Commit changes to the version control system\. See your tool\'s documentation\. -. -.IP "\(bu" 4 -Upload cookbooks to the Chef Server, see \fBCOOKBOOK SUB\-COMMANDS\fR\. -. -.IP "\(bu" 4 -Launch instances in the Cloud, OR provision new hosts; see \fBCLOUD COMPUTING SUB\-COMMANDS\fR and \fBBOOTSTRAP SUB\-COMMANDS\fR\. -. -.IP "\(bu" 4 -Watch Chef configure systems! -. -.IP "" 0 -. -.P -A note about git: Opscode and many folks in the Chef community use git, but it is not required, except in the case of the \fBcookbook site vendor\fR sub\-command, as it uses git directly\. Version control is strongly recommended though, and git fits with a lot of the workflow paradigms\. -. -.SH "EXAMPLES" -. -.SH "ENVIRONMENT" -. -.TP -\fBEDITOR\fR -The text editor to use for editing data\. The \-\-editor option takes precedence over this value, and the \-\-disable\-editing option supresses data editing entirely\. -. -.SH "SEE ALSO" -\fBchef\-client(8)\fR \fBchef\-server(8)\fR \fBchef\-shell(1)\fR -. -.P -\fBknife\-bootstrap(1)\fR \fBknife\-client(1)\fR \fBknife\-configure(1)\fR \fBknife\-cookbook\-site(1)\fR \fBknife\-cookbook(1)\fR \fBknife\-data\-bag(1)\fR \fBknife\-environment(1)\fR \fBknife\-exec(1)\fR \fBknife\-index(1)\fR \fBknife\-node(1)\fR \fBknife\-recipe(1)\fR \fBknife\-role(1)\fR \fBknife\-search(1)\fR \fBknife\-ssh(1)\fR \fBknife\-tag(1)\fR -. -.P -Complete Chef documentation is available online: \fIhttp://wiki\.opscode\.com/display/chef/Home/\fR -. -.P -JSON is JavaScript Object Notation \fIhttp://json\.org/\fR -. -.P -SOLR is an open source search engine\. \fIhttp://lucene\.apache\.org/solr/\fR -. -.P -\fBgit(1)\fR is a version control system \fIhttp://git\-scm\.com/\fR -. -.P -This manual page was generated from Markdown with \fBronn(1)\fR \fIhttp://rtomayko\.github\.com/ronn/ronn\.1\.html\fR -. -.SH "AUTHOR" -Chef was written by Adam Jacob \fIadam@opscode\.com\fR of Opscode (\fIhttp://www\.opscode\.com\fR), with contributions from the community\. -. -.SH "DOCUMENTATION" -This manual page was written by Joshua Timberman \fIjoshua@opscode\.com\fR\. -. -.SH "LICENSE" -Both Chef and this documentation are released under the terms of the Apache 2\.0 License\. You may view the license online: \fIhttp://www\.apache\.org/licenses/LICENSE\-2\.0\.html\fR On some systems, the complete text of the Apache 2\.0 License may be found in \fB/usr/share/common\-licenses/Apache\-2\.0\fR\. -. -.SH "CHEF" -Knife is distributed with Chef\. \fIhttp://wiki\.opscode\.com/display/chef/Home\fR diff --git a/distro/common/man/man8/chef-client.8 b/distro/common/man/man8/chef-client.8 index b0e8eac533..68a77c4ef6 100644 --- a/distro/common/man/man8/chef-client.8 +++ b/distro/common/man/man8/chef-client.8 @@ -1,104 +1,270 @@ -.\" generated with Ronn/v0.7.3 -.\" http://github.com/rtomayko/ronn/tree/0.7.3 +.TH "CHEF-CLIENT" "8" "Chef 11.8.0" "" "chef-client" +.SH NAME +chef-client \- The man page for the chef-client command line tool. . -.TH "CHEF\-CLIENT" "8" "July 2013" "Chef 11.8.0.alpha.0" "Chef Manual" +.nr rst2man-indent-level 0 . -.SH "NAME" -\fBchef\-client\fR \- Runs a client node connecting to a chef\-server\. -. -.SH "SYNOPSIS" -\fBchef\-client\fR \fI(options)\fR +.de1 rstReportMargin +\\$1 \\n[an-margin] +level \\n[rst2man-indent-level] +level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] +- +\\n[rst2man-indent0] +\\n[rst2man-indent1] +\\n[rst2man-indent2] +.. +.de1 INDENT +.\" .rstReportMargin pre: +. RS \\$1 +. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] +. nr rst2man-indent-level +1 +.\" .rstReportMargin post: +.. +.de UNINDENT +. RE +.\" indent \\n[an-margin] +.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] +.nr rst2man-indent-level -1 +.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] +.in \\n[rst2man-indent\\n[rst2man-indent-level]]u +.. +.\" Man page generated from reStructuredText. . +.sp +A chef\-client is an agent that runs locally on every node that is registered with the server. When a chef\-client is run, it will perform all of the steps that are required to bring the node into the expected state, including: +.INDENT 0.0 +.IP \(bu 2 +Registering and authenticating the node with the server +.IP \(bu 2 +Building the node object +.IP \(bu 2 +Synchronizing cookbooks +.IP \(bu 2 +Compiling the resource collection by loading each of the required cookbooks, including recipes, attributes, and all other dependencies +.IP \(bu 2 +Taking the appropriate and required actions to configure the node +.IP \(bu 2 +Looking for exceptions and notifications, handling each as required +.UNINDENT +.sp +The chef\-client executable can be run as a command\-line tool. +.IP Note +A client.rb file is used to specify the configuration details for the chef\-client. This file is the default configuration file and is loaded every time the chef\-client executable is run. The chef\-client executable can be run as a daemon. On UNIX\- and Linux\-based machines, the configuration file is located at: /etc/chef/client.rb. On Microsoft Windows machines, the configuration file is located at C:chefclient.rb. +.RE +.SH OPTIONS +.sp +This command has the following syntax: +.sp +.nf +.ft C +chef\-client OPTION VALUE OPTION VALUE ... +.ft P +.fi +.sp +This command has the following options: +.INDENT 0.0 .TP -\fB\-S\fR, \fB\-\-server CHEFSERVERURL\fR -The chef server URL -. +.B \fB\-A\fP, \fB\-\-fatal\-windows\-admin\-check\fP +Indicates that a chef\-client run should fail if the chef\-client does not have administrator privileges in Microsoft Windows. .TP -\fB\-c\fR, \fB\-\-config CONFIG\fR -The configuration file to use -. +.B \fB\-c CONFIG\fP, \fB\-\-config CONFIG\fP +The configuration file to use. .TP -\fB\-d\fR, \fB\-\-daemonize\fR -Daemonize the process -. +.B \fB\-d\fP, \fB\-\-daemonize\fP +Indicates that the executable will be run as a daemon. This option is only available on machines that run in UNIX or Linux environments. For machines that are running Microsoft Windows that require similar functionality, use the \fBchef\-client::service\fP recipe in the \fBchef\-client\fP cookbook: \fI\%http://community.opscode.com/cookbooks/chef-client\fP. This will install a chef\-client service under Microsoft Windows using the Windows Service Wrapper. .TP -\fB\-g\fR, \fB\-\-group GROUP\fR -Group to set privilege to -. +.B \fB\-E ENVIRONMENT_NAME\fP, \fB\-\-environment ENVIRONMENT_NAME\fP +The name of the environment. .TP -\fB\-i\fR, \fB\-\-interval SECONDS\fR -Run chef\-client periodically, in seconds -. +.B \fB\-\-[no\-]fork\fP +Indicates that a chef\-client run will be contained in a secondary process with dedicated RAM. When the chef\-client run is complete the RAM will be returned to the master process. This option helps ensure that a chef\-client will use a steady amount of RAM over time because the master process will not run recipes. This option will also help prevent memory leaks (such as those that can be introduced by the code contained within a poorly designed cookbook). Use \fB\-\-no\-fork\fP to disable running the chef\-client in fork node. Default value: \fB\-\-fork\fP. .TP -\fB\-j\fR, \fB\-\-json\-attributes JSON_ATTRIBS\fR -Load attributes from a JSON file or URL -. +.B \fB\-F FORMAT\fP, \fB\-\-format FORMAT\fP +The output format: \fBsummary\fP (default), \fBtext\fP, \fBjson\fP, \fByaml\fP, and \fBpp\fP. .TP -\fB\-E\fR, \fB\-\-environment ENVIRONMENT\fR -Set the Chef Environment on the node -. +.B \fB\-\-force\-formatter\fP +Indicates that formatter output will be used instead of logger output. .TP -\fB\-l\fR, \fB\-\-log_level LEVEL\fR -Set the log level (debug, info, warn, error, fatal) -. +.B \fB\-\-force\-logger\fP +Indicates that logger output will be used instead of formatter output. .TP -\fB\-L\fR, \fB\-\-logfile LOGLOCATION\fR -Set the log file location, defaults to STDOUT \- recommended for daemonizing -. +.B \fB\-g GROUP\fP, \fB\-\-group GROUP\fP +The name of the group that owns a process. This is required when starting any executable as a daemon. .TP -\fB\-N\fR, \fB\-\-node\-name NODE_NAME\fR -The node name for this client -. +.B \fB\-h\fP, \fB\-\-help\fP +Shows help for the command. .TP -\fB\-o\fR, \fB\-\-override\-runlist\fR -Replace current run list with specified items -. +.B \fB\-i SECONDS\fP, \fB\-\-interval SECONDS\fP +The frequency (in seconds) at which the chef\-client runs. This value is configured for the chef\-client application run time, rather than in \fBChef::Config\fP. Default value: \fB1800\fP. .TP -\fB\-K\fR, \fB\-\-validation_key KEY_FILE\fR -Set the validation key file location, used for registering new clients -. +.B \fB\-j PATH\fP, \fB\-\-json\-attributes PATH\fP +The path to a file that contains JSON data. Use this option to override attributes that are set from other locations, such as from within a cookbook or by a role. .TP -\fB\-k\fR, \fB\-\-client_key KEY_FILE\fR -Set the client key file location -. +.B \fB\-k KEY_FILE\fP, \fB\-\-client_key KEY_FILE\fP +The location of the file which contains the client key. Default value: \fB/etc/chef/client.pem\fP. .TP -\fB\-s\fR, \fB\-\-splay SECONDS\fR -The splay time for running at intervals, in seconds -. +.B \fB\-K KEY_FILE\fP, \fB\-\-validation_key KEY_FILE\fP +The location of the file which contains the key used when a chef\-client is registered with a server. A validation key is signed using the \fBvalidation_client_name\fP for authentication. Default value: \fB/etc/chef/validation.pem\fP. .TP -\fB\-u\fR, \fB\-\-user USER\fR -User to set privilege to -. +.B \fB\-l LEVEL\fP, \fB\-\-log_level LEVEL\fP +The level of logging that will be stored in a log file: \fBdebug\fP, \fBinfo\fP, \fBwarn\fP, \fBerror\fP, or \fBfatal\fP. .TP -\fB\-P\fR, \fB\-\-pid PIDFILE\fR -Set the PID file location, defaults to /tmp/chef\-client\.pid -. +.B \fB\-L LOGLOCATION\fP, \fB\-\-logfile c\fP +The location in which log file output files will be saved. If this location is set to something other than \fBSTDOUT\fP, standard output logging will still be performed (otherwise there would be no output other than to a file). This is recommended when starting any executable as a daemon. Default value: \fBSTDOUT\fP. .TP -\fB\-\-once\fR -Cancel any interval or splay options, run chef once and exit -. +.B \fB\-\-[no\-]color\fP +Indicates that color will not be used in the output. Default setting: \fB\-\-color\fP. .TP -\fB\-v\fR, \fB\-\-version\fR -Show chef version -. +.B \fB\-N NODE_NAME\fP, \fB\-\-node\-name NODE_NAME\fP +The name of the node. .TP -\fB\-h\fR, \fB\-\-help\fR -Show this message -. -.SH "DESCRIPTION" -The Chef Client is where almost all of the work in Chef is done\. It communicates with the Chef Server via REST, authenticates via Signed Header Authentication, and compiles and executes Cookbooks\. -. -.P -A Chef Client does work on behalf of a Node\. A single Chef Client can run recipes for multiple Nodes\. -. -.P -Clients are where all the action happens \- the Chef Server and Chef Expander are largely services that exist only to provide the Client with information\. -. -.SH "SEE ALSO" -Full documentation for Chef and chef\-client is located on the Chef wiki, http://wiki\.opscode\.com/display/chef/Home\. -. -.SH "AUTHOR" -Chef was written by Adam Jacob \fIadam@ospcode\.com\fR of Opscode (http://www\.opscode\.com), with contributions from the community\. This manual page was written by Joshua Timberman \fIjoshua@opscode\.com\fR with help2man\. Permission is granted to copy, distribute and / or modify this document under the terms of the Apache 2\.0 License\. +.B \fB\-o RUN_LIST_ITEM\fP, \fB\-\-override\-runlist RUN_LIST_ITEM\fP +Replace the current run list with the specified items. +.TP +.B \fB\-\-once\fP +Indicates that the chef\-client is run once and that interval and splay options are cancelled. +.TP +.B \fB\-P PID_FILE\fP, \fB\-\-pid PID_FILE\fP +The location in which a process identification number (pid) is saved. An executable, when started as a daemon, will write the pid to the specified file. Default value: \fB/tmp/name\-of\-executable.pid\fP. +.TP +.B \fB\-R\fP, \fB\-\-enable\-reporting\fP +Indicates that data collection reporting is enabled during a chef\-client run. +.TP +.B \fB\-s SECONDS\fP, \fB\-\-splay SECONDS\fP +A number (in seconds) to add to the \fBinterval\fP that is used to determine the frequency of chef\-client runs. This number can help prevent server load when there are many clients running at the same time. +.TP +.B \fB\-S CHEF_SERVER_URL\fP, \fB\-\-server CHEF_SERVER_URL\fP +The URL for the server. +.TP +.B \fB\-u USER\fP, \fB\-\-user USER\fP +The user that owns a process. This is required when starting any executable as a daemon. +.TP +.B \fB\-v\fP, \fB\-\-version\fP +The version of the chef\-client. +.TP +.B \fB\-W\fP, \fB\-\-why\-run\fP +Indicates that the executable will be run in why\-run mode, which is a type of chef\-client run that does everything except modify the system. Use why\-run mode to understand why the chef\-client makes the decisions that it makes and to learn more about the current and proposed state of the system. +.UNINDENT +.SH RUN WITH ELEVATED PRIVILEGES +.sp +The chef\-client may need to be run with elevated privileges in order to get a recipe to converge correctly. On UNIX and UNIX\-like operating systems this can be done by running the command as root. On Microsoft Windows this can be done by running the command prompt as an administrator. +.SS Linux +.sp +On Linux, the following error sometimes occurs when the permissions used to run the chef\-client are incorrect: +.sp +.nf +.ft C +$ chef\-client +[Tue, 29 Nov 2011 19:46:17 \-0800] INFO: *** Chef 10.X.X *** +[Tue, 29 Nov 2011 19:46:18 \-0800] WARN: Failed to read the private key /etc/chef/client.pem: #<Errno::EACCES: Permission denied \- /etc/chef/client.pem> +.ft P +.fi +.sp +This can be resolved by running the command as root. There are a few ways this can be done: +.INDENT 0.0 +.IP \(bu 2 +Log in as root and then run the chef\-client +.IP \(bu 2 +Use \fBsu\fP to become the root user, and then run the chef\-client. For example: +.INDENT 2.0 +.INDENT 3.5 +.sp +.nf +.ft C +$ su +.ft P +.fi +.UNINDENT +.UNINDENT +.UNINDENT +.sp +and then: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +$ chef\-client +.ft P +.fi +.UNINDENT +.UNINDENT +.INDENT 0.0 +.IP \(bu 2 +Use the sudo utility +.INDENT 2.0 +.INDENT 3.5 +.sp +.nf +.ft C +$ sudo chef\-client +.ft P +.fi +.UNINDENT +.UNINDENT +.IP \(bu 2 +Give a user access to read \fB/etc/chef\fP and also the files accessed by the chef\-client. This requires super user privileges and, as such, is not a recommended approach +.UNINDENT +.SS Windows +.sp +On Microsoft Windows, running without elevated privileges (when they are necessary) is an issue that fails silently. It will appear that the chef\-client completed its run successfully, but the changes will not have been made. When this occurs, do one of the following to run the chef\-client as the administrator: +.INDENT 0.0 +.IP \(bu 2 +Log in to the administrator account. (This is not the same as an account in the administrator\(aqs security group.) +.IP \(bu 2 +Run the chef\-client process from the administrator account while being logged into another account. Run the following command: +.INDENT 2.0 +.INDENT 3.5 +.sp +.nf +.ft C +$ runas /user:Administrator "cmd /C chef\-client" +.ft P +.fi +.sp +This will prompt for the administrator account password. +.UNINDENT +.UNINDENT +.IP \(bu 2 +Open a command prompt by right\-clicking on the command prompt application, and then selecting \fBRun as administrator\fP. After the command window opens, the chef\-client can be run as the administrator +.UNINDENT +.SH EXAMPLES +.sp +\fBStart a Chef run when the chef\-client is running as a daemon\fP +.sp +A chef\-client that is running as a daemon can be woken up and started by sending the process a \fBSIGUSR1\fP. For example, to trigger a chef\-client run on a machine running Linux: +.sp +.nf +.ft C +$ sudo killall \-USR1 chef\-client +.ft P +.fi +.sp +\fBStart a Chef run manually\fP +.sp +.nf +.ft C +$ ps auxw|grep chef\-client +.ft P +.fi +.sp +to return something like: +.sp +.nf +.ft C +root 66066 0.9 0.0 2488880 264 s001 S+ 10:26AM 0:03.05 +/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby /usr/bin/chef\-client \-i 3600 \-s 20 +.ft P +.fi +.sp +and then enter: +.sp +.nf +.ft C +$ sudo kill \-USR1 66066 +.ft P +.fi +.SH AUTHOR +Opscode +.\" Generated by docutils manpage writer. . -.P -On Debian systems, the complete text of the Apache 2\.0 License can be found in /usr/share/common\-licenses/Apache\-2\.0\. diff --git a/distro/common/man/man8/chef-solo.8 b/distro/common/man/man8/chef-solo.8 index 30c5956825..b3ee9a0a5d 100644 --- a/distro/common/man/man8/chef-solo.8 +++ b/distro/common/man/man8/chef-solo.8 @@ -1,126 +1,158 @@ -.\" generated with Ronn/v0.7.3 -.\" http://github.com/rtomayko/ronn/tree/0.7.3 -. -.TH "CHEF\-SOLO" "8" "July 2013" "Chef 11.8.0.alpha.0" "Chef Manual" -. -.SH "NAME" -\fBchef\-solo\fR \- Runs chef in solo mode against a specified cookbook location\. -. -.SH "SYNOPSIS" -\fBchef\-solo\fR \fI(options)\fR -. +.TH "CHEF-SOLO" "8" "Chef 11.8.0" "" "chef-solo" +.SH NAME +chef-solo \- The man page for the chef-solo command line tool. +. +.nr rst2man-indent-level 0 +. +.de1 rstReportMargin +\\$1 \\n[an-margin] +level \\n[rst2man-indent-level] +level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] +- +\\n[rst2man-indent0] +\\n[rst2man-indent1] +\\n[rst2man-indent2] +.. +.de1 INDENT +.\" .rstReportMargin pre: +. RS \\$1 +. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] +. nr rst2man-indent-level +1 +.\" .rstReportMargin post: +.. +.de UNINDENT +. RE +.\" indent \\n[an-margin] +.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] +.nr rst2man-indent-level -1 +.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] +.in \\n[rst2man-indent\\n[rst2man-indent-level]]u +.. +.\" Man page generated from reStructuredText. +. +.sp +chef\-solo is an open source version of the chef\-client that allows using cookbooks with nodes without requiring access to a server. chef\-solo runs locally and requires that a cookbook (and any of its dependencies) be on the same physical disk as the node. chef\-solo is a limited\-functionality version of the chef\-client and \fBdoes not support\fP the following: +.INDENT 0.0 +.IP \(bu 2 +Node data storage +.IP \(bu 2 +Search indexes +.IP \(bu 2 +Centralized distribution of cookbooks +.IP \(bu 2 +A centralized API that interacts with and integrates infrastructure components +.IP \(bu 2 +Authentication or authorization +.IP \(bu 2 +Persistent attributes +.UNINDENT +.sp +The chef\-solo executable can be run as a command\-line tool. +.SH OPTIONS +.sp +This command has the following syntax: +.sp +.nf +.ft C +chef\-solo OPTION VALUE OPTION VALUE ... +.ft P +.fi +.sp +This command has the following options: +.INDENT 0.0 .TP -\fB\-c\fR, \fB\-\-config CONFIG\fR -The configuration file to use -. +.B \fB\-c CONFIG\fP, \fB\-\-config CONFIG\fP +The configuration file to use. .TP -\fB\-d\fR, \fB\-\-daemonize\fR -Daemonize the process -. +.B \fB\-d\fP, \fB\-\-daemonize\fP +Indicates that the executable will be run as a daemon. This option is only available on machines that run in UNIX or Linux environments. For machines that are running Microsoft Windows that require similar functionality, use the \fBchef\-client::service\fP recipe in the \fBchef\-client\fP cookbook: \fI\%http://community.opscode.com/cookbooks/chef-client\fP. This will install a chef\-client service under Microsoft Windows using the Windows Service Wrapper. .TP -\fB\-g\fR, \fB\-\-group GROUP\fR -Group to set privilege to -. +.B \fB\-f\fP, \fB\-\-fork\fP +Indicates that a chef\-client run will be contained in a secondary process with dedicated RAM. When the chef\-client run is complete the RAM will be returned to the master process. This option helps ensure that a chef\-client will use a steady amount of RAM over time because the master process will not run recipes. This option will also help prevent memory leaks (such as those that can be introduced by the code contained within a poorly designed cookbook). .TP -\fB\-i\fR, \fB\-\-interval SECONDS\fR -Run chef\-client periodically, in seconds -. +.B \fB\-F FORMATTER\fP, \fB\-\-format FORMATTER\fP +The output format. .TP -\fB\-j\fR, \fB\-\-json\-attributes JSON_ATTRIBS\fR -Load attributes from a JSON file or URL -. +.B \fB\-\-force\-formatter\fP +Indicates that formatter output will be used instead of logger output. .TP -\fB\-l\fR, \fB\-\-log_level LEVEL\fR -Set the log level (debug, info, warn, error, fatal) -. +.B \fB\-\-force\-logger\fP +Indicates that logger output will be used instead of formatter output. .TP -\fB\-L\fR, \fB\-\-logfile LOGLOCATION\fR -Set the log file location, defaults to STDOUT \- recommended for daemonizing -. +.B \fB\-g GROUP\fP, \fB\-\-group GROUP\fP +The name of the group that owns a process. This is required when starting any executable as a daemon. .TP -\fB\-N\fR, \fB\-\-node\-name NODE_NAME\fR -The node name for this client -. +.B \fB\-h\fP, \fB\-\-help\fP +Shows help for the command. .TP -\fB\-r\fR, \fB\-\-recipe\-url RECIPE_URL\fR -Pull down a remote gzipped tarball of recipes and untar it to the cookbook cache\. -. +.B \fB\-i SECONDS\fP, \fB\-\-interval SECONDS\fP +The frequency (in seconds) at which the chef\-client runs. This value is configured for the chef\-client application run time, rather than in \fBChef::Config\fP. .TP -\fB\-s\fR, \fB\-\-splay SECONDS\fR -The splay time for running at intervals, in seconds -. +.B \fB\-j PATH\fP, \fB\-\-json\-attributes PATH\fP +The path to a file that contains JSON data. Use this option to override attributes that are set from other locations, such as from within a cookbook or by a role. .TP -\fB\-u\fR, \fB\-\-user USER\fR -User to set privilege to -. +.B \fB\-l LEVEL\fP, \fB\-\-log_level LEVEL\fP +The level of logging that will be stored in a log file: \fBdebug\fP, \fBinfo\fP, \fBwarn\fP, \fBerror\fP, or \fBfatal\fP. .TP -\fB\-v\fR, \fB\-\-version\fR -Show chef version -. +.B \fB\-L LOGLOCATION\fP, \fB\-\-logfile c\fP +The location in which log file output files will be saved. If this location is set to something other than \fBSTDOUT\fP, standard output logging will still be performed (otherwise there would be no output other than to a file). This is recommended when starting any executable as a daemon. .TP -\fB\-h\fR, \fB\-\-help\fR -Show this message -. -.SH "DESCRIPTION" -Chef Solo allows you to run Chef Cookbooks in the absence of a Chef Server\. To do this, the complete cookbook needs to be present on disk\. -. -.P -By default Chef Solo will look in /etc/chef/solo\.rb for its configuration\. This configuration file has two required variables: file_cache_path and cookbook_path\. -. -.P -For example: file_cache_path "/var/chef\-solo" cookbook_path "/var/chef\-solo/cookbooks" -. -.P -For your own systems, you can change this to reflect any directory you like, but you\'ll need to specify absolute paths and the cookbook_path directory should be a subdirectory of the file_cache_path\. -. -.P -You can also specify cookbook_path as an array, passing multiple locations to search for cookbooks\. -. -.P -For example: file_cache_path "/var/chef\-solo" cookbook_path ["/var/chef\-solo/cookbooks", "/var/chef\-solo/site\-cookbooks"] -. -.P -Note that earlier entries are now overridden by later ones\. -. -.P -Since chef\-solo doesn\'t have any interaction with a Chef Server, you\'ll need to specify node\-specifc attributes in a JSON file\. This can be located on the target system itself, or it can be stored on a remote server such as S3, or a web server on your network\. -. -.P -Within the JSON file, you\'ll also specify the recipes that Chef should run in the "run_list"\. An example JSON file, which sets a resolv\.conf: -. -.IP "" 4 -. +.B \fB\-\-[no\-]color\fP +Use \fB\-\-no\-color\fP to disable colored output. Default setting: \fB\-\-color\fP. +.TP +.B \fB\-N NODE_NAME\fP, \fB\-\-node\-name NODE_NAME\fP +The name of the node. +.TP +.B \fB\-o RUN_LIST_ITEM\fP, \fB\-\-override\-runlist RUN_LIST_ITEM\fP +Replace the current run list with the specified items. +.TP +.B \fB\-r RECIPE_URL\fP, \fB\-\-recipe\-url RECIPE_URL\fP +The URL location from which a remote cookbook tar.gz will be downloaded. +.TP +.B \fB\-s SECONDS\fP, \fB\-\-splay SECONDS\fP +A number (in seconds) to add to the \fBinterval\fP that is used to determine the frequency of chef\-client runs. This number can help prevent server load when there are many clients running at the same time. +.TP +.B \fB\-u USER\fP, \fB\-\-user USER\fP +The user that owns a process. This is required when starting any executable as a daemon. +.TP +.B \fB\-v\fP, \fB\-\-version\fP +The version of the chef\-client. +.TP +.B \fB\-W\fP, \fB\-\-why\-run\fP +Indicates that the executable will be run in whyrun mode, which is a chef\-client run that does everything except modify the system. Use whyrun mode to understand why the chef\-client makes the decisions that it makes and to learn more about the current and proposed state of the system. +.UNINDENT +.SH EXAMPLES +.sp +\fBUse a URL\fP +.sp .nf - -{ - "resolver": { - "nameservers": [ "10\.0\.0\.1" ], - "search":"int\.example\.com" - }, - "run_list": [ "recipe[resolver]" ] -} -. +.ft C +$ chef\-solo \-c ~/solo.rb \-j ~/node.json \-r http://www.example.com/chef\-solo.tar.gz +.ft P .fi +.sp +where \fB\-r\fP uses the \fBremote_file\fP resource to retrieve the tar.gz archive into the \fBfile_cache_path\fP, and then extract it to \fBcookbooks_path\fP. +.sp +\fBUse a directory\fP +.sp +.nf +.ft C +$ chef\-solo \-c ~/solo.rb \-j ~/node.json +.ft P +.fi +.sp +where the \fB\-r URL\fP option is not used. chef\-solo will look in the solo.rb file to determine the directory in which cookbooks are located. +.sp +\fBUse a URL for cookbook and JSON data\fP +.sp +.nf +.ft C +$ chef\-solo \-c ~/solo.rb \-j http://www.example.com/node.json \-r http://www.example.com/chef\-solo.tar.gz +.ft P +.fi +.sp +where \fB\-r\fP corresponds to \fBrecipe_url\fP and \fB\-j\fP corresponds to \fBjson_attribs\fP, both of which are configuration options in solo.rb. +.SH AUTHOR +Opscode +.\" Generated by docutils manpage writer. . -.IP "" 0 -. -.P -Then you can run chef\-solo with \-j to specify the JSON file\. It will look for cookbooks in the cookbook_path configured in the configuration file, and apply attributes and use the run_list from the JSON file specified\. -. -.P -You can use \-c to specify the path to the configuration file (if you don\'t want chef\-solo to use the default)\. You can also specify \-r for a cookbook tarball\. -. -.P -For example: chef\-solo \-c ~/solo\.rb \-j ~/node\.json \-r http://www\.example\.com/chef\-solo\.tar\.gz -. -.P -In the above case, chef\-solo would extract the tarball to your specified cookbook_path, use ~/solo\.rb as the configuration file, and apply attributes and use the run_list from ~/node\.json\. -. -.SH "SEE ALSO" -Full documentation for Chef and chef\-solo is located on the Chef wiki, http://wiki\.opscode\.com/display/chef/Home\. -. -.SH "AUTHOR" -Chef was written by Adam Jacob \fIadam@ospcode\.com\fR of Opscode (http://www\.opscode\.com), with contributions from the community\. This manual page was written by Joshua Timberman \fIjoshua@opscode\.com\fR with help2man\. Permission is granted to copy, distribute and / or modify this document under the terms of the Apache 2\.0 License\. -. -.P -On Debian systems, the complete text of the Apache 2\.0 License can be found in /usr/share/common\-licenses/Apache\-2\.0\. |