Product Announcement: Chef Workstation Released as Generally Available!

Chef Workstation Released as Generally Available!

Chef Workstation, the toolkit for infrastructure automation and compliance, has reached General Availability (GA) with lots of great new features and changes. In addition to a new and easier to use Chef Infra Client 16, Chef Workstation now includes “Upgrade Lab” which helps simplify upgrading from older versions of Chef Infra to Chef Infra 16.

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 replaces ChefDK. Chef will continue to maintain ChefDK, but new development will take place in Chef Workstation without backporting features.

Chef Infra Client 16

Chef Infra Client has been updated to Chef 16. This release adds tons of new features and improvements, including these highlights:

  • Cookbook authors can now write simple recipes in YAML.
  • New resources for setting the client to run on an interval using native system schedulers.
  • New windows_security_policy and windows_user_privlidge resources.
  • Resource partials allow you to define reusable portions of code that can be included in multiple custom resources.
  • Built-in support for Chef Vault, so no need to depend on the chef-vault cookbook or gem.
  • Up to 33% smaller on disk! Faster performance on Windows!

See this blog post and the Chef Infra Client 16 Release Notes for details on all the great new features and improvements, as well as breaking changes.

Ruby 2.7

Chef Workstation’s ruby installation has been updated from Ruby 2.6 to Ruby 2.7, which includes many features available for use in resources and libraries.

See this blog post for details on many of the new features.

Cookstyle Updates

Cookstyle, the cookbook code problem detection and auto-correction tool, has been updated from 6.3.4 to 6.7.3. This new release includes an updated RuboCop engine which includes a large number of autocorrection improvements and bug fixes. It also enables a ChefModernize/FoodcriticComments Rule encouraging users to migrate off Foodcritic, as well as documenting the target Chef version for each rule.

Upgrade Lab

Chef Upgrade Lab is a new process guide for upgrading nodes from legacy Chef Infra Client 12-15 installations to current Chef Infra Client 16 using a powerful set of new tools.

Upgrade Lab Guide

The Upgrade Lab Guide teaches users how to leverage the new tools in Chef Workstation to upgrade their older Chef Infra installations to the latest version. Users will learn how to query their existing infrastructure to identity a single node to upgrade, capture the state of that node to a local development workstation, iterate locally on cookbook changes to support the latest version of Chef Infra Client, deploy the updated cookbook to a new Chef Infra Server instance, and finally upgrade the installed version of Chef Infra Client on the node.

The new report command

Use the new chef report command to analyze a Chef Infra Server and quickly get insight into which nodes and cookbooks are good places to start upgrading. The chef report nodes command lists all nodes on the server and describes which cookbooks are used by each node. The chef report cookbooks command lists cookbooks and the nodes that consume them, and can even analyse the cookbooks using cookstyle to look for potential upgrade issues in the recipes!

The new capture command

chef capture is a powerful interactive CLI experience that analyzes a single node on the Chef Infra Server, then helps you locate the cookbooks it consumes, downloads the node data, and even creates a local Test Kitchen configuration. This enables you to start upgrading your cookbooks while running Chef Infra Client in a local virtual machine for rapid development, isolated from the production environment.

VSCode Integration

As you iterate on your cookbooks, you can make your changes directly in Visual Studio Code assisted by the Chef Infra Extension. It provides code completion and integration with cookstyle, including auto-correction of recipe code issues. 

New Version Scheme

Starting with this release, Chef Workstation is switching to a date-based versioning scheme. For example, 20.5.111 would refer to the May 2020 release at build number 111. We decided to switch to a date-based version because Chef Workstation is a collection of tools meant to be used by humans and not machines.

Deprecation and End of Life

As a result of the GA release of Chef Workstation, Chef DK3 and Chef DK4 are put into either Deprecated and/or End of Life Status. We highly recommend that customers upgrade from these older solutions to Chef Workstation as all existing ChefDK features have also been updated. 

ChefDK 4 Deprecated, End of Life Announced

ChefDK 4 is officially deprecated. Deprecated products receive security updates but no feature additions or regular releases. See the Supported Versions page for more details on product lifecycles.

ChefDK 4 will enter End of Life (EOL) status on December 31st, 2020.

ChefDK 3 End Of Life

In accordance with the End of Life policy, ChefDK 3 has officially stopped receiving support. We will no longer add features or release security updates to ChefDK 3. We recommend existing customers upgrade to Chef Workstation.

The Chef Workstation team is available to answer your questions during ChefConf Online on Chef Community Slack.

Get the Build

If you are running the Chef Workstation toolbar application you can download this version from the menu after the application’s next update check. You can also download binaries directly from downloads.chef.io.

As always, we welcome your feedback and invite you to contact us directly or share your email. Thanks for using Chef Workstation!

Avatar
Clinton Wolfe

Clinton Wolfe is a software engineer at Chef, helping build the cloud functionality of InSpec. In a previous life, he was a DevOps consultant, which meant he voluntarily chose to go into heavily siloed, dysfunctional organizations and try to get them to talk to each other with as few stabbings as possible. He is especially interested in testable infrastructure, and the processes needed to support quality and compliance throughout the application lifecycle.