About Chef Workstation
Start your infrastructure automation with Chef Workstation. Chef Workstation gives you everything you need to get started with Chef - ad hoc remote execution, remote scanning, configuration tasks, cookbook creation tools as well as robust dependency and testing software - all in one easy-to-install package.
Chef Workstation includes:
- Chef Infra Client
- Chef InSpec
- Chef Habitat
- chef and knife command line tools
- Testing tools such as Test Kitchen and Cookstyle
- Everything else needed to author cookbooks and upload them to the Chef Infra Server
Chef Workstation replaces ChefDK, combining all the existing features with new features, such as ad-hoc task support and the new Chef Workstation desktop application.
Getting Started
Chef Infra is a systems and cloud infrastructure automation framework that makes it easy to deploy servers and applications to any physical, virtual, or cloud location, no matter the size of the infrastructure. Each organization is comprised of one (or more) Chef Workstation installations, a single server, and every node that will be configured and maintained by Chef Infra Client. Cookbooks (and recipes) are used to tell Chef Infra Client how each node in your organization should be configured. Chef Infra Client—which is installed on every node—does the actual configuration.
Cookbook Development Workflow
Chef Infra defines a common workflow for cookbook development:
- Create a skeleton cookbook by running
chef generate cookbook MY_COOKBOOK_NAME
. This generates a cookbook with a single recipe and testing configuration for Test Kitchen with Chef InSpec. - Write cookbook recipes or resources and lint and debug them with Cookstyle and Test Kitchen. Making your own cookbooks is an iterative process where you develop, test, find and fix bugs, and then develop and test some more. A text editor—Visual Studio Code, Atom, vim, or any other preferred text editor—is the only tool that you need to author your cookbooks.
- Test in acceptance. Test your work in an environment that matches your production environment.
- Deploy your cookbooks to the production environment, but only after they pass all the acceptance tests and are verified to work in the desired manner.
Tools
Chef Workstation packages all the tools necessary to be successful with Chef Infra and InSpec. These tools are combined into packages for common operating systems and include all the dependencies you need to get started.
The most important tools included in Chef Workstation are:
Tool | Description |
---|---|
Chef CLI | A workflow tool for Chef Infra. |
knife | A tool for managing systems on the Chef Infra Server. |
Chef Infra Client | The Chef Infra agent. |
Chef InSpec | A compliance as code tool that can also be used for testing Chef Infra cookbooks. |
Cookstyle | A linting tool that helps you write better Chef Infra cookbooks by detecting and automatically correcting style, syntax, and logic mistakes in your code. |
Test Kitchen | An integration testing framework tool that tests cookbooks across platforms and various cloud provider / hypervisors. |