summaryrefslogtreecommitdiff
path: root/distro/common/markdown/man1/chef-shell.mkd
diff options
context:
space:
mode:
Diffstat (limited to 'distro/common/markdown/man1/chef-shell.mkd')
-rw-r--r--distro/common/markdown/man1/chef-shell.mkd195
1 files changed, 0 insertions, 195 deletions
diff --git a/distro/common/markdown/man1/chef-shell.mkd b/distro/common/markdown/man1/chef-shell.mkd
deleted file mode 100644
index 216dc73d41..0000000000
--- a/distro/common/markdown/man1/chef-shell.mkd
+++ /dev/null
@@ -1,195 +0,0 @@
-chef-shell(1) -- Interactive Chef Console
-=========================================
-
-## SYNOPSIS
-
-__chef-shell__ [_named configuration_] _(options)_
-
- * `-S`, `--server CHEF_SERVER_URL`:
- The chef server URL
- * `-z`, `--client`:
- chef-client mode
- * `-c`, `--config CONFIG`:
- The configuration file to use
- * `-j`, `--json-attributes JSON_ATTRIBS`:
- Load attributes from a JSON file or URL
- * `-l`, `--log-level LOG_LEVEL`:
- Set the logging level
- * `-s`, `--solo`:
- chef-solo session
- * `-a`, `--standalone`:
- standalone session
- * `-v`, `--version`:
- Show chef version
- * `-h`, `--help`:
- Show command options
-
-When no --config option is specified, chef-shell attempts to load a
-default configuration file:
-
-* If a _named configuration_ is given, chef-shell will load ~/.chef/_named
- configuration_/chef_shell.rb
-* If no _named configuration_ is given chef-shell will load
- ~/.chef/chef_shell.rb if it exists
-* 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.
-* The --config option takes precedence over implicit configuration
- paths.
-
-## DESCRIPTION
-
-`chef-shell` is an irb(1) (interactive ruby) session customized for Chef.
-`chef-shell` 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.
-
-## 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,
-`recipe` and `attributes` modes are available.
-
-## PRIMARY MODE
-The following commands are available in the primary
-session:
-
- * `help`:
- Prints a list of available commands
- * `version`:
- Prints the Chef version
- * `recipe`:
- Switches to `recipe` mode
- * `attributes`:
- Switches to `attributes` mode
- * `run_chef`:
- Initiates a chef run
- * `reset`:
- reinitializes chef-shell session
- * `echo :on|:off`:
- Turns irb's echo function on or off. Echo is _on_ by default.
- * `tracing :on|:off`:
- Turns irb's function tracing feature on or off. Tracing is extremely
- verbose and expected to be of interest primarily to developers.
- * `node`:
- Returns the _node_ object for the current host. See knife-node(1)
- for more information about nodes.
- * `ohai`:
- Prints the attributes of _node_
-
-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 _object type_._operation_, where
-_object type_ is in plural form. The following object types are
-available:
-
- * `nodes`
- * `roles`
- * `data_bags`
- * `clients`
- * `cookbooks`
-
-For each _object type_ the following operations are available:
-
- * _object type_.all(_&block_):
- Loads all items from the server. If the optional code _block_ is
- given, each item will be passed to the block and the results
- returned, similar to ruby's `Enumerable#map` method.
- * _object type_.show(_object name_):
- Aliased as _object type_.load
-
- Loads the singular item identified by _object name_.
- * _object type_.search(_query_, _&block_):
- Aliased as _object type_.find
-
- Runs a search against the server and returns the matching items. If
- the optional code _block_ is given each item will be passed to the
- block and the results returned.
-
- The _query_ 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.
- * _object type_.transform(:all|_query_, _&block_):
- Aliased as _object type_.bulk_edit
-
- Bulk edit objects by processing them with the (required) code _block_.
- You can edit all objects of the given type by passing the Symbol
- `:all` as the argument, or only a subset by passing a _query_ as the
- argument. The _query_ is evaluated in the same way as with
- __search__.
-
- The return value of the code _block_ is used to alter the behavior
- of `transform`. If the value returned from the block is `nil` or
- `false`, 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.
-
-## 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:
-
- * <http://docs.chef.io/resources.html>
- * <http://docs.chef.io/recipes.html>
-
-Once you have defined resources in the recipe, you can trigger a
-convergence run via `run_chef`
-
-## EXAMPLES
-
-* A "Hello World" interactive recipe
-
- 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"]
-
-* Search for _nodes_ by role, and print their IP addresses
-
- chef > nodes.find(:roles => 'monitoring-server') {|n| n[:ipaddress] }
- => ["10.254.199.5"]
-
-* Remove the role _obsolete_ from every node in the system
-
- 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]]
-
-
-## BUGS
-
-`chef-shell` often does not perfectly replicate the context in which
-chef-client(8) configures a host, which may lead to discrepancies in
-observed behavior.
-
-`chef-shell` has to duplicate much code from chef-client's internal
-libraries and may become out of sync with the behavior of those
-libraries.
-
-## SEE ALSO
-
- chef-client(8) knife(1)
- <http://docs.chef.io/ctl_chef_shell.html>
-
-## AUTHOR
-
- Chef was written by Adam Jacob <adam@opscode.com> with many
- contributions from the community. chef-shell was written by Daniel
- DeLeo.
-
-## DOCUMENTATION
-
- This manual page was written by Daniel DeLeo <dan@opscode.com>.
- Permission is granted to copy, distribute and / or modify this
- document under the terms of the Apache 2.0 License.
-
-## CHEF
-
- chef-shell is distributed with Chef. <http://docs.chef.io>