Provided by: chef_13.8.7-4_all bug

NAME

       chef-shell - The man page for the chef-shell command line tool.

       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.

       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.

       The chef-shell executable is run as a command-line tool.

MODES

       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:

                            ┌───────────┬──────────────────────────────────┐
                            │Mode       │ Description                      │
                            ├───────────┼──────────────────────────────────┤
                            │Standalone │ No cookbooks are loaded, and the │
                            │           │ run list is empty. This mode  is │
                            │           │ the default.                     │
                            ├───────────┼──────────────────────────────────┤
                            │Solo       │ 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 -s or │
                            │           │ --solo command line option,  and │
                            │           │ JSON attributes are specified in │
                            │           │ the same way as  for  chef-solo, │
                            │           │ with -j /path/to/chef-solo.json. │
                            ├───────────┼──────────────────────────────────┤
                            │Client     │ chef-shell     acts     as     a │
                            │           │ chef-client. During startup,  it │
                            │           │ reads       the      chef-client │
                            │           │ configuration file and  contacts │
                            │           │ the    Chef    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 -z or --client options. │
                            │           │ You   can   also   specify   the │
                            │           │ configuration   file   with   -c │
                            │           │ CONFIG  and  the server URL with │
                            │           │ -S SERVER_URL.                   │
                            └───────────┴──────────────────────────────────┘

OPTIONS

       This command has the following syntax:

          chef-shell OPTION VALUE OPTION VALUE ...

       This command has the following options:

       -a, --standalone
              Use to run chef-shell in standalone mode.

       -c CONFIG, --config CONFIG
              The configuration file to use.

       -h, --help
              Shows help for the command.

       -j PATH, --json-attributes PATH
              The path to a file that contains JSON data.

              Use this option to define a run_list object. For example, a JSON file similar to:

                 "run_list": [
                   "recipe[base]",
                   "recipe[foo]",
                   "recipe[bar]",
                   "role[webserver]"
                 ],

              may be used by running chef-client -j path/to/file.json.

              In certain situations this option may be used to update normal attributes.

              WARNING:
                 Any other attribute type that is contained in this JSON file will be treated  as
                 a  normal attribute. For example, attempting to update override attributes using
                 the -j option:

                     {
                       "name": "dev-99",
                       "description": "Install some stuff",
                       "override_attributes": {
                         "apptastic": {
                           "enable_apptastic": "false",
                           "apptastic_tier_name": "dev-99.bomb.com"
                         }
                       }
                     }

                 will result in a node object similar to:

                     {
                       "name": "maybe-dev-99",
                       "normal": {
                       "name": "dev-99",
                         "description": "Install some stuff",
                         "override_attributes": {
                           "apptastic": {
                             "enable_apptastic": "false",
                             "apptastic_tier_name": "dev-99.bomb.com"
                           }
                         }
                       }
                     }

       -l LEVEL, --log-level LEVEL
              The level of logging that will be stored in a log file.

       -s, --solo
              Use to run chef-shell in chef-solo mode.

       -S CHEF_SERVER_URL, --server CHEF_SERVER_URL
              The URL for the Chef server.

       -v, --version
              The version of the chef-client.

       -z, --client
              Use to run chef-shell in chef-client mode.

AUTHOR

       Chef

                                            Chef 12.0                               CHEF-SHELL(1)