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
|
@@ -23,14 +23,14 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# depends 'libarchive'
|
|
28
28
|
#
|
|
29
29
|
# libarchive_file "C:\file.zip" do
|
|
30
30
|
# path 'C:\expand_here'
|
|
31
31
|
# end
|
|
32
32
|
#
|
|
33
|
-
#
|
|
33
|
+
# # good
|
|
34
34
|
# archive_file "C:\file.zip" do
|
|
35
35
|
# path 'C:\expand_here'
|
|
36
36
|
# end
|
|
@@ -41,7 +41,7 @@ module RuboCop
|
|
|
41
41
|
|
|
42
42
|
minimum_target_chef_version '15.0'
|
|
43
43
|
|
|
44
|
-
MSG = 'Use the archive_file resource built into Chef Infra Client 15+ instead of the
|
|
44
|
+
MSG = 'Use the archive_file resource built into Chef Infra Client 15+ instead of the libarchive_file resource from the libarchive cookbook'
|
|
45
45
|
RESTRICT_ON_SEND = [:libarchive_file, :notifies, :subscribes].freeze
|
|
46
46
|
|
|
47
47
|
def_node_matcher :notification_property?, <<-PATTERN
|
|
@@ -23,14 +23,14 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# mac_os_x_userdefaults 'full keyboard access to all controls' do
|
|
28
28
|
# domain 'AppleKeyboardUIMode'
|
|
29
29
|
# global true
|
|
30
30
|
# value '2'
|
|
31
31
|
# end
|
|
32
32
|
#
|
|
33
|
-
#
|
|
33
|
+
# # good
|
|
34
34
|
# macos_userdefaults 'full keyboard access to all controls' do
|
|
35
35
|
# domain 'AppleKeyboardUIMode'
|
|
36
36
|
# global true
|
|
@@ -23,7 +23,7 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# ::File.open('/proc/1/comm').gets.chomp == 'systemd'
|
|
28
28
|
# ::File.open('/proc/1/comm').chomp == 'systemd'
|
|
29
29
|
# File.open('/proc/1/comm').gets.chomp == 'systemd'
|
|
@@ -35,7 +35,7 @@ module RuboCop
|
|
|
35
35
|
# File.exist?('/proc/1/comm') && File.open('/proc/1/comm').chomp == 'systemd'
|
|
36
36
|
# only_if 'test -f /bin/systemctl && /bin/systemctl'
|
|
37
37
|
#
|
|
38
|
-
#
|
|
38
|
+
# # good
|
|
39
39
|
# node['init_package'] == 'systemd'
|
|
40
40
|
# only_if { node['init_package'] == 'systemd' }
|
|
41
41
|
#
|
|
@@ -23,12 +23,12 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# openssl_rsa_key '/etc/httpd/ssl/server.key' do
|
|
28
28
|
# key_length 2048
|
|
29
29
|
# end
|
|
30
30
|
#
|
|
31
|
-
#
|
|
31
|
+
# # good
|
|
32
32
|
# openssl_rsa_private_key '/etc/httpd/ssl/server.key' do
|
|
33
33
|
# key_length 2048
|
|
34
34
|
# end
|
|
@@ -23,7 +23,7 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# openssl_x509 '/etc/httpd/ssl/mycert.pem' do
|
|
28
28
|
# common_name 'www.f00bar.com'
|
|
29
29
|
# org 'Foo Bar'
|
|
@@ -31,7 +31,7 @@ module RuboCop
|
|
|
31
31
|
# country 'US'
|
|
32
32
|
# end
|
|
33
33
|
#
|
|
34
|
-
#
|
|
34
|
+
# # good
|
|
35
35
|
# openssl_x509_certificate '/etc/httpd/ssl/mycert.pem' do
|
|
36
36
|
# common_name 'www.f00bar.com'
|
|
37
37
|
# org 'Foo Bar'
|
|
@@ -23,12 +23,12 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# osx_config_profile 'Install screensaver profile' do
|
|
28
28
|
# profile 'screensaver/com.company.screensaver.mobileconfig'
|
|
29
29
|
# end
|
|
30
30
|
#
|
|
31
|
-
#
|
|
31
|
+
# # good
|
|
32
32
|
# osx_profile 'Install screensaver profile' do
|
|
33
33
|
# profile 'screensaver/com.company.screensaver.mobileconfig'
|
|
34
34
|
# end
|
|
@@ -23,7 +23,7 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# powershell_script 'Create Directory' do
|
|
28
28
|
# code "New-Item -ItemType Directory -Force -Path C:\mydir"
|
|
29
29
|
# guard_interpreter :powershell_script
|
|
@@ -34,7 +34,7 @@ module RuboCop
|
|
|
34
34
|
# guard_interpreter :powershell_script
|
|
35
35
|
# end
|
|
36
36
|
#
|
|
37
|
-
#
|
|
37
|
+
# # good
|
|
38
38
|
# powershell_script 'Create Directory' do
|
|
39
39
|
# code "New-Item -ItemType Directory -Force -Path C:\mydir"
|
|
40
40
|
# end
|
|
@@ -23,13 +23,13 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# powershell_script 'Expand website' do
|
|
28
28
|
# code 'Install-Package -Name docker'
|
|
29
29
|
# end
|
|
30
30
|
#
|
|
31
|
-
#
|
|
32
|
-
#
|
|
31
|
+
# # good
|
|
32
|
+
# powershell_package 'docker'
|
|
33
33
|
#
|
|
34
34
|
class PowershellInstallPackage < Base
|
|
35
35
|
include RuboCop::Chef::CookbookHelpers
|
|
@@ -23,16 +23,16 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# powershell_script 'Install Feature' do
|
|
28
28
|
# code 'Install-WindowsFeature -Name "Net-framework-Core"'
|
|
29
29
|
# end
|
|
30
30
|
#
|
|
31
|
-
#
|
|
32
|
-
#
|
|
33
|
-
#
|
|
34
|
-
#
|
|
35
|
-
#
|
|
31
|
+
# # good
|
|
32
|
+
# windows_feature 'Net-framework-Core' do
|
|
33
|
+
# action :install
|
|
34
|
+
# install_method :windows_feature_powershell
|
|
35
|
+
# end
|
|
36
36
|
#
|
|
37
37
|
class PowershellInstallWindowsFeature < Base
|
|
38
38
|
include RuboCop::Chef::CookbookHelpers
|
|
@@ -19,24 +19,24 @@ module RuboCop
|
|
|
19
19
|
module Cop
|
|
20
20
|
module Chef
|
|
21
21
|
module Modernize
|
|
22
|
-
# Provides should be set using the `provides` resource DSL method instead of
|
|
22
|
+
# Provides should be set using the `provides` resource DSL method instead of setting @provides in the initialize method.
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# def initialize(*args)
|
|
28
28
|
# super
|
|
29
29
|
# @provides = :foo
|
|
30
30
|
# end
|
|
31
31
|
#
|
|
32
|
-
#
|
|
32
|
+
# # good
|
|
33
33
|
# provides :foo
|
|
34
34
|
#
|
|
35
35
|
class ProvidesFromInitialize < Base
|
|
36
36
|
include RangeHelp
|
|
37
37
|
extend AutoCorrector
|
|
38
38
|
|
|
39
|
-
MSG = 'Provides should be set using the `provides` resource DSL method instead of
|
|
39
|
+
MSG = 'Provides should be set using the `provides` resource DSL method instead of setting @provides in the initialize method.'
|
|
40
40
|
|
|
41
41
|
def_node_matcher :provides_assignment?, <<-PATTERN
|
|
42
42
|
(ivasgn :@provides $(sym ...))
|
|
@@ -23,14 +23,14 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# def initialize(*args)
|
|
28
28
|
# super
|
|
29
29
|
# @resource_name = :foo
|
|
30
30
|
# end
|
|
31
31
|
#
|
|
32
|
-
#
|
|
33
|
-
#
|
|
32
|
+
# # good
|
|
33
|
+
# resource_name :foo
|
|
34
34
|
|
|
35
35
|
class ResourceNameFromInitialize < Base
|
|
36
36
|
extend AutoCorrector
|
|
@@ -19,11 +19,11 @@ module RuboCop
|
|
|
19
19
|
module Cop
|
|
20
20
|
module Chef
|
|
21
21
|
module Modernize
|
|
22
|
-
# set_or_return within a method should not be used to define property in a resource. Instead use the property method which properly validates and defines properties in a way that works with reporting and documentation functionality in Chef Infra Client
|
|
22
|
+
# set_or_return within a method should not be used to define a property in a resource. Instead use the property method which properly validates and defines properties in a way that works with reporting and documentation functionality in Chef Infra Client
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# def severity(arg = nil)
|
|
28
28
|
# set_or_return(
|
|
29
29
|
# :severity, arg,
|
|
@@ -32,7 +32,7 @@ module RuboCop
|
|
|
32
32
|
# )
|
|
33
33
|
# end
|
|
34
34
|
#
|
|
35
|
-
#
|
|
35
|
+
# # good
|
|
36
36
|
# property :severity, String
|
|
37
37
|
#
|
|
38
38
|
class SetOrReturnInResources < Base
|
|
@@ -23,14 +23,14 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# attribute :something, String
|
|
28
28
|
#
|
|
29
29
|
# action :create do
|
|
30
30
|
# # some action code because we're in a custom resource
|
|
31
31
|
# end
|
|
32
32
|
#
|
|
33
|
-
#
|
|
33
|
+
# # good
|
|
34
34
|
# property :something, String
|
|
35
35
|
#
|
|
36
36
|
# action :create do
|
|
@@ -23,7 +23,7 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# chef_gem 'ultradns-sdk' do
|
|
28
28
|
# compile_time true if Chef::Resource::ChefGem.method_defined?(:compile_time)
|
|
29
29
|
# action :nothing
|
|
@@ -39,7 +39,7 @@ module RuboCop
|
|
|
39
39
|
# action :nothing
|
|
40
40
|
# end
|
|
41
41
|
#
|
|
42
|
-
#
|
|
42
|
+
# # good
|
|
43
43
|
# chef_gem 'ultradns-sdk' do
|
|
44
44
|
# compile_time true
|
|
45
45
|
# action :nothing
|
|
@@ -19,11 +19,11 @@ module RuboCop
|
|
|
19
19
|
module Cop
|
|
20
20
|
module Chef
|
|
21
21
|
module Modernize
|
|
22
|
-
# It is
|
|
22
|
+
# It is no longer necessary to use respond_to?(:foo) or defined?(foo) in metadata. This was used to support new metadata methods in Chef 11 and early versions of Chef 12.
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# chef_version '>= 13' if respond_to?(:chef_version)
|
|
28
28
|
# chef_version '>= 13' if defined?(chef_version)
|
|
29
29
|
# chef_version '>= 13' unless defined?(Ridley::Chef::Cookbook::Metadata)
|
|
@@ -31,7 +31,7 @@ module RuboCop
|
|
|
31
31
|
# chef_version '>= 13'
|
|
32
32
|
# end
|
|
33
33
|
#
|
|
34
|
-
#
|
|
34
|
+
# # good
|
|
35
35
|
# chef_version '>= 13'
|
|
36
36
|
#
|
|
37
37
|
class RespondToInMetadata < Base
|
|
@@ -19,16 +19,16 @@ module RuboCop
|
|
|
19
19
|
module Cop
|
|
20
20
|
module Chef
|
|
21
21
|
module Modernize
|
|
22
|
-
# In Chef Infra Client 12+
|
|
22
|
+
# In Chef Infra Client 12+ it is no longer necessary to gate the use of the provides methods in resources with `if respond_to?(:provides)` or `if defined? provides`.
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# provides :foo if respond_to?(:provides)
|
|
28
28
|
#
|
|
29
29
|
# provides :foo if defined? provides
|
|
30
30
|
#
|
|
31
|
-
#
|
|
31
|
+
# # good
|
|
32
32
|
# provides :foo
|
|
33
33
|
#
|
|
34
34
|
class RespondToProvides < Base
|
|
@@ -23,13 +23,13 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# sc_windows 'chef-client' do
|
|
28
28
|
# path "C:\\opscode\\chef\\bin"
|
|
29
29
|
# action :create
|
|
30
30
|
# end
|
|
31
31
|
#
|
|
32
|
-
#
|
|
32
|
+
# # good
|
|
33
33
|
# windows_service 'chef-client' do
|
|
34
34
|
# action :create
|
|
35
35
|
# binary_path_name "C:\\opscode\\chef\\bin"
|
|
@@ -23,13 +23,13 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# execute 'install package foo' do
|
|
28
28
|
# command "choco install --source=artifactory \"foo\" -y --no-progress --ignore-package-exit-codes"
|
|
29
29
|
# end
|
|
30
30
|
#
|
|
31
31
|
# powershell_script 'add artifactory choco source' do
|
|
32
|
-
# code "choco source add -n=artifactory -s='https://mycorp.jfrog.io/mycorp/api/nuget/chocolatey-remote' -u foo -p bar"
|
|
32
|
+
# code "choco source add -n=artifactory -s='https://mycorp.jfrog.io/mycorp/api/nuget/chocolatey-remote' -u foo -p bar"
|
|
33
33
|
# not_if 'choco source list | findstr artifactory'
|
|
34
34
|
# end
|
|
35
35
|
#
|
|
@@ -23,21 +23,21 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
27
|
-
#
|
|
28
|
-
#
|
|
29
|
-
#
|
|
30
|
-
#
|
|
31
|
-
#
|
|
32
|
-
#
|
|
26
|
+
# # bad
|
|
27
|
+
# apt_repository 'atom-ppa' do
|
|
28
|
+
# uri 'http://ppa.launchpad.net/webupd8team/atom/ubuntu'
|
|
29
|
+
# components ['main']
|
|
30
|
+
# keyserver 'keyserver.ubuntu.com'
|
|
31
|
+
# key 'C2518248EEA14886'
|
|
32
|
+
# end
|
|
33
33
|
#
|
|
34
|
-
#
|
|
35
|
-
#
|
|
36
|
-
#
|
|
37
|
-
#
|
|
38
|
-
#
|
|
39
|
-
#
|
|
40
|
-
#
|
|
34
|
+
# # good
|
|
35
|
+
# apt_repository 'atom-ppa' do
|
|
36
|
+
# uri 'ppa:webupd8team/atom'
|
|
37
|
+
# components ['main']
|
|
38
|
+
# keyserver 'keyserver.ubuntu.com'
|
|
39
|
+
# key 'C2518248EEA14886'
|
|
40
|
+
# end
|
|
41
41
|
#
|
|
42
42
|
class SimplifyAptPpaSetup < Base
|
|
43
43
|
extend AutoCorrector
|
|
@@ -23,7 +23,7 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# node['cloud']['provider'] == 'alibaba'
|
|
28
28
|
# node['cloud']['provider'] == 'ec2'
|
|
29
29
|
# node['cloud']['provider'] == 'gce'
|
|
@@ -35,7 +35,7 @@ module RuboCop
|
|
|
35
35
|
# node['cloud']['provider'] == 'digital_ocean'
|
|
36
36
|
# node['cloud']['provider'] == 'softlayer'
|
|
37
37
|
#
|
|
38
|
-
#
|
|
38
|
+
# # good
|
|
39
39
|
# alibaba?
|
|
40
40
|
# ec2?
|
|
41
41
|
# gce?
|
|
@@ -23,21 +23,21 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# %w(bmon htop vim curl).each do |pkg|
|
|
28
28
|
# package pkg do
|
|
29
29
|
# action :install
|
|
30
30
|
# end
|
|
31
31
|
# end
|
|
32
32
|
#
|
|
33
|
-
#
|
|
33
|
+
# # good
|
|
34
34
|
# package %w(bmon htop vim curl)
|
|
35
35
|
#
|
|
36
36
|
class UseMultipackageInstalls < Base
|
|
37
37
|
extend AutoCorrector
|
|
38
38
|
|
|
39
39
|
MSG = 'Pass an array of packages to package resources instead of iterating over an array of packages when using multi-package capable package subsystem such as apt, yum, chocolatey, dnf, or zypper. Multi-package installs are faster and simplify logs.'
|
|
40
|
-
MULTIPACKAGE_PLATS = %w(debian redhat suse amazon fedora scientific oracle rhel ubuntu centos
|
|
40
|
+
MULTIPACKAGE_PLATS = %w(debian redhat suse amazon fedora scientific oracle rhel ubuntu centos).freeze
|
|
41
41
|
|
|
42
42
|
def_node_matcher :platform_or_platform_family?, <<-PATTERN
|
|
43
43
|
(send (send nil? :node) :[] (str {"platform" "platform_family"}) )
|
|
@@ -23,10 +23,10 @@ module RuboCop
|
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# require File.expand_path('../../libraries/helpers', __FILE__)
|
|
28
28
|
#
|
|
29
|
-
#
|
|
29
|
+
# # good
|
|
30
30
|
# require_relative '../libraries/helpers'
|
|
31
31
|
#
|
|
32
32
|
class UseRequireRelative < Base
|
|
@@ -19,11 +19,11 @@ module RuboCop
|
|
|
19
19
|
module Cop
|
|
20
20
|
module Chef
|
|
21
21
|
module Modernize
|
|
22
|
-
# Don't include the windows default recipe that is either full of gem
|
|
22
|
+
# Don't include the windows default recipe that is either full of gem installs that are part of the Chef Infra Client, or empty (depends on version).
|
|
23
23
|
#
|
|
24
24
|
# @example
|
|
25
25
|
#
|
|
26
|
-
#
|
|
26
|
+
# # bad
|
|
27
27
|
# include_recipe 'windows::default'
|
|
28
28
|
# include_recipe 'windows'
|
|
29
29
|
#
|