Chef Blogs

Changes to How Chef Products Handle Licenses

Mark Mzyk | Posted on | announcements

We want to make you aware of two changes that will affect Chef products going forward:

  1. All Chef products will be making their license file and the license files of all included software easier to find.
  2. For proprietary Chef products, you will be required to explicitly accept the Chef Master License and Services Agreement (Chef MLSA) on the first reconfigure of the software. The first products to include this change will be Chef Analytics, Chef Compliance, Chef Manage, and Chef Reporting. This change will require updates to any automation that runs the reconfigure command. See Accepting the License For Proprietary Products section for further detail.

Finding License Information

All Chef products will be adding a new file during install: /opt/<PRODUCT-NAME>/LICENSE. This will identify the license that governs the entire product and it will include pointers to license files for any third-party software that has been used in the product. This will make it easier to find and track all the licenses. The directory /opt/<PRODUCT-NAME>/LICENSES will contain individual copies of all the licenses referenced in the license file.

In addition, this information will be displayed on downloads.chef.io for each product.

Accepting the License For Proprietary Products

For Chef proprietary software, users must now explicitly accept the Chef MLSA. There are three possible ways to accept the license. Please read the documentation on the About Chef Licenses page for full details.  This information is also available on the install page for each of the affected products.

The initial products affected are Chef Analytics, Chef Compliance, Chef Manage, and Chef Reporting. Chef Delivery is not affected at this time, as it handles licenses in a different manner. As the change is added to each product, it will be noted in the release announcements on Discourse. This blog post details the process for signing up for release announcements.

Reconfigure Automation

If you have automation around the reconfigure command, you will need to ensure one of the ways of accepting the license has been implemented in your automation. This will ensure that the reconfigure command can continue to be run without a person present.