Chef 10.18.0 is now available in the usual places, with 30 bug fixes and improvements.
Reminder
Before we go over what’s new in 10.18.0, I’d like to remind you that we released a security fix for Chef Server last Friday. It’s extremely important that you upgrade as soon as possible. Please help spread the word to any fellow Chef users that may not follow our announcements on the mailing list/twitter/IRC/blog, etc.
Chef 11 Compatibility
Chef 11 is fast approaching, and many of you have already begun testing the Chef Server prerelease. Though most of the changes are on the back-end, there are a few
incompatibilities with Chef 10.x, in particular:
knife client reregister
in Chef 10.x does not accept the data returned by a Chef 11 server. Tickets:
CHEF-3689
CHEF-3662- Chef 10.x clients cannot read encrypted data bag items created by a Chef 11.x client. Related tickets:
CHEF-3480
CHEF-3392
CHEF-3616
This release of Chef fixes these incompatibilities.
For those interested, a complete list of breaking changes in Chef 11 is available on the Chef wiki. A prerelease of the Chef 11 client will be available soon.
Community Contributions
Xabier de Zuazo has been contributing a ton of quality code recently. In this release, he found and fixed an issue where why run support was accidentally enabled for all providers. For all the great work Xabier has been doing recently, we’ve named him this release’s MVP. Thanks, Xabier!
We had a bunch of great patches from lots of people in this release. In no particular order:
- Kishore Kumar Samudrala fixed a typo causing misinformation in why run’s output.
- Adam Spiers fixed some obsolete rake usage.
- Fletcher Nichol fixed an issue that prevented passing your Chef Server URL into knife via environment variables.
- Teemu Matilainen Fixed Chefignore’s comment matching and updated the boostrap templates to avoid hardcoded temporary file names. He also updated the CentOS template to work correctly on minimal CentOS installs.
- Seth Vargo Added the name attribute to the metadata.rb generated by knife and improved the autogenerated README file
- Matthew Horan and Dimitri Roch gave
knife ssh
the ability to prompt for a password when using a SSH gateway. - Aaron Kalin Fixed
knife cookbook site install
when thecookbook_path
config option is a string - Michael Saffitz added the ability to configure ssh options for
knife bootstrap
in your knife.rb. - Ilya Sher refactored CookbookVersionLoader#empty?
- Matthew Kent Updated the log resource so it’s easier to notify from other resources. He also updated the yum provider to work correctly when the
--enable-repo
option is given
Tickets Fixed this Release
Bug
- [CHEF-2427] – yum package version availability does not work with –enablerepo
- [CHEF-2812] – 0.10.4 -> 0.10.6 regression when reloading prior state from resources
- [CHEF-2905] – 11: centos5-gems and chef-full bootstraps fail when wget/curl is not installed.
- [CHEF-3411] – Error Inspectors fail in Shef, masking real error
- [CHEF-3493] – Regression in recipe_eval
- [CHEF-3514] – Bootstrap templates use hardcoded temporary file names
- [CHEF-3543] – Add support for reading ssh_user, identity_file, and host_key_verify configuration from knife.rb for bootstrap
- [CHEF-3555] – knife cookbook site install fails due to not allowing string format cookbook_path
- [CHEF-3560] – knife ssh -G user@gateway does not prompt for gateway password
- [CHEF-3564] – remote_directory is updated_by_last_action on every run
- [CHEF-3568] – knife bootstrap does not expand tilde (~)
- [CHEF-3572] – Chefignore does not ignore filenames with only word characters
- [CHEF-3574] – There's a typo in the action_reload method of lib/chef/provider/service.rb that causes "reload" actions to display "disable service" messages during whyrun
- [CHEF-3577] – knife ssh overrides port value in ssh config
- [CHEF-3589] – Why Run code runs code in {{converge_by}} blocks after the provider action is complete
- [CHEF-3597] – knife.rb cannot handle frozen strings in chef_server_url (like from ENV)
- [CHEF-3619] – Chef still has obsolete 'rake/rdoctask' require
- [CHEF-3622] – Chef fails curl download with –bootstrap-proxy option
- [CHEF-3632] – All providers have whyrun enabled by default due to RemoteDirectory
- [CHEF-3650] – whyrun output says resource updated
- [CHEF-3660] – Deploy Revision Provider Fails on Solaris 9
- [CHEF-3662] – knife client reregister fails against Chef 11 Server
- [CHEF-3672] – ubuntu12.04-gems bootstrap needs to be updated for 12.10
- [CHEF-3689] – Client registration fails on existing clients
- [CHEF-3718] – peg 2.2.0 version of systemu for win ruby 1.9 compat