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 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

Indicates that chef-shell will be run 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.

-l LEVEL, --log-level LEVEL

The level of logging that will be stored in a log file.

-s, --solo

Indicates that chef-shell will be run in chef-solo mode.

-S CHEF_SERVER_URL, --server CHEF_SERVER_URL

The URL for the server.

-v, --version

The version of the chef-client.

-z, --client

Indicates that chef-shell will be run in chef-client mode.

AUTHOR

Chef