第六节 Chef Quick CheatSheet
1、Common Terminology
The following are some Chef terms that will be helpful to know before we start.
Node: A managed machine. When the Chef client runs, it executes the configuration for a node.
Client: An authorized user of the Chef API. In most cases, every machine you manage will be represented by: a) a client for logging into the API and b) a node configuration to apply. Administrators and the web interface are also clients.
Cookbook: A collection of attributes, recipes, custom resources, and definitions to configure a certain application or service. For instance you will find shared cookbooks available on the web for NTP, Apache https, MySQL, nginx, and other common services.
Recipe: A list of resources that should be applied to a node. Recipes are written in normal Ruby extended by the Chef resource domain-specific language. This gives you the power of anything you can do in Ruby (conditionals, using gems, etc.) while not having to be verbose in managing the resources that make up your configuration.
1-1 Knife
Knife is the tool you will use as a system administrator to interact with the server most often, especially taking cookbooks and other custom configurations and loading them into the server for distribution to clients. You can also bootstrap new servers with the Chef client components, start new instances on the major cloud providers (AWS, Rackspace, SliceHost, and Terremark), and search for nodes or other data. Running knife --help will give you a list of supported commands.
1-2 Chef Client
The Chef client runs on the servers you are managing. It gathers information about itself using Ohai, synchronizes the cookbooks it needs from the Chef server, compiles the collection of resources that make up the configuration, and then “converges” the resources it has compiled with the state of the current machine
1-3 Server/API
The Chef server sits at the center of the system.
The Chef server exposes a RESTful API, which is used by the other components in the system.
Your managed nodes, knife, and the web interface are all clients of the API. While you will probably not need to access the API directly, it is good to know that all of your data and more advanced automation are available using the API.
2、Chef Development Kit commands
$ chef ...
Usage:
chef -h/--help
chef -v/--version
chef command [arguments...] [options...]
Available Commands:
exec Runs the command in context of the embedded ruby
env Prints environment variables used by ChefDK
gem Runs the `gem` command in context of the embedded ruby
generate Generate a new app, cookbook, or component
shell-init Initialize your shell to use ChefDK as your primary ruby
install Install cookbooks from a Policyfile and generate a locked cookbook set
update Updates a Policyfile.lock.json with latest run_list and cookbooks
push Push a local policy lock to a policy group on the server
push-archive Push a policy archive to a policy group on the server
show-policy Show policyfile objects on your Chef Server
diff Generate an itemized diff of two Policyfile lock documents
provision Provision VMs and clusters via cookbook
export Export a policy lock as a Chef Zero code repo
clean-policy-revisions Delete unused policy revisions on the server
clean-policy-cookbooks Delete unused policyfile cookbooks on the server
delete-policy-group Delete a policy group on the server
delete-policy Delete all revisions of a policy on the server
undelete Undo a delete command
3、Chef Server commands
$ chef-system-ctl ...
chef-server-ctl: command (subcommand)
General Commands:
backup
Backup the Chef Server
cleanse
Delete *all* Chef Server data, and start from scratch.
cleanup
Perform post-upgrade removal of now-obsolete data, configuration files, logs, etc. Add the '--no-op' flag to see what *would* be removed.
gather-logs
Create a tarball of recent logs and system information for Chef Support
help
Print this help message.
install
Install addon package by name, with optional --path parameter indicating directory containing packages
reconfigure
Reconfigure the application.
reindex
Reindex all server data for a given organization
restore
Restore the Chef Server from backup
show-config
Show the configuration that would be generated by reconfigure.
test
Run the API test suite against localhost.
uninstall
Kill all processes and uninstall the process supervisor (data will be preserved).
upgrade
Upgrade your private chef installation.
Service Management Commands:
graceful-kill
Attempt a graceful stop, then SIGKILL the entire process group.
hup
Send the services a HUP.
int
Send the services an INT.
kill
Send the services a KILL.
once
Start the services if they are down. Do not restart them if they stop.
restart
Stop the services if they are running, then start them again.
service-list
List all the services (enabled services appear with a *.)
start
Start services if they are down, and restart them if they stop.
status
Show the status of all the services.
stop
Stop the services, and do not restart them.
tail
Watch the service logs of all enabled services.
term
Send the services a TERM.
usr1
Send the services a USR1.
usr2
Send the services a USR2.
Organization And User Management Commands:
org-create
Create an organization in the chef server.
org-delete
Delete an organization in the chef server.
org-list
List all organizations in the chef server.
org-show
Show an organization in the chef server.
org-user-add
Associate a user with an organization.
org-user-remove
Dissociate a user with an organization.
password
Set a user's password or System Recovery Password.
user-create
Create a user in the chef server.
user-delete
Delete a user in the chef server.
user-edit
Edit a user in the chef server.
user-list
List all users in the chef server.
user-show
Show a user in the chef server.
High Availability Commands:
backup-recover
Set this server to HA backup state, ignoring VRRP
ha-status
Show the status of high availability services.
master-recover
Set this server to HA master state, ignoring VRRP.
Open Source Upgrade Commands:
chef12-upgrade-data-transform
Transfrom data from an open source Chef 11 server for upload to an Chef 12 server.
chef12-upgrade-download
Download data from a open source Chef 11 server.
chef12-upgrade-upload
Upload transformed open source Chef 11 data to a Chef 12 server.
Secrets Management Commands:
oc-id-show-app
Show configuration for oc-id applications
remove-secret
Remove secret NAME of GROUP
require-credential-rotation
Disable the Chef Server and require credential rotation
rotate-all-credentials
Rotate all Chef Server service credentials
rotate-credentials
Rotate Chef Server credentials for a given service
rotate-shared-secrets
Rotate the Chef Server shared secrets and all service credentials
set-actions-password
Add or change the rabbitmq actions queue password
set-db-superuser-password
Add or change DB superuser password
set-secret
Set or change secret NAME of GROUP
show-secret
Show the value of the given secret in the secret store
show-service-credentials
Show the service credentials
Debug Tools Commands:
filtered-dump
Generate a filtered dump of indexable Chef Objects for all organizations. Top-level data is captured; only object name is captured from object json
Key Rotation Commands:
add-client-key
Create a new client key
add-user-key
Create a new user key
delete-client-key
Delete a key
delete-user-key
Delete a key
list-client-keys
List keys for a client
list-user-keys
List keys for a user
Server Admins Commands:
grant-server-admin-permissions
Grant a user the ability to create other users by added the user to the server-admins group.
list-server-admins
List users that have server-admins permissions.
remove-server-admin-permissions
Remove all special permission granted to a user from being a server-admin.
Database Commands:
psql
Launches an interactive psql session with the service database you name. Add '--write' for write access and '--options <OPTIONS>' to specify psql options.
4、Chef Client commands
$ chef-client ...
Usage: /opt/chefdk/bin/chef-client (options)
--audit-mode MODE Enable audit-mode with `enabled`. Disable audit-mode with `disabled`. Skip converge and only perform audits with `audit-only`
-S, --server CHEFSERVERURL The chef server URL
--chef-zero-host HOST Host to start chef-zero on
--chef-zero-port PORT Port (or port range) to start chef-zero on. Port ranges like 1000,1010 or 8889-9999 will try all given ports until one works.
-f, --[no-]fork Fork client
-k, --client_key KEY_FILE Set the client key file location
--[no-]color Use colored output, defaults to enabled
-c, --config CONFIG The configuration file to use
--config-option OPTION=VALUE Override a single configuration option
-d, --daemonize [WAIT] Daemonize the process. Accepts an optional integer which is the number of seconds to wait before the first daemonized run.
--delete-entire-chef-repo DANGEROUS: does what it says, only useful with --recipe-url
--disable-config Refuse to load a config file and use defaults. This is for development and not a stable API
-R, --enable-reporting Enable reporting data collection for chef runs
-E, --environment ENVIRONMENT Set the Chef Environment on the node
--[no-]fips Enable fips mode
--force-formatter Use formatter output instead of logger output
--force-logger Use logger output instead of formatter output
-F, --format FORMATTER output format to use
-g, --group GROUP Group to set privilege to
-i, --interval SECONDS Run chef-client periodically, in seconds
-j JSON_ATTRIBS, Load attributes from a JSON file or URL
--json-attributes
--[no-]listen Whether a local mode (-z) server binds to a port
-z, --local-mode Point chef-client at local repository
--lockfile LOCKFILE Set the lockfile location. Prevents multiple client processes from converging at the same time
-l, --log_level LEVEL Set the log level (auto, debug, info, warn, error, fatal)
-L, --logfile LOGLOCATION Set the log file location, defaults to STDOUT - recommended for daemonizing
--minimal-ohai Only run the bare minimum ohai plugins chef needs to function
-n NAMED_RUN_LIST, Use a policyfile's named run list instead of the default run list
--named-run-list
-N, --node-name NODE_NAME The node name for this client
--once Cancel any interval or splay options, run chef once and exit
-o RunlistItem,RunlistItem..., Replace current run list with specified items for a single run
--override-runlist
-P, --pid PIDFILE Set the PID file location, for the chef-client daemon process. Defaults to /tmp/chef-client.pid
--[no-]profile-ruby Dump complete Ruby call graph stack of entire Chef run (expert only)
--recipe-url=RECIPE_URL Pull down a remote archive of recipes and unpack it to the cookbook cache. Only used in local mode.
--run-lock-timeout SECONDS Set maximum duration to wait for another client run to finish, default is indefinitely.
-r RunlistItem,RunlistItem..., Permanently replace current run list with specified items
--runlist
--[no-]skip-cookbook-sync Use cached cookbooks without overwriting local differences from the server
-s, --splay SECONDS The splay time for running at intervals, in seconds
-u, --user USER User to set privilege to
-K, --validation_key KEY_FILE Set the validation key file location, used for registering new clients
-v, --version Show chef version
-W, --why-run Enable whyrun mode
-h, --help Show this message
5、Chef Solo commands
Usage: /opt/chefdk/bin/chef-solo (options)
-f, --[no-]fork Fork client
--[no-]color Use colored output, defaults to enabled
-c, --config CONFIG The configuration file to use
--config-option OPTION=VALUE Override a single configuration option
-d, --daemonize Daemonize the process
--delete-entire-chef-repo DANGEROUS: does what it says, only useful with --recipe-url
-E, --environment ENVIRONMENT Set the Chef Environment on the node
--ez A memorial for Ezra Zygmuntowicz
--force-formatter Use formatter output instead of logger output
--force-logger Use logger output instead of formatter output
-F, --format FORMATTER output format to use
-g, --group GROUP Group to set privilege to
-i, --interval SECONDS Run chef-client periodically, in seconds
-j JSON_ATTRIBS, Load attributes from a JSON file or URL
--json-attributes
--lockfile LOCKFILE Set the lockfile location. Prevents multiple processes from converging at the same time
-l, --log_level LEVEL Set the log level (debug, info, warn, error, fatal)
-L, --logfile LOGLOCATION Set the log file location, defaults to STDOUT
--minimal-ohai Only run the bare minimum ohai plugins chef needs to function
-N, --node-name NODE_NAME The node name for this client
-o RunlistItem,RunlistItem..., Replace current run list with specified items
--override-runlist
--[no-]profile-ruby Dump complete Ruby call graph stack of entire Chef run (expert only)
-r, --recipe-url RECIPE_URL Pull down a remote gzipped tarball of recipes and untar it to the cookbook cache.
--run-lock-timeout SECONDS Set maximum duration to wait for another client run to finish, default is indefinitely.
--legacy-mode Run chef-solo in legacy mode
-s, --splay SECONDS The splay time for running at intervals, in seconds
-u, --user USER User to set privilege to
-v, --version Show chef version
-W, --why-run Enable whyrun mode
-h, --help Show this message
6、Knife commands
$ knife ...
Usage: knife sub-command (options)
-s, --server-url URL Chef Server URL
--chef-zero-host HOST Host to start chef-zero on
--chef-zero-port PORT Port (or port range) to start chef-zero on. Port ranges like 1000,1010 or 8889-9999 will try all given ports until one works.
-k, --key KEY API Client Key
--[no-]color Use colored output, defaults to enabled
-c, --config CONFIG The configuration file to use
--config-option OPTION=VALUE Override a single configuration option
--defaults Accept default values for all questions
-d, --disable-editing Do not open EDITOR, just accept the data as is
-e, --editor EDITOR Set the editor to use for interactive commands
-E, --environment ENVIRONMENT Set the Chef environment (except for in searches, where this will be flagrantly ignored)
--[no-]fips Enable fips mode
-F, --format FORMAT Which format to use for output
--[no-]listen Whether a local mode (-z) server binds to a port
-z, --local-mode Point knife commands at local repository instead of server
-u, --user USER API Client Username
--print-after Show the data after a destructive operation
-V, --verbose More verbose output. Use twice for max verbosity
-v, --version Show chef version
-y, --yes Say yes to all prompts for confirmation
-h, --help Show this message
Available subcommands: (for details, knife SUB-COMMAND --help)
** OPSCODE PRIVATE CHEF ORGANIZATION MANAGEMENT COMMANDS **
knife opc org create ORG_SHORT_NAME ORG_FULL_NAME (options)
knife opc org delete ORG_NAME
knife opc org edit ORG
knife opc org list
knife opc org show ORGNAME
knife opc org user add ORG_NAME USER_NAME
knife opc org user remove ORG_NAME USER_NAME
knife opc user create USERNAME FIRST_NAME [MIDDLE_NAME] LAST_NAME EMAIL PASSWORD
knife opc user delete USERNAME [-d]
knife opc user edit USERNAME
knife opc user list
knife opc user password USERNAME [PASSWORD | --enable-external-auth]
knife opc user show USERNAME
** BOOTSTRAP COMMANDS **
knife bootstrap [SSH_USER@]FQDN (options)
knife bootstrap windows ssh FQDN (options)
knife bootstrap windows winrm FQDN (options)
** CLIENT COMMANDS **
knife client bulk delete REGEX (options)
knife client create CLIENTNAME (options)
knife client delete [CLIENT[,CLIENT]] (options)
knife client edit CLIENT (options)
knife client key create CLIENT (options)
knife client key delete CLIENT KEYNAME (options)
knife client key edit CLIENT KEYNAME (options)
knife client key list CLIENT (options)
knife client key show CLIENT KEYNAME (options)
knife client list (options)
knife client reregister CLIENT (options)
knife client show CLIENT (options)
** CONFIGURE COMMANDS **
knife configure (options)
knife configure client DIRECTORY
** COOKBOOK COMMANDS **
knife cookbook bulk delete REGEX (options)
Usage: /opt/chefdk/bin/knife (options)
knife cookbook delete COOKBOOK VERSION (options)
knife cookbook download COOKBOOK [VERSION] (options)
knife cookbook list (options)
knife cookbook metadata COOKBOOK (options)
knife cookbook metadata from FILE (options)
knife cookbook show COOKBOOK [VERSION] [PART] [FILENAME] (options)
knife cookbook test [COOKBOOKS...] (options)
knife cookbook upload [COOKBOOKS...] (options)
** COOKBOOK SITE COMMANDS **
knife cookbook site download COOKBOOK [VERSION] (options)
knife cookbook site install COOKBOOK [VERSION] (options)
knife cookbook site list (options)
knife cookbook site search QUERY (options)
knife cookbook site share COOKBOOK [CATEGORY] (options)
knife cookbook site show COOKBOOK [VERSION] (options)
knife cookbook site unshare COOKBOOK
** DATA BAG COMMANDS **
knife data bag create BAG [ITEM] (options)
knife data bag delete BAG [ITEM] (options)
knife data bag edit BAG ITEM (options)
knife data bag from file BAG FILE|FOLDER [FILE|FOLDER..] (options)
knife data bag list (options)
knife data bag show BAG [ITEM] (options)
** EC2 COMMANDS **
knife ec2 amis ubuntu DISTRO [TYPE] (options)
** ENVIRONMENT COMMANDS **
knife environment compare [ENVIRONMENT..] (options)
knife environment create ENVIRONMENT (options)
knife environment delete ENVIRONMENT (options)
knife environment edit ENVIRONMENT (options)
knife environment from file FILE [FILE..] (options)
knife environment list (options)
knife environment show ENVIRONMENT (options)
** EXEC COMMANDS **
knife exec [SCRIPT] (options)
** HELP COMMANDS **
knife help [list|TOPIC]
** INDEX COMMANDS **
knife index rebuild (options)
** JOB COMMANDS **
knife job list
knife job output <job id> <node> [<node> ...]
knife job start <command> [<node> <node> ...]
knife job status <job id>
** KNIFE COMMANDS **
Usage: /opt/chefdk/bin/knife (options)
** NODE COMMANDS **
knife node bulk delete REGEX (options)
knife node create NODE (options)
knife node delete [NODE[,NODE]] (options)
knife node edit NODE (options)
knife node environment set NODE ENVIRONMENT
knife node from file FILE (options)
knife node list (options)
knife node run_list add [NODE] [ENTRY[,ENTRY]] (options)
knife node run_list remove [NODE] [ENTRY[,ENTRY]] (options)
knife node run_list set NODE ENTRIES (options)
knife node show NODE (options)
knife node status [<node> <node> ...]
** NULL COMMANDS **
knife null
** OSC COMMANDS **
knife osc_user create USER (options)
knife osc_user delete USER (options)
knife osc_user edit USER (options)
knife osc_user list (options)
knife osc_user reregister USER (options)
knife osc_user show USER (options)
** PATH-BASED COMMANDS **
knife delete [PATTERN1 ... PATTERNn]
knife deps PATTERN1 [PATTERNn]
knife diff PATTERNS
knife download PATTERNS
knife edit [PATTERN1 ... PATTERNn]
knife list [-dfR1p] [PATTERN1 ... PATTERNn]
knife show [PATTERN1 ... PATTERNn]
knife upload PATTERNS
knife xargs [COMMAND]
** RAW COMMANDS **
knife raw REQUEST_PATH
** RECIPE COMMANDS **
knife recipe list [PATTERN]
** REHASH COMMANDS **
knife rehash
** ROLE COMMANDS **
knife role bulk delete REGEX (options)
knife role create ROLE (options)
knife role delete ROLE (options)
knife role edit ROLE (options)
knife role env_run_list add [ROLE] [ENVIRONMENT] [ENTRY[,ENTRY]] (options)
knife role env_run_list clear [ROLE] [ENVIRONMENT]
knife role env_run_list remove [ROLE] [ENVIRONMENT] [ENTRIES]
knife role env_run_list replace [ROLE] [ENVIRONMENT] [OLD_ENTRY] [NEW_ENTRY]
knife role env_run_list set [ROLE] [ENVIRONMENT] [ENTRIES]
knife role from file FILE [FILE..] (options)
knife role list (options)
knife role run_list add [ROLE] [ENTRY[,ENTRY]] (options)
knife role run_list clear [ROLE]
knife role run_list remove [ROLE] [ENTRY]
knife role run_list replace [ROLE] [OLD_ENTRY] [NEW_ENTRY]
knife role run_list set [ROLE] [ENTRIES]
knife role show ROLE (options)
** SEARCH COMMANDS **
knife search INDEX QUERY (options)
** SERVE COMMANDS **
knife serve (options)
** SPORK COMMANDS **
knife spork bump COOKBOOK [major|minor|patch|manual]
knife spork check COOKBOOK (options)
knife spork data bag create BAG [ITEM] (options)
knife spork data bag delete BAG [ITEM] (options)
knife spork data bag edit BAG ITEM (options)
knife spork data bag from file BAG FILE|FOLDER [FILE|FOLDER..] (options)
knife spork delete [COOKBOOKS...] (options)
knife spork environment check ENVIRONMENT (options)
knife spork environment create ENVIRONMENT (options)
knife spork environment delete ENVIRONMENT (options)
knife spork environment edit ENVIRONMENT (options)
knife spork environment from file FILENAME (options)
knife spork info
knife spork node create NODE (options)
knife spork node delete NODE (options)
knife spork node edit NODE (options)
knife spork node from file FILE (options)
knife spork node run_list add [NODE] [ENTRY[,ENTRY]] (options)
knife spork node run_list add [NODE] [ENTRY[,ENTRY]] (options)
knife spork node run_list set NODE ENTRIES (options)
knife spork omni COOKBOOK (options)
knife spork promote ENVIRONMENT COOKBOOK (options)
knife spork role create ROLE (options)
knife spork role delete ROLENAME (options)
knife spork role edit ROLENAME (options)
knife spork role from file FILENAME (options)
knife spork upload [COOKBOOKS...] (options)
** SSH COMMANDS **
knife ssh QUERY COMMAND (options)
** SSL COMMANDS **
knife ssl check [URL] (options)
knife ssl fetch [URL] (options)
** STATUS COMMANDS **
knife status QUERY (options)
** SUPERMARKET COMMANDS **
knife supermarket download COOKBOOK [VERSION] (options)
knife supermarket install COOKBOOK [VERSION] (options)
knife supermarket list (options)
knife supermarket search QUERY (options)
knife supermarket share COOKBOOK [CATEGORY] (options)
knife supermarket show COOKBOOK [VERSION] (options)
knife supermarket unshare COOKBOOK (options)
** TAG COMMANDS **
knife tag create NODE TAG ...
knife tag delete NODE TAG ...
knife tag list NODE
** USER COMMANDS **
knife user create USERNAME DISPLAY_NAME FIRST_NAME LAST_NAME EMAIL PASSWORD (options)
knife user delete USER (options)
knife user edit USER (options)
knife user key create USER (options)
knife user key delete USER KEYNAME (options)
knife user key edit USER KEYNAME (options)
knife user key list USER (options)
knife user key show USER KEYNAME (options)
knife user list (options)
knife user reregister USER (options)
knife user show USER (options)
** VAULT COMMANDS **
knife vault create VAULT ITEM VALUES (options)
knife vault delete VAULT ITEM (options)
knife vault download VAULT ITEM PATH (options)
knife vault edit VAULT ITEM (options)
knife vault isvault VAULT ITEM (options)
knife vault itemtype VAULT ITEM (options)
knife vault list (options)
knife vault refresh VAULT ITEM
knife vault remove VAULT ITEM VALUES (options)
knife vault rotate all keys
knife vault rotate keys VAULT ITEM (options)
knife vault show VAULT [ITEM] [VALUES] (options)
knife vault update VAULT ITEM VALUES (options)
** WINDOWS COMMANDS **
knife windows cert generate FILE_PATH (options)
knife windows cert install CERT [CERT] (options)
knife bootstrap windows winrm FQDN (options)
knife bootstrap windows ssh FQDN (options)
knife winrm QUERY COMMAND (options)
knife wsman test QUERY (options)
knife windows listener create (options)
** WINRM COMMANDS **
knife winrm QUERY COMMAND (options)
** WSMAN COMMANDS **
knife wsman test QUERY (options)
7、Kitchen Commands
$ kitchen ...
Commands:
kitchen console # Kitchen Console!
kitchen converge [INSTANCE|REGEXP|all] # Change instance state to converge. Use a provisioner to configure one or more instances
kitchen create [INSTANCE|REGEXP|all] # Change instance state to create. Start one or more instances
kitchen destroy [INSTANCE|REGEXP|all] # Change instance state to destroy. Delete all information for one or more instances
kitchen diagnose [INSTANCE|REGEXP|all] # Show computed diagnostic configuration
kitchen driver # Driver subcommands
kitchen driver create [NAME] # Create a new Kitchen Driver gem project
kitchen driver discover # Discover Test Kitchen drivers published on RubyGems
kitchen driver help [COMMAND] # Describe subcommands or one specific subcommand
kitchen exec INSTANCE|REGEXP -c REMOTE_COMMAND # Execute command on one or more instance
kitchen help [COMMAND] # Describe available commands or one specific command
kitchen init # Adds some configuration to your cookbook so Kitchen can rock
kitchen list [INSTANCE|REGEXP|all] # Lists one or more instances
kitchen login INSTANCE|REGEXP # Log in to one instance
kitchen package INSTANCE|REGEXP # package an instance
kitchen setup [INSTANCE|REGEXP|all] # Change instance state to setup. Prepare to run automated tests. Install busser and related gems on one or more instances
kitchen test [INSTANCE|REGEXP|all] # Test (destroy, create, converge, setup, verify and destroy) one or more instances
kitchen verify [INSTANCE|REGEXP|all] # Change instance state to verify. Run automated tests on one or more instances
kitchen version # Print Kitchen's version information
8、Inspec commands
$ inspec ...
Commands:
inspec archive PATH # archive a profile to tar.gz (default) or zip
inspec artifact SUBCOMMAND ... # Sign, verify and install artifacts
inspec check PATH # verify all tests at the specified PATH
inspec compliance SUBCOMMAND ... # Chef Compliance commands
inspec detect # detect the target OS
inspec env # Output shell-appropriate completion configuration
inspec exec PATHS # run all test files at the specified PATH.
inspec habitat SUBCOMMAND ... # Commands for InSpec + Habitat Integration
inspec help [COMMAND] # Describe available commands or one specific command
inspec init TEMPLATE ... # Scaffolds a new project
inspec json PATH # read all tests in PATH and generate a JSON summary
inspec shell # open an interactive debugging shell
inspec supermarket SUBCOMMAND ... # Supermarket commands
inspec vendor PATH # Download all dependencies and generate a lockfile in a `vendor` directory
inspec version # prints the version of this tool
Options:
l, [--log-level=LOG_LEVEL] # Set the log level: info (default), debug, warn, error
[--log-location=LOG_LOCATION] # Location to send diagnostic log messages to. (default: STDOUT or STDERR)
[--diagnose], [--no-diagnose] # Show diagnostics (versions, configurations)