cookstyle 7.32.2 → 7.32.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/cookstyle +6 -1
- data/config/chefstyle.yml +741 -0
- data/config/cookstyle.yml +46 -46
- data/config/default.yml +0 -2
- data/lib/cookstyle/chefstyle.rb +5 -0
- data/lib/cookstyle/version.rb +1 -1
- data/lib/cookstyle.rb +7 -15
- 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 +2 -2
- data/lib/rubocop/cop/chef/correctness/dnf_package_allow_downgrades.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 +1 -1
- 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 +2 -2
- data/lib/rubocop/cop/chef/correctness/metadata_malformed_version.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/metadata_missing_name.rb +1 -1
- data/lib/rubocop/cop/chef/correctness/metadata_missing_version.rb +1 -1
- 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 +1 -1
- 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 +1 -1
- data/lib/rubocop/cop/chef/correctness/powershell_delete_file.rb +2 -2
- data/lib/rubocop/cop/chef/correctness/powershell_file_exists.rb +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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_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 +2 -2
- 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 +1 -1
- data/lib/rubocop/cop/chef/deprecation/execute_path_property.rb +2 -2
- data/lib/rubocop/cop/chef/deprecation/execute_relative_creates_without_cwd.rb +2 -2
- 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 +2 -2
- data/lib/rubocop/cop/chef/deprecation/inherits_compat_resource.rb +2 -2
- 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 +1 -1
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- data/lib/rubocop/cop/chef/deprecation/resource_without_unified_mode_true.rb +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +1 -1
- data/lib/rubocop/cop/chef/effortless/node_policygroup.rb +1 -1
- data/lib/rubocop/cop/chef/effortless/node_roles.rb +1 -1
- 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 +1 -1
- 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 +2 -2
- 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 +3 -3
- 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 +1 -1
- data/lib/rubocop/cop/chef/modernize/empty_resource_initialize.rb +1 -1
- data/lib/rubocop/cop/chef/modernize/execute_apt_update.rb +2 -2
- 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 +2 -2
- 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 +2 -2
- data/lib/rubocop/cop/chef/modernize/powershell_install_windowsfeature.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/property_with_name_attribute.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/provides_initializer.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/resource_name_initializer.rb +2 -2
- data/lib/rubocop/cop/chef/modernize/resource_set_or_return.rb +2 -2
- 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 +2 -2
- data/lib/rubocop/cop/chef/modernize/respond_to_provides.rb +2 -2
- 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 +1 -1
- data/lib/rubocop/cop/chef/modernize/simplify_apt_ppa_setup.rb +2 -2
- 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 +2 -2
- 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 +1 -1
- 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 +2 -2
- data/lib/rubocop/cop/chef/redundant/ohai_attribute_to_string.rb +2 -2
- data/lib/rubocop/cop/chef/redundant/property_splat_regex.rb +2 -2
- 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 +1 -1
- data/lib/rubocop/cop/chef/redundant/sensitive_property_in_resource.rb +1 -1
- 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 +2 -2
- 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 +2 -2
- data/lib/rubocop/cop/chef/sharing/invalid_license_string.rb +2 -2
- 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/comment_sentence_spacing.rb +1 -1
- 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 +2 -2
- data/lib/rubocop/cop/chef/style/true_false_resource_properties.rb +2 -2
- data/lib/rubocop/cop/chef/style/unnecessary_os_check.rb +2 -2
- data/lib/rubocop/cop/chef/style/unnecessary_platform_case_statement.rb +2 -2
- data/lib/rubocop/cop/chef/style/use_platform_helpers.rb +2 -2
- data/lib/rubocop/cop/chefstyle/ruby/gemspec_license.rb +55 -0
- data/lib/rubocop/cop/chefstyle/ruby/gemspec_require_rubygems.rb +46 -0
- data/lib/rubocop/cop/chefstyle/ruby/legacy_powershell_out_methods.rb +36 -0
- data/lib/rubocop/cop/chefstyle/ruby/require_net_https.rb +54 -0
- data/lib/rubocop/cop/chefstyle/ruby/unless_defined_require.rb +122 -0
- data/lib/rubocop/cop/inspec/deprecation/attribute_default.rb +2 -2
- data/lib/rubocop/cop/inspec/deprecation/attribute_helper.rb +2 -2
- metadata +9 -4
- data/config/disable_all.yml +0 -987
- data/config/upstream.yml +0 -5132
data/config/cookstyle.yml
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
AllCops:
|
2
2
|
SuggestExtensions: false
|
3
|
+
NewCops: disable
|
4
|
+
DisabledByDefault: true
|
3
5
|
TargetRubyVersion: 2.5
|
4
6
|
TargetChefVersion: ~
|
5
7
|
inherit_mode:
|
@@ -2371,10 +2373,10 @@ Chef/Security/SshPrivateKey:
|
|
2371
2373
|
|
2372
2374
|
Layout/AccessModifierIndentation:
|
2373
2375
|
Enabled: true
|
2374
|
-
Layout/AlignArray:
|
2375
|
-
|
2376
|
-
Layout/AlignHash:
|
2377
|
-
|
2376
|
+
# Layout/AlignArray: TODO broken with rubocop 1.25.1 move
|
2377
|
+
# Enabled: true
|
2378
|
+
# Layout/AlignHash: TODO broken with rubocop 1.25.1 move
|
2379
|
+
# Enabled: true
|
2378
2380
|
Style/AndOr:
|
2379
2381
|
Enabled: true
|
2380
2382
|
Style/ArrayJoin:
|
@@ -2393,8 +2395,6 @@ Layout/BlockEndNewline:
|
|
2393
2395
|
Enabled: true
|
2394
2396
|
Style/BlockDelimiters:
|
2395
2397
|
Enabled: true
|
2396
|
-
Style/BracesAroundHashParameters:
|
2397
|
-
Enabled: true
|
2398
2398
|
Style/CaseEquality:
|
2399
2399
|
Enabled: true
|
2400
2400
|
Layout/CaseIndentation:
|
@@ -2425,8 +2425,8 @@ Naming/ConstantName:
|
|
2425
2425
|
Enabled: true
|
2426
2426
|
Style/DefWithParentheses:
|
2427
2427
|
Enabled: true
|
2428
|
-
Style/DeprecatedHashMethods:
|
2429
|
-
|
2428
|
+
# Style/DeprecatedHashMethods: TODO broken with rubocop 1.25.1 move
|
2429
|
+
# Enabled: true
|
2430
2430
|
Layout/DotPosition:
|
2431
2431
|
Enabled: true
|
2432
2432
|
Style/EachWithObject:
|
@@ -2482,12 +2482,12 @@ Layout/IndentationWidth:
|
|
2482
2482
|
Enabled: true
|
2483
2483
|
Style/IdenticalConditionalBranches:
|
2484
2484
|
Enabled: true
|
2485
|
-
Layout/IndentArray:
|
2486
|
-
|
2487
|
-
Layout/IndentAssignment:
|
2488
|
-
|
2489
|
-
Layout/IndentHash:
|
2490
|
-
|
2485
|
+
# Layout/IndentArray: TODO broken with rubocop 1.25.1 move
|
2486
|
+
# Enabled: true
|
2487
|
+
# Layout/IndentAssignment: TODO broken with rubocop 1.25.1 move
|
2488
|
+
# Enabled: true
|
2489
|
+
# Layout/IndentHash: TODO broken with rubocop 1.25.1 move
|
2490
|
+
# Enabled: true
|
2491
2491
|
Style/InfiniteLoop:
|
2492
2492
|
Enabled: true
|
2493
2493
|
Style/Lambda:
|
@@ -2498,8 +2498,8 @@ Layout/LeadingCommentSpace:
|
|
2498
2498
|
Enabled: true
|
2499
2499
|
Style/LineEndConcatenation:
|
2500
2500
|
Enabled: true
|
2501
|
-
Style/MethodCallParentheses:
|
2502
|
-
|
2501
|
+
# Style/MethodCallParentheses: TODO broken with rubocop 1.25.1 move
|
2502
|
+
# Enabled: true
|
2503
2503
|
Style/MethodDefParentheses:
|
2504
2504
|
Enabled: true
|
2505
2505
|
Style/MultilineBlockChain:
|
@@ -2536,8 +2536,8 @@ Style/Not:
|
|
2536
2536
|
Enabled: true
|
2537
2537
|
Style/OneLineConditional:
|
2538
2538
|
Enabled: true
|
2539
|
-
Naming/OpMethod:
|
2540
|
-
|
2539
|
+
# Naming/OpMethod: TODO broken with rubocop 1.25.1 move
|
2540
|
+
# Enabled: true
|
2541
2541
|
Style/OptionalArguments:
|
2542
2542
|
Enabled: true
|
2543
2543
|
Style/ParallelAssignment:
|
@@ -2641,12 +2641,12 @@ Style/TrivialAccessors:
|
|
2641
2641
|
Enabled: true
|
2642
2642
|
Style/UnlessElse:
|
2643
2643
|
Enabled: true
|
2644
|
-
Style/UnneededCapitalW:
|
2645
|
-
|
2646
|
-
Style/UnneededInterpolation:
|
2647
|
-
|
2648
|
-
Style/UnneededPercentQ:
|
2649
|
-
|
2644
|
+
# Style/UnneededCapitalW: TODO broken with rubocop 1.25.1 move
|
2645
|
+
# Enabled: true
|
2646
|
+
# Style/UnneededInterpolation: TODO broken with rubocop 1.25.1 move
|
2647
|
+
# Enabled: true
|
2648
|
+
# Style/UnneededPercentQ: TODO broken with rubocop 1.25.1 move
|
2649
|
+
# Enabled: true
|
2650
2650
|
Style/TrailingUnderscoreVariable:
|
2651
2651
|
Enabled: true
|
2652
2652
|
Style/VariableInterpolation:
|
@@ -2680,8 +2680,8 @@ Lint/DeprecatedClassMethods:
|
|
2680
2680
|
Enabled: true
|
2681
2681
|
Lint/DuplicateMethods:
|
2682
2682
|
Enabled: true
|
2683
|
-
Lint/DuplicatedKey:
|
2684
|
-
|
2683
|
+
# Lint/DuplicatedKey: TODO broken with rubocop 1.25.1 move
|
2684
|
+
# Enabled: true
|
2685
2685
|
Lint/EachWithObjectArgument:
|
2686
2686
|
Enabled: true
|
2687
2687
|
Lint/ElseLayout:
|
@@ -2693,8 +2693,8 @@ Lint/EmptyInterpolation:
|
|
2693
2693
|
Layout/EndAlignment:
|
2694
2694
|
Enabled: true
|
2695
2695
|
AutoCorrect: true
|
2696
|
-
Lint/EndInMethod:
|
2697
|
-
|
2696
|
+
# Lint/EndInMethod: TODO broken with rubocop 1.25.1 move
|
2697
|
+
# Enabled: true
|
2698
2698
|
Lint/EnsureReturn:
|
2699
2699
|
Enabled: true
|
2700
2700
|
Security/Eval:
|
@@ -2703,8 +2703,8 @@ Lint/FloatOutOfRange:
|
|
2703
2703
|
Enabled: true
|
2704
2704
|
Lint/FormatParameterMismatch:
|
2705
2705
|
Enabled: true
|
2706
|
-
Lint/HandleExceptions:
|
2707
|
-
|
2706
|
+
# Lint/HandleExceptions: TODO broken with rubocop 1.25.1 move
|
2707
|
+
# Enabled: true
|
2708
2708
|
Lint/ImplicitStringConcatenation:
|
2709
2709
|
Enabled: true
|
2710
2710
|
Exclude:
|
@@ -2733,12 +2733,12 @@ Lint/RescueException:
|
|
2733
2733
|
Enabled: true
|
2734
2734
|
Lint/ShadowingOuterLocalVariable:
|
2735
2735
|
Enabled: true
|
2736
|
-
Lint/StringConversionInInterpolation:
|
2737
|
-
|
2736
|
+
# Lint/StringConversionInInterpolation: TODO broken with rubocop 1.25.1 move
|
2737
|
+
# Enabled: true
|
2738
2738
|
Lint/UnderscorePrefixedVariableName:
|
2739
2739
|
Enabled: true
|
2740
|
-
Lint/UnneededCopDisableDirective:
|
2741
|
-
|
2740
|
+
# Lint/UnneededCopDisableDirective: TODO broken with rubocop 1.25.1 move
|
2741
|
+
# Enabled: true
|
2742
2742
|
Lint/UnusedBlockArgument:
|
2743
2743
|
Enabled: true
|
2744
2744
|
Lint/UnusedMethodArgument:
|
@@ -2749,8 +2749,8 @@ Lint/UselessAccessModifier:
|
|
2749
2749
|
Enabled: true
|
2750
2750
|
Lint/UselessAssignment:
|
2751
2751
|
Enabled: true
|
2752
|
-
Lint/UselessComparison:
|
2753
|
-
|
2752
|
+
# Lint/UselessComparison: TODO broken with rubocop 1.25.1 move
|
2753
|
+
# Enabled: true
|
2754
2754
|
Lint/UselessElseWithoutRescue:
|
2755
2755
|
Enabled: true
|
2756
2756
|
Lint/UselessSetterCall:
|
@@ -2867,8 +2867,8 @@ Bundler/DuplicatedGem:
|
|
2867
2867
|
Enabled: true
|
2868
2868
|
|
2869
2869
|
# This results in very confusing code to read with little perf benefit
|
2870
|
-
Performance/Casecmp:
|
2871
|
-
|
2870
|
+
# Performance/Casecmp: # TODO: move to cookstyle project .rubocop.yml?
|
2871
|
+
# Enabled: false
|
2872
2872
|
|
2873
2873
|
# This comes with changing the ruby target to 2.3+
|
2874
2874
|
Style/FrozenStringLiteralComment:
|
@@ -2926,8 +2926,8 @@ Style/MinMax:
|
|
2926
2926
|
Lint/UriRegexp:
|
2927
2927
|
Enabled: true
|
2928
2928
|
|
2929
|
-
Performance/UriDefaultParser:
|
2930
|
-
|
2929
|
+
# Performance/UriDefaultParser: # TODO: move to cookstyle project .rubocop.yml?
|
2930
|
+
# Enabled: true
|
2931
2931
|
|
2932
2932
|
# :true or :false seems like a horrible idea
|
2933
2933
|
Lint/BooleanSymbol:
|
@@ -2938,16 +2938,16 @@ Style/RedundantConditional:
|
|
2938
2938
|
Enabled: true
|
2939
2939
|
|
2940
2940
|
# catches people writing a regex check wrong
|
2941
|
-
Lint/RegexpInCondition:
|
2942
|
-
|
2941
|
+
# Lint/RegexpInCondition: TODO broken with rubocop 1.25.1 move
|
2942
|
+
# Enabled: true
|
2943
2943
|
|
2944
2944
|
# Avoids pointless / complex code
|
2945
2945
|
Lint/RedundantWithObject:
|
2946
2946
|
Enabled: true
|
2947
2947
|
|
2948
2948
|
# avoid requiring things that come for free
|
2949
|
-
Lint/UnneededRequireStatement:
|
2950
|
-
|
2949
|
+
# Lint/UnneededRequireStatement: TODO broken with rubocop 1.25.1 move
|
2950
|
+
# Enabled: true
|
2951
2951
|
|
2952
2952
|
# Avoid poorly formatted methods
|
2953
2953
|
Style/TrailingBodyOnMethodDefinition:
|
@@ -2970,8 +2970,8 @@ Lint/BigDecimalNew:
|
|
2970
2970
|
Enabled: true
|
2971
2971
|
|
2972
2972
|
# remove bogus rubocop comments. We already enabled Disable directives
|
2973
|
-
Lint/UnneededCopEnableDirective:
|
2974
|
-
|
2973
|
+
# Lint/UnneededCopEnableDirective: TODO broken with rubocop 1.25.1 move
|
2974
|
+
# Enabled: true
|
2975
2975
|
|
2976
2976
|
# get people on a much simpler ruby 2.4+ way of doing things
|
2977
2977
|
Style/UnpackFirst:
|
data/config/default.yml
CHANGED
data/lib/cookstyle/version.rb
CHANGED
data/lib/cookstyle.rb
CHANGED
@@ -15,26 +15,13 @@ require_relative 'rubocop/monkey_patches/base'
|
|
15
15
|
require_relative 'rubocop/monkey_patches/team'
|
16
16
|
require_relative 'rubocop/monkey_patches/registry_cop'
|
17
17
|
|
18
|
-
module RuboCop
|
19
|
-
class ConfigLoader
|
20
|
-
RUBOCOP_HOME.gsub!(
|
21
|
-
/^.*$/,
|
22
|
-
File.realpath(File.join(__dir__, '..'))
|
23
|
-
)
|
24
|
-
|
25
|
-
DEFAULT_FILE.gsub!(
|
26
|
-
/^.*$/,
|
27
|
-
File.join(RUBOCOP_HOME, 'config', 'default.yml')
|
28
|
-
)
|
29
|
-
end
|
30
|
-
end
|
31
|
-
|
32
18
|
# Cookstyle patches the RuboCop tool to set a new default configuration that
|
33
19
|
# is vendored in the Cookstyle codebase.
|
34
20
|
module Cookstyle
|
35
21
|
# @return [String] the absolute path to the main RuboCop configuration YAML file
|
36
22
|
def self.config
|
37
|
-
|
23
|
+
config_file = const_defined?('CHEFSTYLE_CONFIG') ? 'chefstyle.yml' : 'default.yml'
|
24
|
+
File.realpath(File.join(__dir__, '..', 'config', config_file))
|
38
25
|
end
|
39
26
|
end
|
40
27
|
|
@@ -51,3 +38,8 @@ Dir.glob(__dir__ + '/rubocop/cop/**/*.rb') do |file|
|
|
51
38
|
|
52
39
|
require_relative file # not actually relative but require_relative is faster
|
53
40
|
end
|
41
|
+
|
42
|
+
# stub default value of TargetChefVersion to avoid STDERR noise
|
43
|
+
RuboCop::ConfigLoader.default_configuration['AllCops']['TargetChefVersion'] = '~'
|
44
|
+
|
45
|
+
RuboCop::ConfigLoader.default_configuration = RuboCop::ConfigLoader.configuration_from_file(Cookstyle.config)
|
@@ -23,14 +23,14 @@ module RuboCop
|
|
23
23
|
#
|
24
24
|
# @example
|
25
25
|
#
|
26
|
-
#
|
26
|
+
# ### incorrect
|
27
27
|
# template '/etc/foo' do
|
28
28
|
# mode '0644'
|
29
29
|
# source 'foo.erb'
|
30
30
|
# only_if { 'test -f /etc/foo' }
|
31
31
|
# end
|
32
32
|
#
|
33
|
-
#
|
33
|
+
# ### correct
|
34
34
|
# template '/etc/foo' do
|
35
35
|
# mode '0644'
|
36
36
|
# source 'foo.erb'
|
@@ -23,10 +23,10 @@ module RuboCop
|
|
23
23
|
#
|
24
24
|
# @example
|
25
25
|
#
|
26
|
-
#
|
26
|
+
# ### incorrect
|
27
27
|
# Chef::Application.fatal!('Something horrible happened!')
|
28
28
|
#
|
29
|
-
#
|
29
|
+
# ### correct
|
30
30
|
# raise "Something horrible happened!"
|
31
31
|
#
|
32
32
|
class ChefApplicationFatal < Base
|
@@ -23,7 +23,7 @@ module RuboCop
|
|
23
23
|
#
|
24
24
|
# @example
|
25
25
|
#
|
26
|
-
#
|
26
|
+
# ### incorrect
|
27
27
|
# cookbook_file '/logs/foo/error.log' do
|
28
28
|
# source 'error.log'
|
29
29
|
# only_if { system('wget https://www.bar.com/foobar.txt -O /dev/null') }
|
@@ -34,7 +34,7 @@ module RuboCop
|
|
34
34
|
# only_if { shell_out('wget https://www.bar.com/foobar.txt -O /dev/null').exitstatus == 0 }
|
35
35
|
# end
|
36
36
|
#
|
37
|
-
#
|
37
|
+
# ### correct
|
38
38
|
# cookbook_file '/logs/foo/error.log' do
|
39
39
|
# source 'error.log'
|
40
40
|
# only_if 'wget https://www.bar.com/foobar.txt -O /dev/null'
|
@@ -23,13 +23,13 @@ module RuboCop
|
|
23
23
|
#
|
24
24
|
# @example
|
25
25
|
#
|
26
|
-
#
|
26
|
+
# ### incorrect
|
27
27
|
# dnf_package 'nginx' do
|
28
28
|
# version '1.2.3'
|
29
29
|
# allow_downgrades true
|
30
30
|
# end
|
31
31
|
#
|
32
|
-
#
|
32
|
+
# ### correct
|
33
33
|
# dnf_package 'nginx' do
|
34
34
|
# version '1.2.3'
|
35
35
|
# end
|
@@ -23,13 +23,13 @@ module RuboCop
|
|
23
23
|
#
|
24
24
|
# @example
|
25
25
|
#
|
26
|
-
#
|
26
|
+
# ### incorrect
|
27
27
|
# ::Chef::Recipe.send(:include, Filebeat::Helpers)
|
28
28
|
# ::Chef::Provider.send(:include, Filebeat::Helpers)
|
29
29
|
# ::Chef::Recipe.include Filebeat::Helpers
|
30
30
|
# ::Chef::Provider.include Filebeat::Helpers
|
31
31
|
#
|
32
|
-
#
|
32
|
+
# ### correct
|
33
33
|
# ::Chef::DSL::Recipe.send(:include, Filebeat::Helpers) # covers previous Recipe & Provider classes
|
34
34
|
#
|
35
35
|
class IncorrectLibraryInjection < Base
|
@@ -23,7 +23,7 @@ module RuboCop
|
|
23
23
|
#
|
24
24
|
# @example
|
25
25
|
#
|
26
|
-
#
|
26
|
+
# ### incorrect
|
27
27
|
#
|
28
28
|
# template '/etc/www/configures-apache.conf' do
|
29
29
|
# notifies :restart, service['apache'], :immediately
|
@@ -33,7 +33,7 @@ module RuboCop
|
|
33
33
|
# notifies :restart, service[apache], :immediately
|
34
34
|
# end
|
35
35
|
#
|
36
|
-
#
|
36
|
+
# ### correct
|
37
37
|
#
|
38
38
|
# template '/etc/www/configures-apache.conf' do
|
39
39
|
# notifies :restart, 'service[apache]', :immediately
|
@@ -23,13 +23,13 @@ module RuboCop
|
|
23
23
|
#
|
24
24
|
# @example
|
25
25
|
#
|
26
|
-
#
|
26
|
+
# ### incorrect
|
27
27
|
#
|
28
28
|
# template '/etc/www/configures-apache.conf' do
|
29
29
|
# notifies :restart, 'service[apache]', :nope
|
30
30
|
# end
|
31
31
|
#
|
32
|
-
#
|
32
|
+
# ### correct
|
33
33
|
#
|
34
34
|
# template '/etc/www/configures-apache.conf' do
|
35
35
|
# notifies :restart, 'service[apache]', :immediately
|
@@ -23,11 +23,11 @@ module RuboCop
|
|
23
23
|
#
|
24
24
|
# @example
|
25
25
|
#
|
26
|
-
#
|
26
|
+
# ### incorrect
|
27
27
|
# platform_family?('redhat')
|
28
28
|
# platform_family?('sles')
|
29
29
|
#
|
30
|
-
#
|
30
|
+
# ### incorrect
|
31
31
|
# platform_family?('rhel')
|
32
32
|
# platform_family?('suse')
|
33
33
|
#
|
@@ -23,12 +23,12 @@ module RuboCop
|
|
23
23
|
#
|
24
24
|
# @example
|
25
25
|
#
|
26
|
-
#
|
26
|
+
# ### incorrect
|
27
27
|
# platform?('darwin')
|
28
28
|
# platform?('rhel')
|
29
29
|
# platform?('sles')
|
30
30
|
#
|
31
|
-
#
|
31
|
+
# ### correct
|
32
32
|
# platform?('mac_os_x')
|
33
33
|
# platform?('redhat')
|
34
34
|
# platform?('suse')
|
@@ -23,13 +23,13 @@ module RuboCop
|
|
23
23
|
#
|
24
24
|
# @example
|
25
25
|
#
|
26
|
-
#
|
26
|
+
# ### incorrect
|
27
27
|
# value_for_platform_family(
|
28
28
|
# %w(rhel sles) => 'foo',
|
29
29
|
# %w(mac) => 'foo'
|
30
30
|
# )
|
31
31
|
#
|
32
|
-
#
|
32
|
+
# ### correct
|
33
33
|
# value_for_platform_family(
|
34
34
|
# %w(rhel suse) => 'foo',
|
35
35
|
# %w(mac_os_x) => 'foo'
|
@@ -23,12 +23,12 @@ module RuboCop
|
|
23
23
|
#
|
24
24
|
# @example
|
25
25
|
#
|
26
|
-
#
|
26
|
+
# ### incorrect
|
27
27
|
# value_for_platform(
|
28
28
|
# %w(rhel mac_os_x_server) => { 'default' => 'foo' },
|
29
29
|
# %w(sles) => { 'default' => 'bar' }
|
30
30
|
# )
|
31
|
-
#
|
31
|
+
# ### correct
|
32
32
|
# value_for_platform(
|
33
33
|
# %w(redhat mac_os_x) => { 'default' => 'foo' },
|
34
34
|
# %w(opensuseleap) => { 'default' => 'bar' }
|
@@ -23,10 +23,10 @@ module RuboCop
|
|
23
23
|
#
|
24
24
|
# @example
|
25
25
|
#
|
26
|
-
#
|
26
|
+
# ### incorrect
|
27
27
|
# property :Something, String, default: node['hostname']
|
28
28
|
#
|
29
|
-
#
|
29
|
+
# ### correct
|
30
30
|
# property :Something, String, default: lazy { node['hostname'] }
|
31
31
|
#
|
32
32
|
class LazyEvalNodeAttributeDefaults < Base
|
@@ -23,14 +23,14 @@ module RuboCop
|
|
23
23
|
#
|
24
24
|
# @example
|
25
25
|
#
|
26
|
-
#
|
26
|
+
# ### incorrect
|
27
27
|
# template '/etc/foo' do
|
28
28
|
# mode '0644'
|
29
29
|
# source 'foo.erb'
|
30
30
|
# only_if { lazy { ::File.exist?('/etc/foo')} }
|
31
31
|
# end
|
32
32
|
#
|
33
|
-
#
|
33
|
+
# ### correct
|
34
34
|
# template '/etc/foo' do
|
35
35
|
# mode '0644'
|
36
36
|
# source 'foo.erb'
|
@@ -23,14 +23,14 @@ module RuboCop
|
|
23
23
|
#
|
24
24
|
# @example
|
25
25
|
#
|
26
|
-
#
|
26
|
+
# ### incorrect
|
27
27
|
# macos_userdefaults 'set a value' do
|
28
28
|
# global true
|
29
29
|
# key 'key'
|
30
30
|
# type 'boolean'
|
31
31
|
# end
|
32
32
|
#
|
33
|
-
#
|
33
|
+
# ### correct
|
34
34
|
# macos_userdefaults 'set a value' do
|
35
35
|
# global true
|
36
36
|
# key 'key'
|
@@ -23,12 +23,12 @@ module RuboCop
|
|
23
23
|
#
|
24
24
|
# @example
|
25
25
|
#
|
26
|
-
#
|
26
|
+
# ### incorrect
|
27
27
|
# value_for_platform(
|
28
28
|
# %w(redhat oracle) => 'baz'
|
29
29
|
# )
|
30
30
|
#
|
31
|
-
#
|
31
|
+
# ### correct
|
32
32
|
# value_for_platform(
|
33
33
|
# %w(redhat oracle) => {
|
34
34
|
# '5' => 'foo',
|
@@ -23,11 +23,11 @@ module RuboCop
|
|
23
23
|
#
|
24
24
|
# @example
|
25
25
|
#
|
26
|
-
#
|
26
|
+
# ### incorrect
|
27
27
|
# depends 'some_awesome_cookbook' '= 4.5.5'
|
28
28
|
# depends 'some_other_cool_cookbook' '< 8.0'
|
29
29
|
#
|
30
|
-
#
|
30
|
+
# ### correct
|
31
31
|
# depends 'some_awesome_cookbook', '= 4.5.5'
|
32
32
|
# depends 'some_other_cool_cookbook', '< 8.0'
|
33
33
|
#
|
@@ -24,10 +24,10 @@ module RuboCop
|
|
24
24
|
#
|
25
25
|
# @example
|
26
26
|
#
|
27
|
-
#
|
27
|
+
# ### incorrect
|
28
28
|
# node.normal['foo'] = true
|
29
29
|
#
|
30
|
-
#
|
30
|
+
# ### correct
|
31
31
|
# node.default['foo'] = true
|
32
32
|
# node.override['foo'] = true
|
33
33
|
# node.force_default['foo'] = true
|
@@ -24,10 +24,10 @@ module RuboCop
|
|
24
24
|
#
|
25
25
|
# @example
|
26
26
|
#
|
27
|
-
#
|
27
|
+
# ### incorrect
|
28
28
|
# node.normal_unless['foo'] = true
|
29
29
|
#
|
30
|
-
#
|
30
|
+
# ### correct
|
31
31
|
# node.default_unless['foo'] = true
|
32
32
|
# node.override_unless['foo'] = true
|
33
33
|
# node.force_default_unless['foo'] = true
|