cookstyle 8.5.2 → 8.6.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/config/chefstyle.yml +11 -3
- data/config/cookstyle.yml +159 -151
- data/cookstyle.gemspec +1 -1
- data/lib/cookstyle/version.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/block_guard_clause_string_only.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/chef_application_fatal.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/conditional_ruby_shellout.rb +3 -3
- data/lib/rubocop/cop/chef/correctness/dnf_package_allow_downgrades.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/empty_resource_guard.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/incorrect_library_injection.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/invalid_cookbook_name.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/invalid_default_action.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/invalid_notification_resource.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/invalid_notification_timing.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/invalid_platform_family_helper.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/invalid_platform_family_values_in_case.rb +1 -1
- data/lib/rubocop/cop/chef/correctness/invalid_platform_helper.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/invalid_platform_metadata.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/invalid_platform_values_in_case.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/invalid_value_for_platform_family_helper.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/invalid_value_for_platform_helper.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/invalid_version_metadata.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/lazy_eval_node_attribute_defaults.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/lazy_in_resource_guard.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/macos_userdefaults_invalid_type.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/malformed_value_for_platform.rb +3 -3
- data/lib/rubocop/cop/chef/correctness/metadata_malformed_version.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/metadata_missing_name.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/metadata_missing_version.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/node_normal.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/node_normal_unless.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/node_save.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/notifies_action_not_symbol.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/octal_mode_as_string.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/openssl_password_helpers.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/powershell_delete_file.rb +1 -1
- data/lib/rubocop/cop/chef/correctness/powershell_file_exists.rb +4 -4
- data/lib/rubocop/cop/chef/correctness/property_without_type.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/resource_sets_internal_properties.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/resource_sets_name_property.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/resource_with_none_action.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/scoped_file_exist.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/service_resource.rb +1 -1
- data/lib/rubocop/cop/chef/correctness/supports_must_be_float.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/tmp_path.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/cb_depends_on_self.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/chef_handler_recipe.rb +1 -1
- data/lib/rubocop/cop/chef/deprecation/chef_handler_supports.rb +4 -4
- data/lib/rubocop/cop/chef/deprecation/chef_rest.rb +1 -1
- data/lib/rubocop/cop/chef/deprecation/chef_shellout.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/chef_sugar_helpers.rb +1 -1
- data/lib/rubocop/cop/chef/deprecation/chef_windows_platform_helper.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/chefdk_generators.rb +3 -3
- data/lib/rubocop/cop/chef/deprecation/chefspec_coverage_report.rb +1 -1
- data/lib/rubocop/cop/chef/deprecation/chefspec_legacy_runner.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/chocolatey_package_uninstall_action.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/depends_chef_nginx_cookbook.rb +4 -4
- data/lib/rubocop/cop/chef/deprecation/depends_chef_reporting_cookbook.rb +1 -1
- data/lib/rubocop/cop/chef/deprecation/depends_compat_resource.rb +1 -1
- data/lib/rubocop/cop/chef/deprecation/depends_omnibus_updater_cookbook.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/depends_partial_search.rb +1 -1
- data/lib/rubocop/cop/chef/deprecation/depends_poise.rb +1 -1
- data/lib/rubocop/cop/chef/deprecation/deprecated_chefspec_platform.rb +3 -3
- data/lib/rubocop/cop/chef/deprecation/deprecated_mixins.rb +1 -1
- data/lib/rubocop/cop/chef/deprecation/deprecated_platform_methods.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/deprecated_shellout_methods.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/deprecated_sudo_actions.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/deprecated_windows_version_check.rb +1 -1
- data/lib/rubocop/cop/chef/deprecation/deprecated_yum_repository_actions.rb +4 -4
- data/lib/rubocop/cop/chef/deprecation/deprecated_yum_repository_properties.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/easy_install.rb +1 -1
- data/lib/rubocop/cop/chef/deprecation/eol_audit_mode.rb +1 -1
- data/lib/rubocop/cop/chef/deprecation/epic_fail.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/erl_call.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/execute_path_property.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/execute_relative_creates_without_cwd.rb +4 -4
- data/lib/rubocop/cop/chef/deprecation/foodcritic_testing.rb +1 -1
- data/lib/rubocop/cop/chef/deprecation/hwrp_without_provides.rb +4 -4
- data/lib/rubocop/cop/chef/deprecation/hwrp_without_unified_mode_true.rb +3 -3
- data/lib/rubocop/cop/chef/deprecation/inherits_compat_resource.rb +8 -8
- data/lib/rubocop/cop/chef/deprecation/launchd_deprecated_hash_property.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/legacy_notify_syntax.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/legacy_yum_cookbook_recipes.rb +1 -1
- data/lib/rubocop/cop/chef/deprecation/librarian_chefspec.rb +1 -1
- data/lib/rubocop/cop/chef/deprecation/locale_lc_all_property.rb +3 -3
- data/lib/rubocop/cop/chef/deprecation/log_resource_notifications.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/macos_userdefaults_global_property.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/name_property_and_default.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/node_deep_fetch.rb +4 -4
- data/lib/rubocop/cop/chef/deprecation/node_methods_not_attributes.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/node_set.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/node_set_unless.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/node_set_without_level.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/partial_search_class_usage.rb +3 -3
- data/lib/rubocop/cop/chef/deprecation/partial_search_helper_usage.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/poise_archive.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/policyfile_community_source.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/powershell_cookbook_helpers.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/require_recipe.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/resource_overrides_provides_method.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/resource_uses_dsl_name_method.rb +4 -4
- data/lib/rubocop/cop/chef/deprecation/resource_uses_only_resource_name.rb +1 -1
- data/lib/rubocop/cop/chef/deprecation/resource_uses_provider_base_method.rb +1 -1
- data/lib/rubocop/cop/chef/deprecation/resource_uses_updated_method.rb +3 -2
- data/lib/rubocop/cop/chef/deprecation/resource_without_unified_mode_true.rb +3 -3
- data/lib/rubocop/cop/chef/deprecation/ruby_27_keyword_argument_warnings.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/ruby_block_create_action.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/run_command_helper.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/search_uses_positional_parameters.rb +8 -10
- data/lib/rubocop/cop/chef/deprecation/use_automatic_resource_name.rb +1 -1
- data/lib/rubocop/cop/chef/deprecation/use_inline_resources.rb +1 -1
- data/lib/rubocop/cop/chef/deprecation/use_yaml_dump.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/user_supports_property.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/verify_property_file_expansion.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/windows_feature_servermanagercmd.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/windows_package_installer_type_string.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/windows_task_change_action.rb +4 -4
- data/lib/rubocop/cop/chef/deprecation/windows_version_helpers.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/xml_ruby_recipe.rb +1 -1
- data/lib/rubocop/cop/chef/deprecation/yum_dnf_compat_recipe.rb +1 -1
- data/lib/rubocop/cop/chef/effortless/chef_vault_used.rb +6 -6
- data/lib/rubocop/cop/chef/effortless/data_bags.rb +1 -1
- data/lib/rubocop/cop/chef/effortless/depends_chef_vault.rb +1 -1
- data/lib/rubocop/cop/chef/effortless/node_environment.rb +2 -2
- data/lib/rubocop/cop/chef/effortless/node_policygroup.rb +1 -1
- data/lib/rubocop/cop/chef/effortless/node_roles.rb +2 -2
- data/lib/rubocop/cop/chef/effortless/search_for_environments_or_roles.rb +1 -1
- data/lib/rubocop/cop/chef/effortless/search_used.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/action_method_in_resource.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/allowed_actions_initializer.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/apt_default_recipe.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/berksfile_source.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/build_essential.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/chef_14_resources.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/chef_15_resources.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/chef_gem_nokogiri.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/class_eval_action_class.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/compile_time_resources.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/conditional_using_test.rb +3 -3
- data/lib/rubocop/cop/chef/modernize/cron_d_file_or_template.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/cron_manage_resource.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/databag_helpers.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/declare_action_class.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/default_action_initializer.rb +5 -5
- data/lib/rubocop/cop/chef/modernize/defines_chefspec_matchers.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/depends_chef_vault_cookbook.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/depends_chocolatey_cookbooks.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/depends_kernel_module_cookbook.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/depends_locale_cookbook.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/depends_openssl_cookbook.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/depends_timezone_lwrp_cookbook.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/depends_windows_firewall_cookbook.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/depends_zypper_cookbook.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/dsl_include_in_resource.rb +3 -3
- data/lib/rubocop/cop/chef/modernize/empty_resource_initialize.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/execute_apt_update.rb +3 -3
- data/lib/rubocop/cop/chef/modernize/execute_sc_exe.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/execute_sleep.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/execute_sysctl.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/execute_tzutil.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/foodcritic_comments.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/if_provides_default_action.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/includes_mixin_shellout.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/libarchive_file.rb +3 -3
- data/lib/rubocop/cop/chef/modernize/macos_user_defaults.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/minitest_handler_usage.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/node_init_package.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/node_roles_include.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/ohai_default_recipe.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/openssl_rsa_key_resource.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/openssl_x509_resource.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/osx_config_profile_resource.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/powershell_expand_archive.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/powershell_guard_interpreter.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/powershell_install_package.rb +3 -3
- data/lib/rubocop/cop/chef/modernize/powershell_install_windowsfeature.rb +6 -6
- data/lib/rubocop/cop/chef/modernize/property_with_name_attribute.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/provides_initializer.rb +4 -4
- data/lib/rubocop/cop/chef/modernize/resource_name_initializer.rb +3 -3
- data/lib/rubocop/cop/chef/modernize/resource_set_or_return.rb +3 -3
- data/lib/rubocop/cop/chef/modernize/resource_with_attributes.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/respond_to_compile_time.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/respond_to_metadata.rb +3 -3
- data/lib/rubocop/cop/chef/modernize/respond_to_provides.rb +3 -3
- data/lib/rubocop/cop/chef/modernize/respond_to_resource_name.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/sc_windows_resource.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/seven_zip_archive.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/shell_out_helper.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/shellouts_to_chocolatey.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/simplify_apt_ppa_setup.rb +14 -14
- data/lib/rubocop/cop/chef/modernize/sysctl_param_resource.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/unnecessary_mixlib_shellout_require.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/use_chef_language_cloud_helpers.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/use_chef_language_env_helpers.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/use_chef_language_systemd_helper.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/use_multipackage_installs.rb +3 -3
- data/lib/rubocop/cop/chef/modernize/use_require_relative.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/whyrun_supported_true.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/windows_default_recipe.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/windows_registry_uac.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/windows_zipfile.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/zipfile_resource.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/zypper_repo.rb +2 -2
- data/lib/rubocop/cop/chef/redundant/apt_repository_distribution_default.rb +2 -2
- data/lib/rubocop/cop/chef/redundant/apt_repository_notifies_apt_update.rb +2 -2
- data/lib/rubocop/cop/chef/redundant/attribute_metadata.rb +1 -1
- data/lib/rubocop/cop/chef/redundant/conflicts_metadata.rb +1 -1
- data/lib/rubocop/cop/chef/redundant/custom_resource_with_allowed_actions.rb +1 -1
- data/lib/rubocop/cop/chef/redundant/double_compile_time.rb +2 -2
- data/lib/rubocop/cop/chef/redundant/grouping_metadata.rb +1 -1
- data/lib/rubocop/cop/chef/redundant/long_description_metadata.rb +1 -1
- data/lib/rubocop/cop/chef/redundant/multiple_platform_checks.rb +2 -2
- data/lib/rubocop/cop/chef/redundant/name_property_and_required.rb +4 -4
- data/lib/rubocop/cop/chef/redundant/ohai_attribute_to_string.rb +2 -2
- data/lib/rubocop/cop/chef/redundant/property_splat_regex.rb +3 -3
- data/lib/rubocop/cop/chef/redundant/property_with_default_and_required.rb +2 -2
- data/lib/rubocop/cop/chef/redundant/provides_metadata.rb +1 -1
- data/lib/rubocop/cop/chef/redundant/recipe_metadata.rb +1 -1
- data/lib/rubocop/cop/chef/redundant/replaces_metadata.rb +1 -1
- data/lib/rubocop/cop/chef/redundant/resource_with_nothing_action.rb +2 -2
- data/lib/rubocop/cop/chef/redundant/sensitive_property_in_resource.rb +2 -2
- data/lib/rubocop/cop/chef/redundant/string_property_with_nil_default.rb +2 -2
- data/lib/rubocop/cop/chef/redundant/suggests_metadata.rb +1 -1
- data/lib/rubocop/cop/chef/redundant/unnecessary_desired_state.rb +2 -2
- data/lib/rubocop/cop/chef/redundant/unnecessary_name_property.rb +1 -1
- data/lib/rubocop/cop/chef/redundant/use_create_if_missing.rb +2 -2
- data/lib/rubocop/cop/chef/security/ssh_private_key.rb +1 -1
- data/lib/rubocop/cop/chef/sharing/default_maintainer_metadata.rb +4 -3
- data/lib/rubocop/cop/chef/sharing/empty_metadata_field.rb +2 -2
- data/lib/rubocop/cop/chef/sharing/include_property_descriptions.rb +2 -2
- data/lib/rubocop/cop/chef/sharing/include_resource_descriptions.rb +1 -1
- data/lib/rubocop/cop/chef/sharing/include_resource_examples.rb +1 -1
- data/lib/rubocop/cop/chef/sharing/insecure_cookbook_url.rb +4 -4
- data/lib/rubocop/cop/chef/sharing/invalid_license_string.rb +288 -11
- data/lib/rubocop/cop/chef/style/attribute_keys.rb +4 -4
- data/lib/rubocop/cop/chef/style/chef_whaaat.rb +2 -2
- data/lib/rubocop/cop/chef/style/comments_copyright_format.rb +2 -2
- data/lib/rubocop/cop/chef/style/comments_default_copyright.rb +2 -2
- data/lib/rubocop/cop/chef/style/comments_format.rb +2 -2
- data/lib/rubocop/cop/chef/style/file_mode.rb +2 -2
- data/lib/rubocop/cop/chef/style/immediate_notification_timing.rb +2 -2
- data/lib/rubocop/cop/chef/style/include_recipe_with_parentheses.rb +2 -2
- data/lib/rubocop/cop/chef/style/negating_only_if.rb +2 -2
- data/lib/rubocop/cop/chef/style/overly_complex_supports_depends_metadata.rb +2 -2
- data/lib/rubocop/cop/chef/style/simplify_platform_major_version_check.rb +4 -4
- data/lib/rubocop/cop/chef/style/true_false_resource_properties.rb +2 -2
- data/lib/rubocop/cop/chef/style/unnecessary_os_check.rb +5 -5
- data/lib/rubocop/cop/chef/style/unnecessary_platform_case_statement.rb +2 -2
- data/lib/rubocop/cop/chef/style/use_platform_helpers.rb +3 -3
- data/lib/rubocop/cop/inspec/deprecation/attribute_default.rb +2 -2
- data/lib/rubocop/cop/inspec/deprecation/attribute_helper.rb +2 -2
- metadata +6 -10
|
@@ -22,10 +22,10 @@ module RuboCop
|
|
|
22
22
|
#
|
|
23
23
|
# @example downloading a large file into /tmp/
|
|
24
24
|
#
|
|
25
|
-
#
|
|
25
|
+
# # bad
|
|
26
26
|
# remote_file '/tmp/large-file.tar.gz' do
|
|
27
27
|
#
|
|
28
|
-
#
|
|
28
|
+
# # good
|
|
29
29
|
# remote_file "#{Chef::Config[:file_cache_path]}/large-file.tar.gz" do
|
|
30
30
|
#
|
|
31
31
|
class TmpPath < Base
|
|
@@ -19,16 +19,16 @@ module RuboCop
|
|
|
19
19
|
module Cop
|
|
20
20
|
module Chef
|
|
21
21
|
module Deprecations
|
|
22
|
-
# Use the type
|
|
22
|
+
# Use the `type` property instead of the deprecated `supports` property in the `chef_handler` resource. The `supports` property was removed in `chef_handler` cookbook version 3.0 (June 2017) and Chef Infra Client 14.0.
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# chef_handler 'whatever' do
|
|
28
28
|
# supports start: true, report: true, exception: true
|
|
29
|
-
#
|
|
29
|
+
# end
|
|
30
30
|
#
|
|
31
|
-
#
|
|
31
|
+
# # good
|
|
32
32
|
# chef_handler 'whatever' do
|
|
33
33
|
# type start: true, report: true, exception: true
|
|
34
34
|
# end
|
|
@@ -23,12 +23,12 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# include Chef::ShellOut
|
|
28
28
|
# require 'chef/shellout'
|
|
29
29
|
# Chef::ShellOut.new('some_command')
|
|
30
30
|
#
|
|
31
|
-
#
|
|
31
|
+
# # good
|
|
32
32
|
# include Mixlib::ShellOut
|
|
33
33
|
# require 'mixlib/shellout'
|
|
34
34
|
# Mixlib::ShellOut.new('some_command')
|
|
@@ -23,14 +23,14 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# ChefDK::CLI
|
|
28
28
|
# ChefDK::Generator::TemplateHelper
|
|
29
29
|
# module ChefDK
|
|
30
30
|
# # some additional code
|
|
31
31
|
# end
|
|
32
32
|
#
|
|
33
|
-
#
|
|
33
|
+
# # good
|
|
34
34
|
# ChefCLI::CLI
|
|
35
35
|
# ChefCLI::Generator::TemplateHelper
|
|
36
36
|
# module ChefCLI
|
|
@@ -42,7 +42,7 @@ module RuboCop
|
|
|
42
42
|
MSG = 'When writing cookbook generators use the ChefCLI module instead of the ChefDK module which was removed in Chef Workstation 0.8 and later.'
|
|
43
43
|
|
|
44
44
|
def on_const(node)
|
|
45
|
-
# We want to catch calls like
|
|
45
|
+
# We want to catch calls like ChefDK::CLI.whatever or places where classes are defined in the ChefDK module
|
|
46
46
|
return unless node.const_name == 'ChefDK' && (node.parent&.module_type? || node.parent&.const_type?)
|
|
47
47
|
|
|
48
48
|
add_offense(node, severity: :warning) do |corrector|
|
|
@@ -23,7 +23,7 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
#
|
|
28
28
|
# describe 'foo::default' do
|
|
29
29
|
# subject { ChefSpec::Runner.new.converge(described_recipe) }
|
|
@@ -31,7 +31,7 @@ module RuboCop
|
|
|
31
31
|
# # some spec code
|
|
32
32
|
# end
|
|
33
33
|
#
|
|
34
|
-
#
|
|
34
|
+
# # good
|
|
35
35
|
#
|
|
36
36
|
# describe 'foo::default' do
|
|
37
37
|
# subject { ChefSpec::ServerRunner.new.converge(described_recipe) }
|
|
@@ -23,10 +23,10 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# depends 'chef_nginx'
|
|
28
28
|
#
|
|
29
|
-
#
|
|
29
|
+
# # good
|
|
30
30
|
# depends 'nginx'
|
|
31
31
|
#
|
|
32
32
|
class DependsOnChefNginxCookbook < Base
|
|
@@ -36,12 +36,12 @@ module RuboCop
|
|
|
36
36
|
MSG = "Don't depend on the deprecated `chef_nginx` cookbook that was replaced by the `nginx` cookbook."
|
|
37
37
|
RESTRICT_ON_SEND = [:depends].freeze
|
|
38
38
|
|
|
39
|
-
def_node_matcher :
|
|
39
|
+
def_node_matcher :depends_chef_nginx?, <<-PATTERN
|
|
40
40
|
(send nil? :depends (str {"chef_nginx"}))
|
|
41
41
|
PATTERN
|
|
42
42
|
|
|
43
43
|
def on_send(node)
|
|
44
|
-
|
|
44
|
+
depends_chef_nginx?(node) do
|
|
45
45
|
add_offense(node, severity: :warning) do |corrector|
|
|
46
46
|
corrector.remove(range_with_surrounding_space(range: node.loc.expression, side: :left))
|
|
47
47
|
end
|
|
@@ -19,7 +19,7 @@ module RuboCop
|
|
|
19
19
|
module Cop
|
|
20
20
|
module Chef
|
|
21
21
|
module Deprecations
|
|
22
|
-
# Use currently supported platforms in ChefSpec listed at https://github.com/chef/fauxhai/blob/main/PLATFORMS.md. Fauxhai / ChefSpec will perform fuzzy matching on platform version values so it's always best to be less specific
|
|
22
|
+
# Use currently supported platforms in ChefSpec listed at https://github.com/chef/fauxhai/blob/main/PLATFORMS.md. Fauxhai / ChefSpec will perform fuzzy matching on platform version values so it's always best to be less specific i.e. 10 instead of 10.3
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
@@ -29,7 +29,7 @@ module RuboCop
|
|
|
29
29
|
include RuboCop::Chef::CookbookHelpers
|
|
30
30
|
extend AutoCorrector
|
|
31
31
|
|
|
32
|
-
MSG = "Use currently supported platforms in ChefSpec listed at https://github.com/chef/fauxhai/blob/main/PLATFORMS.md. Fauxhai / ChefSpec will perform fuzzy matching on platform version so it's always best to be less specific
|
|
32
|
+
MSG = "Use currently supported platforms in ChefSpec listed at https://github.com/chef/fauxhai/blob/main/PLATFORMS.md. Fauxhai / ChefSpec will perform fuzzy matching on platform version so it's always best to be less specific i.e. 10 instead of 10.3"
|
|
33
33
|
|
|
34
34
|
DEPRECATED_MAPPING = {
|
|
35
35
|
'amazon' => {
|
|
@@ -109,7 +109,7 @@ module RuboCop
|
|
|
109
109
|
replacement != true # true means it's busted, but requires human intervention to fix
|
|
110
110
|
end
|
|
111
111
|
|
|
112
|
-
nil # we don't have a replacement
|
|
112
|
+
nil # we don't have a replacement so return nil
|
|
113
113
|
end
|
|
114
114
|
|
|
115
115
|
def on_send(node)
|
|
@@ -23,7 +23,7 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# resource = Chef::Resource::File.new("/tmp/foo.xyz", run_context)
|
|
28
28
|
# provider = Chef::Platform.provider_for_resource(resource, :create)
|
|
29
29
|
#
|
|
@@ -35,7 +35,7 @@ module RuboCop
|
|
|
35
35
|
#
|
|
36
36
|
# Chef::Platform.set :platform => :mac_os_x, :resource => :package, :provider => Chef::Provider::Package::Homebrew
|
|
37
37
|
#
|
|
38
|
-
#
|
|
38
|
+
# # good
|
|
39
39
|
# resource = Chef::Resource::File.new("/tmp/foo.xyz", run_context)
|
|
40
40
|
# provider = resource.provider_for_action(:create)
|
|
41
41
|
#
|
|
@@ -23,7 +23,7 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# shell_out_compact('foo')
|
|
28
28
|
# shell_out_compact!('foo')
|
|
29
29
|
# shell_out_with_timeout('foo')
|
|
@@ -33,7 +33,7 @@ module RuboCop
|
|
|
33
33
|
# shell_out_compact_timeout('foo')
|
|
34
34
|
# shell_out_compact_timeout!('foo')
|
|
35
35
|
#
|
|
36
|
-
#
|
|
36
|
+
# # good
|
|
37
37
|
# shell_out('foo')
|
|
38
38
|
# shell_out!('foo')
|
|
39
39
|
# shell_out!('foo', default_env: false) # replaces shell_out_with_systems_locale
|
|
@@ -23,14 +23,14 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# sudo 'admins' do
|
|
28
28
|
# users 'bob'
|
|
29
29
|
# groups 'sysadmins, superusers'
|
|
30
30
|
# action :remove
|
|
31
31
|
# end
|
|
32
32
|
#
|
|
33
|
-
#
|
|
33
|
+
# # good
|
|
34
34
|
# sudo 'admins' do
|
|
35
35
|
# users 'bob'
|
|
36
36
|
# groups 'sysadmins, superusers'
|
|
@@ -19,11 +19,11 @@ module RuboCop
|
|
|
19
19
|
module Cop
|
|
20
20
|
module Chef
|
|
21
21
|
module Deprecations
|
|
22
|
-
# With the release of Chef Infra Client 12.14 and the yum cookbook 3.0 the
|
|
22
|
+
# With the release of Chef Infra Client 12.14 and the yum cookbook 3.0 the `yum_repository` resource actions were renamed. The `add` action became `create` and `delete` became `remove` to better match other resources in Chef Infra Client.
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# yum_repository 'OurCo' do
|
|
28
28
|
# description 'OurCo yum repository'
|
|
29
29
|
# baseurl 'http://artifacts.ourco.org/foo/bar'
|
|
@@ -31,7 +31,7 @@ module RuboCop
|
|
|
31
31
|
# action :add
|
|
32
32
|
# end
|
|
33
33
|
#
|
|
34
|
-
#
|
|
34
|
+
# # good
|
|
35
35
|
# yum_repository 'OurCo' do
|
|
36
36
|
# description 'OurCo yum repository'
|
|
37
37
|
# baseurl 'http://artifacts.ourco.org/foo/bar'
|
|
@@ -46,7 +46,7 @@ module RuboCop
|
|
|
46
46
|
|
|
47
47
|
minimum_target_chef_version '12.14'
|
|
48
48
|
|
|
49
|
-
MSG = 'With the release of Chef Infra Client 12.14 and the yum cookbook 3.0
|
|
49
|
+
MSG = 'With the release of Chef Infra Client 12.14 and the yum cookbook 3.0 the `yum_repository` resource actions were renamed. The `add` action became `create` and `delete` became `remove` to better match other resources in Chef Infra Client.'
|
|
50
50
|
|
|
51
51
|
def on_block(node)
|
|
52
52
|
match_property_in_resource?(:yum_repository, 'action', node) do |prop_node|
|
|
@@ -23,7 +23,7 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# yum_repository 'OurCo' do
|
|
28
28
|
# description 'OurCo yum repository'
|
|
29
29
|
# url 'http://artifacts.ourco.org/foo/bar'
|
|
@@ -32,7 +32,7 @@ module RuboCop
|
|
|
32
32
|
# action :create
|
|
33
33
|
# end
|
|
34
34
|
#
|
|
35
|
-
#
|
|
35
|
+
# # good
|
|
36
36
|
# yum_repository 'OurCo' do
|
|
37
37
|
# description 'OurCo yum repository'
|
|
38
38
|
# baseurl 'http://artifacts.ourco.org/foo/bar'
|
|
@@ -19,11 +19,11 @@ module RuboCop
|
|
|
19
19
|
module Cop
|
|
20
20
|
module Chef
|
|
21
21
|
module Deprecations
|
|
22
|
-
# Don't use the deprecated `erl_call` resource removed in Chef Infra Client 13.
|
|
22
|
+
# Don't use the deprecated `erl_call` resource removed in Chef Infra Client 13.
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# erl_call "foo" do
|
|
28
28
|
# bar
|
|
29
29
|
# end
|
|
@@ -19,16 +19,16 @@ module RuboCop
|
|
|
19
19
|
module Cop
|
|
20
20
|
module Chef
|
|
21
21
|
module Deprecations
|
|
22
|
-
# In Chef Infra Client 13 and later you must either
|
|
22
|
+
# In Chef Infra Client 13 and later you must either specify an absolute path when using the `execute` resource's `creates` property or also use the `cwd` property.
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# execute 'some_cmd' do
|
|
28
28
|
# creates 'something'
|
|
29
29
|
# end
|
|
30
30
|
#
|
|
31
|
-
#
|
|
31
|
+
# # good
|
|
32
32
|
# execute 'some_cmd' do
|
|
33
33
|
# creates '/tmp/something'
|
|
34
34
|
# end
|
|
@@ -41,7 +41,7 @@ module RuboCop
|
|
|
41
41
|
class ExecuteRelativeCreatesWithoutCwd < Base
|
|
42
42
|
include RuboCop::Chef::CookbookHelpers
|
|
43
43
|
|
|
44
|
-
MSG = "In Chef Infra Client 13 and later you must either
|
|
44
|
+
MSG = "In Chef Infra Client 13 and later you must either specify an absolute path when using the `execute` resource's `creates` property or also use the `cwd` property."
|
|
45
45
|
|
|
46
46
|
def on_block(node)
|
|
47
47
|
match_property_in_resource?(:execute, 'creates', node) do |offense|
|
|
@@ -23,7 +23,7 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# class Chef
|
|
28
28
|
# class Resource
|
|
29
29
|
# class UlimitRule < Chef::Resource
|
|
@@ -35,7 +35,7 @@ module RuboCop
|
|
|
35
35
|
# end
|
|
36
36
|
# end
|
|
37
37
|
#
|
|
38
|
-
#
|
|
38
|
+
# # bad
|
|
39
39
|
# class Chef
|
|
40
40
|
# class Resource
|
|
41
41
|
# class UlimitRule < Chef::Resource
|
|
@@ -49,7 +49,7 @@ module RuboCop
|
|
|
49
49
|
# end
|
|
50
50
|
# end
|
|
51
51
|
#
|
|
52
|
-
#
|
|
52
|
+
# # good when Chef Infra Client < 15 (but compatible with 16+ as well)
|
|
53
53
|
# class Chef
|
|
54
54
|
# class Resource
|
|
55
55
|
# class UlimitRule < Chef::Resource
|
|
@@ -64,7 +64,7 @@ module RuboCop
|
|
|
64
64
|
# end
|
|
65
65
|
# end
|
|
66
66
|
#
|
|
67
|
-
#
|
|
67
|
+
# # good when Chef Infra Client 16+
|
|
68
68
|
# class Chef
|
|
69
69
|
# class Resource
|
|
70
70
|
# class UlimitRule < Chef::Resource
|
|
@@ -19,11 +19,11 @@ module RuboCop
|
|
|
19
19
|
module Cop
|
|
20
20
|
module Chef
|
|
21
21
|
module Deprecations
|
|
22
|
-
# Chef Infra Client 15.3 and later include a new Unified Mode that simplifies the execution of resources by
|
|
22
|
+
# Chef Infra Client 15.3 and later include a new Unified Mode that simplifies the execution of resources by replacing the traditional compile and converge phases with a single phase. Unified mode simplifies writing advanced resources and avoids confusing errors that often occur when mixing ruby and Chef Infra resources. Chef Infra Client 17.0 and later will begin warning that `unified_mode true` should be set in all resources to validate that they will continue to function in Chef Infra Client 18.0 (April 2022) when Unified Mode becomes the default.
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# class Chef
|
|
28
28
|
# class Resource
|
|
29
29
|
# class UlimitRule < Chef::Resource
|
|
@@ -37,7 +37,7 @@ module RuboCop
|
|
|
37
37
|
# end
|
|
38
38
|
# end
|
|
39
39
|
#
|
|
40
|
-
#
|
|
40
|
+
# # good
|
|
41
41
|
# class Chef
|
|
42
42
|
# class Resource
|
|
43
43
|
# class UlimitRule < Chef::Resource
|
|
@@ -23,15 +23,15 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
27
|
-
#
|
|
28
|
-
#
|
|
29
|
-
#
|
|
26
|
+
# # bad
|
|
27
|
+
# class AptUpdate < ChefCompat::Resource
|
|
28
|
+
# # some resource code
|
|
29
|
+
# end
|
|
30
30
|
#
|
|
31
|
-
#
|
|
32
|
-
#
|
|
33
|
-
#
|
|
34
|
-
#
|
|
31
|
+
# # good
|
|
32
|
+
# class AptUpdate < Chef::Resource
|
|
33
|
+
# # some resource code
|
|
34
|
+
# end
|
|
35
35
|
#
|
|
36
36
|
# # better
|
|
37
37
|
# Write a custom resource using the custom resource DSL and avoid class based HWRPs entirely
|