chef / chef-apply

The ad-hoc execution tool for the Chef ecosystem.
https://www.chef.sh/
Apache License 2.0
14 stars 14 forks source link

[SHACK-290] Support installed version of Chef 13 if 13.10 or greater #20

Closed tyler-ball closed 6 years ago

tyler-ball commented 6 years ago

Description

For users with an existing Chef Client 13 at version 13.10 or greater we should not fail out. This version of Chef Client has the necessary fixes to execute the chef-run policyfile bundle successfully.

Issues Resolved

SHACK-290

Check List

Signed-off-by: tyler-ball tball@chef.io

tyler-ball commented 6 years ago

TL;DR I made the errors when you have Chef 12 or an old version of Chef 14 installed the same. I did this to promote users who are running Chef 12 to upgrade to Chef 14 rather than 13. Please give feedback if you disagree.

Version 12:

CHEFINS004

The target's installed version of Chef Client is too old.

The target has version 12.22.5 installed, but this command
requires a minimum version of 14.1.1.

Please upgrade the Chef client on this node to version 14.1.1 or later.

Old version 13:

CHEFINS003

The target's installed version of Chef Client is too old.

The target has version 13.9.4 installed, but this command requires
a minimum version of 13.10.0 if using Chef 13 or 14.1.1 if using
Chef 14 or later.

Please upgrade the Chef client on this node.

Old version 14:

CHEFINS004

The target's installed version of Chef Client is too old.

The target has version 14.0.202 installed, but this command
requires a minimum version of 14.1.1.

Please upgrade the Chef client on this node to version 14.1.1 or later.
jonsmorrow commented 6 years ago

Hmm. I think it is misleading to say we require 13 especially since the 12 - 14 upgrade can be hard and we generally suggest folks go from 12 -13. I bet susan can come up with some good working there. I'd like to encourage the upgrade even for 13.x users though.

robbkidd commented 6 years ago

I agree that the 12-is-too-old error should mention that 13.x and 14.x as upgrade options. Ideally, yes, they'd go straight to 14 and collect $200, but that lift could be hard. Letting them know 13 is an intermediate option could help them through that lift.

robbkidd commented 6 years ago

Might'nt we provide some output for any use of a Chef 13 client to include "some Chef resources mentioned in the documentation for chef-run may not be available on older versions of chef-client"? The number of resources moved from cookbooks into core Chef in v14 was another reason chef-run started with that as the required version.

tyler-ball commented 6 years ago

@jonsmorrow @robbkidd Got the logic updated - if they have Chef <= 12 installed we display the message saying to update to 13 or 14.

susanev commented 6 years ago

Here are my edits .. really trying hard to reduce the number of words throughout our messages. I don't think we need to explicitly tell them to upgrade unless we have some sort of resource we want to link to for that. Thoughts? @tyler-ball @jonsmorrow

The target's installed version of Chef Client is too old.

Version 14.0.202 is installed, but this command requires a minimum version of 14.1.1.


The target's installed version of Chef Client is too old.

Version 13.9.4 is installed, but this command requires a minimum version of 13.10.0 (Chef 13) or 14.1.1 (Chef 14).

tyler-ball commented 6 years ago

@susanev We could always direct them to downloads.chef.io but I don't think many people manage their installed chef client version using that website. I think that wording looks good