Hey everyone!
I hope everyone is having an excellent Friday and to make things a bit nicer we shipped a new release Cookstyle to help identify more deprecations between Chef Infra Client 12 and 13:
4 New Cops
ChefDeprecations/ChefShellout
The ChefDeprecations/ChefShellout cop detects the use of the Chef::ShellOut class, which was removed in Chef Infra Client 13. It will autocorrect all occurrences to instead use Mixlib::ShellOut, which is a drop-in replacement.
Enabled by default: True
Autocorrects: Yes
ChefDeprecations/ExecutePathProperty
The ChefDeprecations/ExecutePathProperty cop detects execute resources that use the path property, which was removed in Chef Infra Client 13. To set a path for use when executing, you should instead set the PATH via the environment property.
Enabled by default: True
Autocorrects: No
ChefDeprecations/ExecuteRelativeCreatesWithoutCwd
The ChefDeprecations/ExecuteRelativeCreatesWithoutCwd cop detects the usage of the execute resource with a relative path in the creates property and with no cwd property present. This condition will fail in Chef Infra Client 13 or later, and it never would have actually worked, so it was always failing code. You should either provide an absolute path to the creates property, or use a relative path with creates and specify the working directory with cwd.
Enabled by default: True
Autocorrects: No
ChefDeprecations/WindowsPackageInstallerTypeString
The ChefDeprecations/WindowsPackageInstallerTypeString cop detects the usage of the windows_package resource with a installer_type property value that is a String. In Chef Infra Client 13 or later, this property value must be a Symbol.
Enabled by default: True
Autocorrects: Yes
Other Improvements
- The
ChefDeprecations/DeprecatedPlatformMethodscop now detects the usage ofChef::Platform.set, which was removed in Chef Infra Client 13. - Several minor performance and memory usage improvements were made to speed up Cookstyle scans.
- An error was resolved that would occur when using Cookstyle with the
rubocop-astgem, version 0.4.0 or later.
Enjoy,
Tim