chef 16.18.30 → 17.0.242
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/Gemfile +9 -22
- data/README.md +1 -1
- data/Rakefile +2 -2
- data/chef-universal-mingw32.gemspec +1 -2
- data/chef.gemspec +7 -10
- data/lib/chef/action_collection.rb +1 -1
- data/lib/chef/application/base.rb +1 -1
- data/lib/chef/application.rb +1 -1
- data/lib/chef/applications.rb +0 -1
- data/lib/chef/chef_fs/command_line.rb +5 -2
- data/lib/chef/chef_fs/file_system.rb +9 -10
- data/lib/chef/client.rb +5 -5
- data/lib/chef/compliance/default_attributes.rb +4 -3
- data/lib/chef/compliance/fetcher/automate.rb +0 -7
- data/lib/chef/compliance/reporter/automate.rb +17 -7
- data/lib/chef/compliance/reporter/chef_server_automate.rb +11 -6
- data/lib/chef/compliance/reporter/cli.rb +77 -0
- data/lib/chef/compliance/reporter/compliance_enforcer.rb +4 -0
- data/lib/chef/compliance/reporter/json_file.rb +8 -1
- data/lib/chef/compliance/runner.rb +65 -27
- data/lib/chef/cookbook/gem_installer.rb +1 -5
- data/lib/chef/cookbook/synchronizer.rb +3 -5
- data/lib/chef/cookbook_loader.rb +2 -4
- data/lib/chef/cookbook_uploader.rb +0 -1
- data/lib/chef/cookbook_version.rb +4 -26
- data/lib/chef/data_bag_item.rb +11 -2
- data/lib/chef/data_collector/run_end_message.rb +2 -2
- data/lib/chef/delayed_evaluator.rb +4 -0
- data/lib/chef/deprecated.rb +6 -12
- data/lib/chef/dsl/chef_vault.rb +6 -6
- data/lib/chef/dsl/reboot_pending.rb +1 -2
- data/lib/chef/exceptions.rb +0 -3
- data/lib/chef/formatters/error_inspectors/resource_failure_inspector.rb +20 -22
- data/lib/chef/formatters/error_mapper.rb +2 -2
- data/lib/chef/group.rb +75 -0
- data/lib/chef/http.rb +5 -5
- data/lib/chef/mixin/checksum.rb +0 -6
- data/lib/chef/mixin/get_source_from_package.rb +1 -1
- data/lib/chef/mixin/powershell_exec.rb +26 -7
- data/lib/chef/node/attribute.rb +9 -24
- data/lib/chef/node/immutable_collections.rb +13 -0
- data/lib/chef/node/mixin/deep_merge_cache.rb +14 -10
- data/lib/chef/node.rb +19 -20
- data/lib/chef/org.rb +3 -2
- data/lib/chef/platform/query_helpers.rb +2 -2
- data/lib/chef/policy_builder/policyfile.rb +0 -5
- data/lib/chef/property.rb +18 -0
- data/lib/chef/provider/cron.rb +2 -6
- data/lib/chef/provider/execute.rb +2 -1
- data/lib/chef/provider/file.rb +3 -3
- data/lib/chef/provider/git.rb +5 -7
- data/lib/chef/provider/group/dscl.rb +1 -1
- data/lib/chef/provider/group/groupadd.rb +3 -3
- data/lib/chef/provider/group/groupmod.rb +3 -3
- data/lib/chef/provider/group/pw.rb +3 -3
- data/lib/chef/provider/ifconfig.rb +2 -2
- data/lib/chef/provider/link.rb +2 -2
- data/lib/chef/provider/mount/aix.rb +3 -3
- data/lib/chef/provider/mount/mount.rb +5 -5
- data/lib/chef/provider/mount/windows.rb +1 -1
- data/lib/chef/provider/mount.rb +5 -5
- data/lib/chef/provider/package/apt.rb +27 -1
- data/lib/chef/provider/package/deb.rb +3 -3
- data/lib/chef/provider/package/dnf/dnf_helper.py +1 -1
- data/lib/chef/provider/package/portage.rb +2 -2
- data/lib/chef/provider/package/powershell.rb +0 -5
- data/lib/chef/provider/package/rubygems.rb +9 -15
- data/lib/chef/provider/package/windows.rb +3 -5
- data/lib/chef/provider/package/yum/yum_helper.py +11 -1
- data/lib/chef/provider/package.rb +17 -21
- data/lib/chef/provider/route.rb +2 -2
- data/lib/chef/provider/service/aixinit.rb +1 -1
- data/lib/chef/provider/service/debian.rb +1 -1
- data/lib/chef/provider/service/freebsd.rb +15 -21
- data/lib/chef/provider/service/macosx.rb +4 -4
- data/lib/chef/provider/service/systemd.rb +43 -14
- data/lib/chef/provider/service/upstart.rb +2 -13
- data/lib/chef/provider/service/windows.rb +12 -12
- data/lib/chef/provider/service.rb +6 -6
- data/lib/chef/provider/subversion.rb +10 -12
- data/lib/chef/provider/systemd_unit.rb +36 -10
- data/lib/chef/provider/template/content.rb +3 -7
- data/lib/chef/provider/user/dscl.rb +1 -1
- data/lib/chef/provider/user/mac.rb +17 -20
- data/lib/chef/provider/user/pw.rb +1 -1
- data/lib/chef/provider/user/windows.rb +1 -1
- data/lib/chef/provider/user.rb +2 -2
- data/lib/chef/provider/zypper_repository.rb +2 -2
- data/lib/chef/provider.rb +1 -1
- data/lib/chef/providers.rb +0 -1
- data/lib/chef/resource/alternatives.rb +6 -6
- data/lib/chef/resource/apt_package.rb +1 -1
- data/lib/chef/resource/apt_preference.rb +2 -2
- data/lib/chef/resource/apt_repository.rb +6 -6
- data/lib/chef/resource/apt_update.rb +3 -2
- data/lib/chef/resource/archive_file.rb +8 -9
- data/lib/chef/resource/breakpoint.rb +1 -1
- data/lib/chef/resource/build_essential.rb +2 -6
- data/lib/chef/resource/chef_client_config.rb +2 -2
- data/lib/chef/resource/chef_client_cron.rb +4 -4
- data/lib/chef/resource/chef_client_launchd.rb +3 -3
- data/lib/chef/resource/chef_client_scheduled_task.rb +1 -1
- data/lib/chef/resource/chef_client_systemd_timer.rb +2 -2
- data/lib/chef/resource/chef_client_trusted_certificate.rb +0 -1
- data/lib/chef/resource/chef_handler.rb +3 -7
- data/lib/chef/resource/chef_sleep.rb +1 -1
- data/lib/chef/resource/chef_vault_secret.rb +3 -8
- data/lib/chef/resource/chocolatey_config.rb +2 -6
- data/lib/chef/resource/chocolatey_feature.rb +2 -6
- data/lib/chef/resource/chocolatey_source.rb +4 -10
- data/lib/chef/resource/cron/_cron_shared.rb +2 -2
- data/lib/chef/resource/cron_access.rb +2 -4
- data/lib/chef/resource/dmg_package.rb +6 -10
- data/lib/chef/resource/dpkg_package.rb +1 -1
- data/lib/chef/resource/execute.rb +6 -1
- data/lib/chef/resource/file.rb +1 -1
- data/lib/chef/resource/group.rb +2 -2
- data/lib/chef/resource/homebrew_cask.rb +5 -15
- data/lib/chef/resource/homebrew_tap.rb +2 -6
- data/lib/chef/resource/hostname.rb +21 -17
- data/lib/chef/resource/http_request.rb +1 -1
- data/lib/chef/resource/kernel_module.rb +6 -17
- data/lib/chef/resource/locale.rb +3 -4
- data/lib/chef/resource/lwrp_base.rb +4 -0
- data/lib/chef/resource/macos_userdefaults.rb +10 -14
- data/lib/chef/resource/mdadm.rb +53 -7
- data/lib/chef/resource/mount.rb +3 -2
- data/lib/chef/resource/openssl_ec_private_key.rb +2 -2
- data/lib/chef/resource/openssl_rsa_private_key.rb +1 -1
- data/lib/chef/resource/openssl_x509_certificate.rb +2 -2
- data/lib/chef/resource/plist.rb +7 -7
- data/lib/chef/resource/powershell_script.rb +1 -1
- data/lib/chef/resource/remote_file.rb +1 -1
- data/lib/chef/resource/rhsm_errata.rb +16 -1
- data/lib/chef/resource/rhsm_errata_level.rb +10 -1
- data/lib/chef/resource/rhsm_register.rb +12 -23
- data/lib/chef/resource/rhsm_repo.rb +2 -6
- data/lib/chef/resource/rhsm_subscription.rb +7 -11
- data/lib/chef/resource/scm/git.rb +1 -1
- data/lib/chef/resource/sudo.rb +6 -6
- data/lib/chef/resource/support/client.erb +2 -6
- data/lib/chef/resource/sysctl.rb +2 -6
- data/lib/chef/resource/systemd_unit.rb +3 -3
- data/lib/chef/resource/template.rb +1 -1
- data/lib/chef/resource/timezone.rb +1 -3
- data/lib/chef/resource/user/mac_user.rb +1 -1
- data/lib/chef/resource/user_ulimit.rb +2 -3
- data/lib/chef/resource/windows_ad_join.rb +2 -6
- data/lib/chef/resource/windows_audit_policy.rb +1 -1
- data/lib/chef/resource/windows_auto_run.rb +2 -5
- data/lib/chef/resource/windows_certificate.rb +207 -73
- data/lib/chef/resource/windows_dfs_folder.rb +2 -6
- data/lib/chef/resource/windows_dfs_namespace.rb +2 -6
- data/lib/chef/resource/windows_dfs_server.rb +1 -3
- data/lib/chef/resource/windows_dns_record.rb +2 -6
- data/lib/chef/resource/windows_dns_zone.rb +2 -6
- data/lib/chef/resource/windows_env.rb +5 -4
- data/lib/chef/resource/windows_feature.rb +3 -9
- data/lib/chef/resource/windows_feature_dism.rb +2 -6
- data/lib/chef/resource/windows_feature_powershell.rb +3 -3
- data/lib/chef/resource/windows_firewall_profile.rb +4 -4
- data/lib/chef/resource/windows_firewall_rule.rb +2 -5
- data/lib/chef/resource/windows_font.rb +2 -4
- data/lib/chef/resource/windows_pagefile.rb +2 -6
- data/lib/chef/resource/windows_path.rb +2 -2
- data/lib/chef/resource/windows_printer.rb +4 -4
- data/lib/chef/resource/windows_printer_port.rb +6 -6
- data/lib/chef/resource/windows_security_policy.rb +9 -12
- data/lib/chef/resource/windows_share.rb +14 -21
- data/lib/chef/resource/windows_shortcut.rb +4 -6
- data/lib/chef/resource/windows_task.rb +17 -5
- data/lib/chef/resource/windows_uac.rb +2 -4
- data/lib/chef/resource/windows_user_privilege.rb +26 -36
- data/lib/chef/resource/windows_workgroup.rb +1 -2
- data/lib/chef/resource.rb +1 -1
- data/lib/chef/resource_reporter.rb +1 -1
- data/lib/chef/resources.rb +0 -1
- data/lib/chef/shell/ext.rb +3 -3
- data/lib/chef/user.rb +0 -1
- data/lib/chef/user_v1.rb +3 -4
- data/lib/chef/util/dsc/configuration_generator.rb +1 -0
- data/lib/chef/util/dsc/local_configuration_manager.rb +1 -1
- data/lib/chef/version.rb +1 -1
- data/lib/chef/win32/api.rb +2 -9
- data/lib/chef/win32/registry.rb +4 -2
- data/lib/chef/win32/version.rb +2 -4
- data/spec/data/cookbooks/openldap/libraries/openldap.rb +1 -1
- data/spec/data/lwrp/resources/bar.rb +2 -0
- data/spec/data/lwrp/resources/buck_passer.rb +1 -0
- data/spec/data/lwrp/resources/buck_passer_2.rb +1 -0
- data/spec/data/lwrp/resources/embedded_resource_accesses_providers_scope.rb +1 -0
- data/spec/data/lwrp/resources/foo.rb +2 -0
- data/spec/data/lwrp/resources/inline_compiler.rb +1 -0
- data/spec/data/lwrp/resources/monkey_name_printer.rb +1 -0
- data/spec/data/lwrp/resources/paint_drying_watcher.rb +1 -0
- data/spec/data/lwrp/resources/thumb_twiddler.rb +1 -0
- data/spec/data/lwrp/resources_with_default_attributes/nodeattr.rb +2 -0
- data/spec/data/lwrp_const_scoping/resources/conflict.rb +1 -0
- data/spec/data/lwrp_override/resources/foo.rb +1 -0
- data/spec/data/rubygems.org/nonexistent_gem-info +1 -0
- data/spec/data/rubygems.org/sexp_processor-info +49 -0
- data/spec/data/run_context/cookbooks/circular-dep1/resources/resource.rb +1 -0
- data/spec/data/run_context/cookbooks/circular-dep2/resources/resource.rb +1 -0
- data/spec/data/run_context/cookbooks/dependency1/resources/resource.rb +1 -0
- data/spec/data/run_context/cookbooks/dependency2/resources/resource.rb +1 -0
- data/spec/data/run_context/cookbooks/no-default-attr/resources/resource.rb +1 -0
- data/spec/data/run_context/cookbooks/test/resources/resource.rb +2 -0
- data/spec/data/run_context/cookbooks/test-with-circular-deps/resources/resource.rb +2 -0
- data/spec/data/run_context/cookbooks/test-with-deps/resources/resource.rb +1 -0
- data/spec/functional/assets/yumrepo/repodata/4632d67cb92636e7575d911c24f0e04d3505a944e97c483abe0c3e73a7c62d33-filelists.sqlite.bz2 +0 -0
- data/spec/functional/assets/yumrepo/repodata/74599b793e54d877323837d2d81a1c3c594c44e4335f9528234bb490f7b9b439-other.xml.gz +0 -0
- data/spec/functional/assets/yumrepo/repodata/a845d418f919d2115ab95a56b2c76f6825ad0d0bede49181a55c04f58995d057-primary.sqlite.bz2 +0 -0
- data/spec/functional/assets/yumrepo/repodata/af9b7cf9ef23bd7b43068d74a460f3b5d06753d638e58e4a0c9edc35bfb9cdc4-other.sqlite.bz2 +0 -0
- data/spec/functional/assets/yumrepo/repodata/bdb4f5f1492a3b9532f22c43110a81500dd744f23da0aec5c33b2a41317c737d-filelists.xml.gz +0 -0
- data/spec/functional/assets/yumrepo/repodata/c10d1d34ce99e02f12ec96ef68360543ab1bb7c3cb81a4a2bf78df7d8597e9df-primary.xml.gz +0 -0
- data/spec/functional/dsl/registry_helper_spec.rb +1 -1
- data/spec/functional/resource/aixinit_service_spec.rb +7 -7
- data/spec/functional/resource/apt_package_spec.rb +1 -1
- data/spec/functional/resource/chocolatey_package_spec.rb +9 -0
- data/spec/functional/resource/dnf_package_spec.rb +4 -1
- data/spec/functional/resource/dsc_script_spec.rb +1 -1
- data/spec/functional/resource/group_spec.rb +1 -5
- data/spec/functional/resource/link_spec.rb +0 -8
- data/spec/functional/resource/registry_spec.rb +8 -8
- data/spec/functional/resource/user/mac_user_spec.rb +2 -2
- data/spec/functional/resource/windows_certificate_spec.rb +92 -35
- data/spec/functional/resource/windows_font_spec.rb +1 -2
- data/spec/functional/resource/yum_package_spec.rb +0 -12
- data/spec/functional/shell_spec.rb +0 -5
- data/spec/functional/version_spec.rb +1 -1
- data/spec/functional/win32/registry_spec.rb +1 -1
- data/spec/integration/client/client_spec.rb +5 -2
- data/spec/integration/client/exit_code_spec.rb +1 -1
- data/spec/integration/client/ipv6_spec.rb +1 -1
- data/spec/integration/compliance/compliance_spec.rb +1 -1
- data/spec/integration/ohai/ohai_spec.rb +7 -6
- data/spec/integration/recipes/accumulator_spec.rb +13 -1
- data/spec/integration/recipes/lwrp_inline_resources_spec.rb +5 -1
- data/spec/integration/recipes/lwrp_spec.rb +3 -1
- data/spec/integration/recipes/notifies_spec.rb +15 -1
- data/spec/integration/recipes/notifying_block_spec.rb +2 -1
- data/spec/integration/recipes/recipe_dsl_spec.rb +9 -9
- data/spec/integration/recipes/unified_mode_spec.rb +1 -1
- data/spec/integration/recipes/use_partial_spec.rb +4 -1
- data/spec/spec_helper.rb +10 -17
- data/spec/support/chef_helpers.rb +0 -16
- data/spec/support/lib/chef/resource/with_state.rb +0 -1
- data/spec/support/lib/chef/resource/zen_follower.rb +0 -1
- data/spec/support/lib/chef/resource/zen_master.rb +0 -1
- data/spec/support/matchers/leak.rb +7 -9
- data/spec/support/platform_helpers.rb +1 -12
- data/spec/support/shared/integration/integration_helper.rb +0 -1
- data/spec/support/shared/unit/script_resource.rb +2 -2
- data/spec/unit/application/solo_spec.rb +2 -2
- data/spec/unit/chef_fs/diff_spec.rb +1 -1
- data/spec/unit/chef_fs/file_system_spec.rb +1 -1
- data/spec/unit/client_spec.rb +4 -4
- data/spec/unit/compliance/fetcher/automate_spec.rb +0 -16
- data/spec/unit/compliance/reporter/automate_spec.rb +26 -2
- data/spec/unit/compliance/reporter/chef_server_automate_spec.rb +20 -0
- data/spec/unit/compliance/reporter/compliance_enforcer_spec.rb +1 -0
- data/spec/unit/compliance/runner_spec.rb +30 -4
- data/spec/unit/cookbook_version_spec.rb +0 -52
- data/spec/unit/daemon_spec.rb +5 -1
- data/spec/unit/data_bag_item_spec.rb +1 -6
- data/spec/unit/data_collector_spec.rb +2 -71
- data/spec/unit/dsl/reboot_pending_spec.rb +2 -2
- data/spec/unit/dsl/registry_helper_spec.rb +1 -1
- data/spec/unit/lwrp_spec.rb +1 -1
- data/spec/unit/mixin/checksum_spec.rb +0 -28
- data/spec/unit/mixin/params_validate_spec.rb +4 -3
- data/spec/unit/mixin/powershell_exec_spec.rb +9 -9
- data/spec/unit/mixin/powershell_out_spec.rb +2 -2
- data/spec/unit/node/attribute_spec.rb +1 -1
- data/spec/unit/node_spec.rb +78 -0
- data/spec/unit/org_group_spec.rb +45 -0
- data/spec/unit/platform/query_helpers_spec.rb +5 -5
- data/spec/unit/policy_builder/policyfile_spec.rb +1 -11
- data/spec/unit/property_spec.rb +23 -22
- data/spec/unit/provider/cron_spec.rb +1 -35
- data/spec/unit/provider/group/gpasswd_spec.rb +2 -2
- data/spec/unit/provider/group/groupmod_spec.rb +2 -2
- data/spec/unit/provider/group/pw_spec.rb +2 -2
- data/spec/unit/provider/group_spec.rb +1 -1
- data/spec/unit/provider/package/apt_spec.rb +84 -18
- data/spec/unit/provider/package/deb_spec.rb +3 -3
- data/spec/unit/provider/package/powershell_spec.rb +12 -74
- data/spec/unit/provider/package/rubygems_spec.rb +18 -30
- data/spec/unit/provider/service/arch_service_spec.rb +1 -0
- data/spec/unit/provider/service/debian_service_spec.rb +1 -0
- data/spec/unit/provider/service/macosx_spec.rb +2 -2
- data/spec/unit/provider/service/systemd_service_spec.rb +138 -23
- data/spec/unit/provider/service/upstart_service_spec.rb +0 -29
- data/spec/unit/provider/service/windows_spec.rb +2 -2
- data/spec/unit/provider/subversion_spec.rb +2 -2
- data/spec/unit/provider/systemd_unit_spec.rb +79 -60
- data/spec/unit/provider/zypper_repository_spec.rb +2 -2
- data/spec/unit/provider_spec.rb +0 -8
- data/spec/unit/resource/archive_file_spec.rb +1 -13
- data/spec/unit/resource/chef_client_trusted_certificate_spec.rb +0 -14
- data/spec/unit/resource/homebrew_cask_spec.rb +11 -29
- data/spec/unit/resource/mount_spec.rb +0 -10
- data/spec/unit/resource/powershell_script_spec.rb +2 -2
- data/spec/unit/resource/rhsm_subscription_spec.rb +3 -50
- data/spec/unit/resource/systemd_unit_spec.rb +1 -1
- data/spec/unit/resource/user_ulimit_spec.rb +1 -14
- data/spec/unit/resource/windows_task_spec.rb +1 -1
- data/spec/unit/resource_spec.rb +2 -7
- data/spec/unit/user_spec.rb +1 -1
- data/spec/unit/user_v1_spec.rb +6 -4
- data/spec/unit/util/dsc/local_configuration_manager_spec.rb +2 -2
- data/tasks/rspec.rb +15 -7
- metadata +43 -388
- data/bin/knife +0 -24
- data/lib/chef/application/knife.rb +0 -234
- data/lib/chef/application/windows_service.rb +0 -338
- data/lib/chef/application/windows_service_manager.rb +0 -205
- data/lib/chef/chef_fs/knife.rb +0 -160
- data/lib/chef/chef_fs/parallelizer/flatten_enumerable.rb +0 -35
- data/lib/chef/chef_fs/parallelizer/parallel_enumerable.rb +0 -278
- data/lib/chef/chef_fs/parallelizer.rb +0 -102
- data/lib/chef/cookbook_site_streaming_uploader.rb +0 -244
- data/lib/chef/knife/acl_add.rb +0 -57
- data/lib/chef/knife/acl_base.rb +0 -183
- data/lib/chef/knife/acl_bulk_add.rb +0 -78
- data/lib/chef/knife/acl_bulk_remove.rb +0 -83
- data/lib/chef/knife/acl_remove.rb +0 -62
- data/lib/chef/knife/acl_show.rb +0 -56
- data/lib/chef/knife/bootstrap/chef_vault_handler.rb +0 -162
- data/lib/chef/knife/bootstrap/client_builder.rb +0 -212
- data/lib/chef/knife/bootstrap/templates/README.md +0 -11
- data/lib/chef/knife/bootstrap/templates/chef-full.erb +0 -242
- data/lib/chef/knife/bootstrap/templates/windows-chef-client-msi.erb +0 -278
- data/lib/chef/knife/bootstrap/train_connector.rb +0 -336
- data/lib/chef/knife/bootstrap.rb +0 -1192
- data/lib/chef/knife/client_bulk_delete.rb +0 -104
- data/lib/chef/knife/client_create.rb +0 -101
- data/lib/chef/knife/client_delete.rb +0 -62
- data/lib/chef/knife/client_edit.rb +0 -52
- data/lib/chef/knife/client_key_create.rb +0 -73
- data/lib/chef/knife/client_key_delete.rb +0 -80
- data/lib/chef/knife/client_key_edit.rb +0 -83
- data/lib/chef/knife/client_key_list.rb +0 -73
- data/lib/chef/knife/client_key_show.rb +0 -80
- data/lib/chef/knife/client_list.rb +0 -41
- data/lib/chef/knife/client_reregister.rb +0 -58
- data/lib/chef/knife/client_show.rb +0 -48
- data/lib/chef/knife/config_get.rb +0 -39
- data/lib/chef/knife/config_get_profile.rb +0 -37
- data/lib/chef/knife/config_list.rb +0 -139
- data/lib/chef/knife/config_list_profiles.rb +0 -37
- data/lib/chef/knife/config_show.rb +0 -127
- data/lib/chef/knife/config_use.rb +0 -61
- data/lib/chef/knife/config_use_profile.rb +0 -47
- data/lib/chef/knife/configure.rb +0 -150
- data/lib/chef/knife/configure_client.rb +0 -48
- data/lib/chef/knife/cookbook_bulk_delete.rb +0 -71
- data/lib/chef/knife/cookbook_delete.rb +0 -151
- data/lib/chef/knife/cookbook_download.rb +0 -142
- data/lib/chef/knife/cookbook_list.rb +0 -47
- data/lib/chef/knife/cookbook_metadata.rb +0 -106
- data/lib/chef/knife/cookbook_metadata_from_file.rb +0 -49
- data/lib/chef/knife/cookbook_show.rb +0 -98
- data/lib/chef/knife/cookbook_upload.rb +0 -292
- data/lib/chef/knife/core/bootstrap_context.rb +0 -264
- data/lib/chef/knife/core/cookbook_scm_repo.rb +0 -159
- data/lib/chef/knife/core/formatting_options.rb +0 -49
- data/lib/chef/knife/core/gem_glob_loader.rb +0 -138
- data/lib/chef/knife/core/generic_presenter.rb +0 -232
- data/lib/chef/knife/core/hashed_command_loader.rb +0 -100
- data/lib/chef/knife/core/node_editor.rb +0 -130
- data/lib/chef/knife/core/node_presenter.rb +0 -133
- data/lib/chef/knife/core/object_loader.rb +0 -115
- data/lib/chef/knife/core/status_presenter.rb +0 -147
- data/lib/chef/knife/core/subcommand_loader.rb +0 -203
- data/lib/chef/knife/core/text_formatter.rb +0 -85
- data/lib/chef/knife/core/ui.rb +0 -338
- data/lib/chef/knife/core/windows_bootstrap_context.rb +0 -405
- data/lib/chef/knife/data_bag_create.rb +0 -81
- data/lib/chef/knife/data_bag_delete.rb +0 -49
- data/lib/chef/knife/data_bag_edit.rb +0 -74
- data/lib/chef/knife/data_bag_from_file.rb +0 -113
- data/lib/chef/knife/data_bag_list.rb +0 -42
- data/lib/chef/knife/data_bag_secret_options.rb +0 -122
- data/lib/chef/knife/data_bag_show.rb +0 -69
- data/lib/chef/knife/delete.rb +0 -125
- data/lib/chef/knife/deps.rb +0 -156
- data/lib/chef/knife/diff.rb +0 -83
- data/lib/chef/knife/download.rb +0 -84
- data/lib/chef/knife/edit.rb +0 -88
- data/lib/chef/knife/environment_compare.rb +0 -128
- data/lib/chef/knife/environment_create.rb +0 -52
- data/lib/chef/knife/environment_delete.rb +0 -44
- data/lib/chef/knife/environment_edit.rb +0 -44
- data/lib/chef/knife/environment_from_file.rb +0 -84
- data/lib/chef/knife/environment_list.rb +0 -41
- data/lib/chef/knife/environment_show.rb +0 -47
- data/lib/chef/knife/exec.rb +0 -99
- data/lib/chef/knife/group_add.rb +0 -55
- data/lib/chef/knife/group_create.rb +0 -49
- data/lib/chef/knife/group_destroy.rb +0 -53
- data/lib/chef/knife/group_list.rb +0 -43
- data/lib/chef/knife/group_remove.rb +0 -56
- data/lib/chef/knife/group_show.rb +0 -49
- data/lib/chef/knife/key_create.rb +0 -112
- data/lib/chef/knife/key_create_base.rb +0 -50
- data/lib/chef/knife/key_delete.rb +0 -55
- data/lib/chef/knife/key_edit.rb +0 -118
- data/lib/chef/knife/key_edit_base.rb +0 -55
- data/lib/chef/knife/key_list.rb +0 -90
- data/lib/chef/knife/key_list_base.rb +0 -45
- data/lib/chef/knife/key_show.rb +0 -53
- data/lib/chef/knife/list.rb +0 -177
- data/lib/chef/knife/node_bulk_delete.rb +0 -75
- data/lib/chef/knife/node_create.rb +0 -47
- data/lib/chef/knife/node_delete.rb +0 -46
- data/lib/chef/knife/node_edit.rb +0 -70
- data/lib/chef/knife/node_environment_set.rb +0 -53
- data/lib/chef/knife/node_from_file.rb +0 -51
- data/lib/chef/knife/node_list.rb +0 -44
- data/lib/chef/knife/node_policy_set.rb +0 -79
- data/lib/chef/knife/node_run_list_add.rb +0 -104
- data/lib/chef/knife/node_run_list_remove.rb +0 -67
- data/lib/chef/knife/node_run_list_set.rb +0 -66
- data/lib/chef/knife/node_show.rb +0 -63
- data/lib/chef/knife/null.rb +0 -12
- data/lib/chef/knife/raw.rb +0 -123
- data/lib/chef/knife/recipe_list.rb +0 -32
- data/lib/chef/knife/rehash.rb +0 -50
- data/lib/chef/knife/role_bulk_delete.rb +0 -66
- data/lib/chef/knife/role_create.rb +0 -53
- data/lib/chef/knife/role_delete.rb +0 -46
- data/lib/chef/knife/role_edit.rb +0 -45
- data/lib/chef/knife/role_env_run_list_add.rb +0 -87
- data/lib/chef/knife/role_env_run_list_clear.rb +0 -55
- data/lib/chef/knife/role_env_run_list_remove.rb +0 -57
- data/lib/chef/knife/role_env_run_list_replace.rb +0 -60
- data/lib/chef/knife/role_env_run_list_set.rb +0 -70
- data/lib/chef/knife/role_from_file.rb +0 -51
- data/lib/chef/knife/role_list.rb +0 -42
- data/lib/chef/knife/role_run_list_add.rb +0 -87
- data/lib/chef/knife/role_run_list_clear.rb +0 -55
- data/lib/chef/knife/role_run_list_remove.rb +0 -56
- data/lib/chef/knife/role_run_list_replace.rb +0 -60
- data/lib/chef/knife/role_run_list_set.rb +0 -69
- data/lib/chef/knife/role_show.rb +0 -48
- data/lib/chef/knife/search.rb +0 -194
- data/lib/chef/knife/serve.rb +0 -65
- data/lib/chef/knife/show.rb +0 -72
- data/lib/chef/knife/ssh.rb +0 -645
- data/lib/chef/knife/ssl_check.rb +0 -284
- data/lib/chef/knife/ssl_fetch.rb +0 -161
- data/lib/chef/knife/status.rb +0 -95
- data/lib/chef/knife/supermarket_download.rb +0 -121
- data/lib/chef/knife/supermarket_install.rb +0 -192
- data/lib/chef/knife/supermarket_list.rb +0 -76
- data/lib/chef/knife/supermarket_search.rb +0 -53
- data/lib/chef/knife/supermarket_share.rb +0 -166
- data/lib/chef/knife/supermarket_show.rb +0 -66
- data/lib/chef/knife/supermarket_unshare.rb +0 -61
- data/lib/chef/knife/tag_create.rb +0 -52
- data/lib/chef/knife/tag_delete.rb +0 -60
- data/lib/chef/knife/tag_list.rb +0 -47
- data/lib/chef/knife/upload.rb +0 -86
- data/lib/chef/knife/user_create.rb +0 -107
- data/lib/chef/knife/user_delete.rb +0 -44
- data/lib/chef/knife/user_dissociate.rb +0 -42
- data/lib/chef/knife/user_edit.rb +0 -52
- data/lib/chef/knife/user_invite_add.rb +0 -43
- data/lib/chef/knife/user_invite_list.rb +0 -34
- data/lib/chef/knife/user_invite_rescind.rb +0 -63
- data/lib/chef/knife/user_key_create.rb +0 -73
- data/lib/chef/knife/user_key_delete.rb +0 -80
- data/lib/chef/knife/user_key_edit.rb +0 -83
- data/lib/chef/knife/user_key_list.rb +0 -73
- data/lib/chef/knife/user_key_show.rb +0 -80
- data/lib/chef/knife/user_list.rb +0 -42
- data/lib/chef/knife/user_reregister.rb +0 -59
- data/lib/chef/knife/user_show.rb +0 -48
- data/lib/chef/knife/xargs.rb +0 -282
- data/lib/chef/knife/yaml_convert.rb +0 -91
- data/lib/chef/knife.rb +0 -665
- data/lib/chef/resource/user/dscl_user.rb +0 -35
- data/spec/data/knife-home/.chef/plugins/knife/example_home_subcommand.rb +0 -0
- data/spec/data/knife-site-subcommands/plugins/knife/example_subcommand.rb +0 -0
- data/spec/data/knife_subcommand/test_explicit_category.rb +0 -7
- data/spec/data/knife_subcommand/test_name_mapping.rb +0 -4
- data/spec/data/knife_subcommand/test_yourself.rb +0 -21
- data/spec/functional/assets/yumrepo-empty/repodata/01a3b-filelists.sqlite.bz2 +0 -0
- data/spec/functional/assets/yumrepo-empty/repodata/401dc-filelists.xml.gz +0 -0
- data/spec/functional/assets/yumrepo-empty/repodata/5dc1e-primary.sqlite.bz2 +0 -0
- data/spec/functional/assets/yumrepo-empty/repodata/6bf96-other.xml.gz +0 -0
- data/spec/functional/assets/yumrepo-empty/repodata/7c365-other.sqlite.bz2 +0 -0
- data/spec/functional/assets/yumrepo-empty/repodata/dabe2-primary.xml.gz +0 -0
- data/spec/functional/assets/yumrepo-empty/repodata/repomd.xml +0 -55
- data/spec/functional/knife/configure_spec.rb +0 -33
- data/spec/functional/knife/cookbook_delete_spec.rb +0 -156
- data/spec/functional/knife/exec_spec.rb +0 -55
- data/spec/functional/knife/rehash_spec.rb +0 -39
- data/spec/functional/knife/smoke_test.rb +0 -42
- data/spec/functional/knife/ssh_spec.rb +0 -352
- data/spec/functional/resource/user/dscl_spec.rb +0 -188
- data/spec/functional/resource/windows_service_spec.rb +0 -105
- data/spec/functional/win32/service_manager_spec.rb +0 -220
- data/spec/integration/client/fips_spec.rb +0 -21
- data/spec/integration/knife/chef_fs_data_store_spec.rb +0 -557
- data/spec/integration/knife/chef_repo_path_spec.rb +0 -962
- data/spec/integration/knife/chef_repository_file_system_spec.rb +0 -200
- data/spec/integration/knife/chefignore_spec.rb +0 -301
- data/spec/integration/knife/client_bulk_delete_spec.rb +0 -131
- data/spec/integration/knife/client_create_spec.rb +0 -70
- data/spec/integration/knife/client_delete_spec.rb +0 -64
- data/spec/integration/knife/client_key_create_spec.rb +0 -66
- data/spec/integration/knife/client_key_delete_spec.rb +0 -43
- data/spec/integration/knife/client_key_list_spec.rb +0 -61
- data/spec/integration/knife/client_key_show_spec.rb +0 -45
- data/spec/integration/knife/client_list_spec.rb +0 -49
- data/spec/integration/knife/client_show_spec.rb +0 -37
- data/spec/integration/knife/common_options_spec.rb +0 -174
- data/spec/integration/knife/config_list_spec.rb +0 -220
- data/spec/integration/knife/config_show_spec.rb +0 -192
- data/spec/integration/knife/config_use_spec.rb +0 -198
- data/spec/integration/knife/cookbook_api_ipv6_spec.rb +0 -113
- data/spec/integration/knife/cookbook_bulk_delete_spec.rb +0 -65
- data/spec/integration/knife/cookbook_download_spec.rb +0 -72
- data/spec/integration/knife/cookbook_list_spec.rb +0 -55
- data/spec/integration/knife/cookbook_show_spec.rb +0 -149
- data/spec/integration/knife/cookbook_upload_spec.rb +0 -128
- data/spec/integration/knife/data_bag_create_spec.rb +0 -125
- data/spec/integration/knife/data_bag_delete_spec.rb +0 -59
- data/spec/integration/knife/data_bag_edit_spec.rb +0 -105
- data/spec/integration/knife/data_bag_from_file_spec.rb +0 -116
- data/spec/integration/knife/data_bag_list_spec.rb +0 -44
- data/spec/integration/knife/data_bag_show_spec.rb +0 -95
- data/spec/integration/knife/delete_spec.rb +0 -1018
- data/spec/integration/knife/deps_spec.rb +0 -703
- data/spec/integration/knife/diff_spec.rb +0 -605
- data/spec/integration/knife/download_spec.rb +0 -1336
- data/spec/integration/knife/environment_compare_spec.rb +0 -75
- data/spec/integration/knife/environment_create_spec.rb +0 -41
- data/spec/integration/knife/environment_delete_spec.rb +0 -37
- data/spec/integration/knife/environment_from_file_spec.rb +0 -116
- data/spec/integration/knife/environment_list_spec.rb +0 -42
- data/spec/integration/knife/environment_show_spec.rb +0 -77
- data/spec/integration/knife/list_spec.rb +0 -1060
- data/spec/integration/knife/node_bulk_delete_spec.rb +0 -52
- data/spec/integration/knife/node_create_spec.rb +0 -47
- data/spec/integration/knife/node_delete_spec.rb +0 -48
- data/spec/integration/knife/node_environment_set_spec.rb +0 -46
- data/spec/integration/knife/node_from_file_spec.rb +0 -59
- data/spec/integration/knife/node_list_spec.rb +0 -45
- data/spec/integration/knife/node_run_list_add_spec.rb +0 -54
- data/spec/integration/knife/node_run_list_remove_spec.rb +0 -36
- data/spec/integration/knife/node_run_list_set_spec.rb +0 -41
- data/spec/integration/knife/node_show_spec.rb +0 -36
- data/spec/integration/knife/raw_spec.rb +0 -297
- data/spec/integration/knife/redirection_spec.rb +0 -64
- data/spec/integration/knife/role_bulk_delete_spec.rb +0 -52
- data/spec/integration/knife/role_create_spec.rb +0 -41
- data/spec/integration/knife/role_delete_spec.rb +0 -48
- data/spec/integration/knife/role_from_file_spec.rb +0 -96
- data/spec/integration/knife/role_list_spec.rb +0 -45
- data/spec/integration/knife/role_show_spec.rb +0 -51
- data/spec/integration/knife/search_node_spec.rb +0 -40
- data/spec/integration/knife/serve_spec.rb +0 -92
- data/spec/integration/knife/show_spec.rb +0 -197
- data/spec/integration/knife/upload_spec.rb +0 -1616
- data/spec/support/shared/functional/knife.rb +0 -37
- data/spec/support/shared/functional/win32_service.rb +0 -57
- data/spec/support/shared/integration/knife_support.rb +0 -192
- data/spec/support/shared/unit/knife_shared.rb +0 -39
- data/spec/unit/application/knife_spec.rb +0 -241
- data/spec/unit/chef_fs/parallelizer_spec.rb +0 -479
- data/spec/unit/cookbook_site_streaming_uploader_spec.rb +0 -198
- data/spec/unit/knife/bootstrap/chef_vault_handler_spec.rb +0 -152
- data/spec/unit/knife/bootstrap/client_builder_spec.rb +0 -207
- data/spec/unit/knife/bootstrap/train_connector_spec.rb +0 -244
- data/spec/unit/knife/bootstrap_spec.rb +0 -2220
- data/spec/unit/knife/client_bulk_delete_spec.rb +0 -166
- data/spec/unit/knife/client_create_spec.rb +0 -169
- data/spec/unit/knife/client_delete_spec.rb +0 -99
- data/spec/unit/knife/client_edit_spec.rb +0 -53
- data/spec/unit/knife/client_list_spec.rb +0 -34
- data/spec/unit/knife/client_reregister_spec.rb +0 -62
- data/spec/unit/knife/client_show_spec.rb +0 -52
- data/spec/unit/knife/configure_client_spec.rb +0 -81
- data/spec/unit/knife/configure_spec.rb +0 -190
- data/spec/unit/knife/cookbook_bulk_delete_spec.rb +0 -87
- data/spec/unit/knife/cookbook_delete_spec.rb +0 -239
- data/spec/unit/knife/cookbook_download_spec.rb +0 -255
- data/spec/unit/knife/cookbook_list_spec.rb +0 -88
- data/spec/unit/knife/cookbook_metadata_from_file_spec.rb +0 -72
- data/spec/unit/knife/cookbook_metadata_spec.rb +0 -182
- data/spec/unit/knife/cookbook_show_spec.rb +0 -253
- data/spec/unit/knife/cookbook_upload_spec.rb +0 -364
- data/spec/unit/knife/core/bootstrap_context_spec.rb +0 -287
- data/spec/unit/knife/core/cookbook_scm_repo_spec.rb +0 -187
- data/spec/unit/knife/core/gem_glob_loader_spec.rb +0 -209
- data/spec/unit/knife/core/hashed_command_loader_spec.rb +0 -112
- data/spec/unit/knife/core/node_editor_spec.rb +0 -211
- data/spec/unit/knife/core/object_loader_spec.rb +0 -81
- data/spec/unit/knife/core/status_presenter_spec.rb +0 -54
- data/spec/unit/knife/core/subcommand_loader_spec.rb +0 -64
- data/spec/unit/knife/core/ui_spec.rb +0 -656
- data/spec/unit/knife/core/windows_bootstrap_context_spec.rb +0 -238
- data/spec/unit/knife/data_bag_create_spec.rb +0 -175
- data/spec/unit/knife/data_bag_edit_spec.rb +0 -126
- data/spec/unit/knife/data_bag_from_file_spec.rb +0 -174
- data/spec/unit/knife/data_bag_secret_options_spec.rb +0 -173
- data/spec/unit/knife/data_bag_show_spec.rb +0 -139
- data/spec/unit/knife/environment_compare_spec.rb +0 -112
- data/spec/unit/knife/environment_create_spec.rb +0 -91
- data/spec/unit/knife/environment_delete_spec.rb +0 -71
- data/spec/unit/knife/environment_edit_spec.rb +0 -79
- data/spec/unit/knife/environment_from_file_spec.rb +0 -90
- data/spec/unit/knife/environment_list_spec.rb +0 -54
- data/spec/unit/knife/environment_show_spec.rb +0 -52
- data/spec/unit/knife/key_create_spec.rb +0 -223
- data/spec/unit/knife/key_delete_spec.rb +0 -133
- data/spec/unit/knife/key_edit_spec.rb +0 -264
- data/spec/unit/knife/key_helper.rb +0 -74
- data/spec/unit/knife/key_list_spec.rb +0 -216
- data/spec/unit/knife/key_show_spec.rb +0 -126
- data/spec/unit/knife/node_bulk_delete_spec.rb +0 -94
- data/spec/unit/knife/node_delete_spec.rb +0 -77
- data/spec/unit/knife/node_edit_spec.rb +0 -116
- data/spec/unit/knife/node_environment_set_spec.rb +0 -61
- data/spec/unit/knife/node_from_file_spec.rb +0 -59
- data/spec/unit/knife/node_list_spec.rb +0 -62
- data/spec/unit/knife/node_policy_set_spec.rb +0 -122
- data/spec/unit/knife/node_run_list_add_spec.rb +0 -145
- data/spec/unit/knife/node_run_list_remove_spec.rb +0 -106
- data/spec/unit/knife/node_run_list_set_spec.rb +0 -115
- data/spec/unit/knife/node_show_spec.rb +0 -65
- data/spec/unit/knife/raw_spec.rb +0 -43
- data/spec/unit/knife/role_bulk_delete_spec.rb +0 -80
- data/spec/unit/knife/role_create_spec.rb +0 -80
- data/spec/unit/knife/role_delete_spec.rb +0 -67
- data/spec/unit/knife/role_edit_spec.rb +0 -77
- data/spec/unit/knife/role_env_run_list_add_spec.rb +0 -217
- data/spec/unit/knife/role_env_run_list_clear_spec.rb +0 -94
- data/spec/unit/knife/role_env_run_list_remove_spec.rb +0 -102
- data/spec/unit/knife/role_env_run_list_replace_spec.rb +0 -105
- data/spec/unit/knife/role_env_run_list_set_spec.rb +0 -99
- data/spec/unit/knife/role_from_file_spec.rb +0 -69
- data/spec/unit/knife/role_list_spec.rb +0 -54
- data/spec/unit/knife/role_run_list_add_spec.rb +0 -179
- data/spec/unit/knife/role_run_list_clear_spec.rb +0 -84
- data/spec/unit/knife/role_run_list_remove_spec.rb +0 -92
- data/spec/unit/knife/role_run_list_replace_spec.rb +0 -98
- data/spec/unit/knife/role_run_list_set_spec.rb +0 -89
- data/spec/unit/knife/role_show_spec.rb +0 -59
- data/spec/unit/knife/ssh_spec.rb +0 -403
- data/spec/unit/knife/ssl_check_spec.rb +0 -256
- data/spec/unit/knife/ssl_fetch_spec.rb +0 -222
- data/spec/unit/knife/status_spec.rb +0 -112
- data/spec/unit/knife/supermarket_download_spec.rb +0 -152
- data/spec/unit/knife/supermarket_install_spec.rb +0 -202
- data/spec/unit/knife/supermarket_list_spec.rb +0 -70
- data/spec/unit/knife/supermarket_search_spec.rb +0 -85
- data/spec/unit/knife/supermarket_share_spec.rb +0 -208
- data/spec/unit/knife/supermarket_unshare_spec.rb +0 -78
- data/spec/unit/knife/tag_create_spec.rb +0 -23
- data/spec/unit/knife/tag_delete_spec.rb +0 -25
- data/spec/unit/knife/tag_list_spec.rb +0 -23
- data/spec/unit/knife/user_create_spec.rb +0 -184
- data/spec/unit/knife/user_delete_spec.rb +0 -46
- data/spec/unit/knife/user_edit_spec.rb +0 -48
- data/spec/unit/knife/user_list_spec.rb +0 -36
- data/spec/unit/knife/user_reregister_spec.rb +0 -56
- data/spec/unit/knife/user_show_spec.rb +0 -46
- data/spec/unit/knife_spec.rb +0 -634
- data/spec/unit/provider/user/dscl_spec.rb +0 -699
- data/spec/unit/windows_service_spec.rb +0 -118
@@ -15,7 +15,8 @@
|
|
15
15
|
# See the License for the specific language governing permissions and
|
16
16
|
# limitations under the License.
|
17
17
|
|
18
|
-
|
18
|
+
require_relative "../powershell"
|
19
|
+
require_relative "../pwsh"
|
19
20
|
|
20
21
|
# The powershell_exec mixin provides in-process access to the PowerShell engine.
|
21
22
|
#
|
@@ -94,15 +95,33 @@
|
|
94
95
|
# credentials of the user running Chef Client are used.
|
95
96
|
#
|
96
97
|
|
97
|
-
if ChefUtils.windows?
|
98
|
-
require "chef-powershell"
|
99
|
-
end
|
100
|
-
|
101
98
|
class Chef
|
102
99
|
module Mixin
|
103
100
|
module PowershellExec
|
104
|
-
|
105
|
-
|
101
|
+
# Run a command under PowerShell via a managed (.NET) API.
|
102
|
+
#
|
103
|
+
# Requires: .NET Framework 4.0 or higher on the target machine.
|
104
|
+
#
|
105
|
+
# @param script [String] script to run
|
106
|
+
# @param interpreter [Symbol] the interpreter type, `:powershell` or `:pwsh`
|
107
|
+
# @return [Chef::PowerShell] output
|
108
|
+
def powershell_exec(script, interpreter = :powershell)
|
109
|
+
case interpreter
|
110
|
+
when :powershell
|
111
|
+
Chef::PowerShell.new(script)
|
112
|
+
when :pwsh
|
113
|
+
Chef::Pwsh.new(script)
|
114
|
+
else
|
115
|
+
raise ArgumentError, "Expected interpreter of :powershell or :pwsh"
|
116
|
+
end
|
117
|
+
end
|
118
|
+
|
119
|
+
# The same as the #powershell_exec method except this will raise
|
120
|
+
# Chef::PowerShell::CommandFailed if the command fails
|
121
|
+
def powershell_exec!(script, interpreter = :powershell)
|
122
|
+
cmd = powershell_exec(script, interpreter)
|
123
|
+
cmd.error!
|
124
|
+
cmd
|
106
125
|
end
|
107
126
|
end
|
108
127
|
end
|
data/lib/chef/node/attribute.rb
CHANGED
@@ -158,8 +158,10 @@ class Chef
|
|
158
158
|
}.freeze
|
159
159
|
|
160
160
|
ENUM_METHODS.each do |delegated_method|
|
161
|
-
|
162
|
-
|
161
|
+
if Hash.public_method_defined?(delegated_method)
|
162
|
+
define_method(delegated_method) do |*args, &block|
|
163
|
+
merged_attributes.send(delegated_method, *args, &block)
|
164
|
+
end
|
163
165
|
end
|
164
166
|
end
|
165
167
|
|
@@ -450,34 +452,17 @@ class Chef
|
|
450
452
|
# method-style access to attributes (has to come after the prepended ImmutablizeHash)
|
451
453
|
|
452
454
|
def read(*path)
|
453
|
-
|
454
|
-
Chef::Log.warn "Calling node.read() without any path argument is very slow, probably a bug, and should be avoided"
|
455
|
-
merged_attributes.read(*path) # re-merges everything, slow edge case
|
456
|
-
else
|
457
|
-
self[path[0]] unless path[0].nil? # force deep_merge_cache key construction if necessary
|
458
|
-
deep_merge_cache.read(*path)
|
459
|
-
end
|
455
|
+
merged_attributes.read(*path)
|
460
456
|
end
|
461
457
|
|
462
458
|
alias :dig :read
|
463
459
|
|
464
460
|
def read!(*path)
|
465
|
-
|
466
|
-
Chef::Log.warn "Calling node.read!() without any path argument is very slow, probably a bug, and should be avoided"
|
467
|
-
merged_attributes.read!(*path) # re-merges everything, slow edge case
|
468
|
-
else
|
469
|
-
self[path[0]] unless path[0].nil? # force deep_merge_cache key construction if necessary
|
470
|
-
deep_merge_cache.read!(*path)
|
471
|
-
end
|
461
|
+
merged_attributes.read!(*path)
|
472
462
|
end
|
473
463
|
|
474
464
|
def exist?(*path)
|
475
|
-
|
476
|
-
true
|
477
|
-
else
|
478
|
-
self[path[0]] unless path[0].nil? # force deep_merge_cache key construction if necessary
|
479
|
-
deep_merge_cache.exist?(*path)
|
480
|
-
end
|
465
|
+
merged_attributes.exist?(*path)
|
481
466
|
end
|
482
467
|
|
483
468
|
def write(level, *args, &block)
|
@@ -613,7 +598,7 @@ class Chef
|
|
613
598
|
merge_with.each do |key, merge_with_value|
|
614
599
|
value =
|
615
600
|
if merge_onto.key?(key)
|
616
|
-
deep_merge!(safe_dup(merge_onto
|
601
|
+
deep_merge!(safe_dup(merge_onto.internal_get(key)), merge_with_value)
|
617
602
|
else
|
618
603
|
merge_with_value
|
619
604
|
end
|
@@ -649,7 +634,7 @@ class Chef
|
|
649
634
|
merge_with.each do |key, merge_with_value|
|
650
635
|
value =
|
651
636
|
if merge_onto.key?(key)
|
652
|
-
hash_only_merge!(safe_dup(merge_onto
|
637
|
+
hash_only_merge!(safe_dup(merge_onto.internal_get(key)), merge_with_value)
|
653
638
|
else
|
654
639
|
merge_with_value
|
655
640
|
end
|
@@ -19,6 +19,7 @@ require_relative "common_api"
|
|
19
19
|
require_relative "mixin/state_tracking"
|
20
20
|
require_relative "mixin/immutablize_array"
|
21
21
|
require_relative "mixin/immutablize_hash"
|
22
|
+
require_relative "../delayed_evaluator"
|
22
23
|
|
23
24
|
class Chef
|
24
25
|
class Node
|
@@ -109,6 +110,12 @@ class Chef
|
|
109
110
|
key
|
110
111
|
end
|
111
112
|
|
113
|
+
def [](*args)
|
114
|
+
value = super
|
115
|
+
value = value.call while value.is_a?(::Chef::DelayedEvaluator)
|
116
|
+
value
|
117
|
+
end
|
118
|
+
|
112
119
|
prepend Chef::Node::Mixin::StateTracking
|
113
120
|
prepend Chef::Node::Mixin::ImmutablizeArray
|
114
121
|
end
|
@@ -187,6 +194,12 @@ class Chef
|
|
187
194
|
e
|
188
195
|
end
|
189
196
|
|
197
|
+
def [](*args)
|
198
|
+
value = super
|
199
|
+
value = value.call while value.is_a?(::Chef::DelayedEvaluator)
|
200
|
+
value
|
201
|
+
end
|
202
|
+
|
190
203
|
prepend Chef::Node::Mixin::StateTracking
|
191
204
|
prepend Chef::Node::Mixin::ImmutablizeHash
|
192
205
|
end
|
@@ -15,6 +15,8 @@
|
|
15
15
|
# limitations under the License.
|
16
16
|
#
|
17
17
|
|
18
|
+
require_relative "../../delayed_evaluator"
|
19
|
+
|
18
20
|
class Chef
|
19
21
|
class Node
|
20
22
|
module Mixin
|
@@ -28,7 +30,7 @@ class Chef
|
|
28
30
|
@merged_attributes = nil
|
29
31
|
@combined_override = nil
|
30
32
|
@combined_default = nil
|
31
|
-
@deep_merge_cache =
|
33
|
+
@deep_merge_cache = {}
|
32
34
|
end
|
33
35
|
|
34
36
|
# Invalidate a key in the deep_merge_cache. If called with nil, or no arg, this will invalidate
|
@@ -37,22 +39,24 @@ class Chef
|
|
37
39
|
# must invalidate the entire cache and re-deep-merge the entire node object.
|
38
40
|
def reset_cache(path = nil)
|
39
41
|
if path.nil?
|
40
|
-
deep_merge_cache.
|
42
|
+
deep_merge_cache.clear
|
41
43
|
else
|
42
|
-
deep_merge_cache.
|
44
|
+
deep_merge_cache.delete(path.to_s)
|
43
45
|
end
|
44
46
|
end
|
45
47
|
|
46
48
|
alias :reset :reset_cache
|
47
49
|
|
48
50
|
def [](key)
|
49
|
-
if deep_merge_cache.key?(key.to_s)
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
51
|
+
ret = if deep_merge_cache.key?(key.to_s)
|
52
|
+
# return the cache of the deep merged values by top-level key
|
53
|
+
deep_merge_cache[key.to_s]
|
54
|
+
else
|
55
|
+
# save all the work of computing node[key]
|
56
|
+
deep_merge_cache[key.to_s] = merged_attributes(key)
|
57
|
+
end
|
58
|
+
ret = ret.call while ret.is_a?(::Chef::DelayedEvaluator)
|
59
|
+
ret
|
56
60
|
end
|
57
61
|
|
58
62
|
end
|
data/lib/chef/node.rb
CHANGED
@@ -687,25 +687,6 @@ class Chef
|
|
687
687
|
name <=> other.name
|
688
688
|
end
|
689
689
|
|
690
|
-
# Returns hash of node data with attributes based on whitelist/blacklist rules.
|
691
|
-
def data_for_save
|
692
|
-
data = for_json
|
693
|
-
%w{automatic default normal override}.each do |level|
|
694
|
-
allowlist = allowlist_or_whitelist_config(level)
|
695
|
-
unless allowlist.nil? # nil => save everything
|
696
|
-
logger.info("Allowing #{level} node attributes for save.")
|
697
|
-
data[level] = Chef::AttributeAllowlist.filter(data[level], allowlist)
|
698
|
-
end
|
699
|
-
|
700
|
-
blocklist = blocklist_or_blacklist_config(level)
|
701
|
-
unless blocklist.nil? # nil => remove nothing
|
702
|
-
logger.info("Blocking #{level} node attributes for save")
|
703
|
-
data[level] = Chef::AttributeBlocklist.filter(data[level], blocklist)
|
704
|
-
end
|
705
|
-
end
|
706
|
-
data
|
707
|
-
end
|
708
|
-
|
709
690
|
private
|
710
691
|
|
711
692
|
def save_without_policyfile_attrs
|
@@ -731,7 +712,7 @@ class Chef
|
|
731
712
|
# @param [String] level the attribute level
|
732
713
|
def allowlist_or_whitelist_config(level)
|
733
714
|
if Chef::Config["#{level}_attribute_whitelist".to_sym]
|
734
|
-
Chef.deprecated(:
|
715
|
+
Chef.deprecated(:attribute_blacklist_configuration, "Attribute whitelist configurations have been deprecated. Use the allowed_LEVEL_attribute configs instead")
|
735
716
|
Chef::Config["#{level}_attribute_whitelist".to_sym]
|
736
717
|
else
|
737
718
|
Chef::Config["allowed_#{level}_attributes".to_sym]
|
@@ -751,6 +732,24 @@ class Chef
|
|
751
732
|
end
|
752
733
|
end
|
753
734
|
|
735
|
+
def data_for_save
|
736
|
+
data = for_json
|
737
|
+
%w{automatic default normal override}.each do |level|
|
738
|
+
allowlist = allowlist_or_whitelist_config(level)
|
739
|
+
unless allowlist.nil? # nil => save everything
|
740
|
+
logger.info("Allowing #{level} node attributes for save.")
|
741
|
+
data[level] = Chef::AttributeAllowlist.filter(data[level], allowlist)
|
742
|
+
end
|
743
|
+
|
744
|
+
blocklist = blocklist_or_blacklist_config(level)
|
745
|
+
unless blocklist.nil? # nil => remove nothing
|
746
|
+
logger.info("Blocking #{level} node attributes for save")
|
747
|
+
data[level] = Chef::AttributeBlocklist.filter(data[level], blocklist)
|
748
|
+
end
|
749
|
+
end
|
750
|
+
data
|
751
|
+
end
|
752
|
+
|
754
753
|
# Returns a UUID that uniquely identifies this node for reporting reasons.
|
755
754
|
#
|
756
755
|
# The node is read in from disk if it exists, or it's generated if it does
|
data/lib/chef/org.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
#
|
2
2
|
# Author:: Steven Danna (steve@chef.io)
|
3
|
-
# Copyright:: Copyright (c) Chef Software Inc
|
3
|
+
# Copyright:: Copyright (c) Chef Software Inc
|
4
4
|
# License:: Apache License, Version 2.0
|
5
5
|
#
|
6
6
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
@@ -19,9 +19,10 @@
|
|
19
19
|
require_relative "json_compat"
|
20
20
|
require_relative "mixin/params_validate"
|
21
21
|
require_relative "server_api"
|
22
|
+
require_relative "group"
|
22
23
|
|
23
24
|
class Chef
|
24
|
-
class Org
|
25
|
+
class Org < Group
|
25
26
|
|
26
27
|
include Chef::Mixin::ParamsValidate
|
27
28
|
|
@@ -58,8 +58,8 @@ class Chef
|
|
58
58
|
end
|
59
59
|
|
60
60
|
def dsc_refresh_mode_disabled?(node)
|
61
|
-
|
62
|
-
exec =
|
61
|
+
require_relative "../powershell"
|
62
|
+
exec = Chef::PowerShell.new("Get-DscLocalConfigurationManager")
|
63
63
|
exec.error!
|
64
64
|
exec.result["RefreshMode"] == "Disabled"
|
65
65
|
end
|
@@ -148,11 +148,6 @@ class Chef
|
|
148
148
|
# consume_external_attrs may add items to the run_list. Save the
|
149
149
|
# expanded run_list, which we will pass to the server later to
|
150
150
|
# determine which versions of cookbooks to use.
|
151
|
-
|
152
|
-
unless Chef::Config[:policy_document_native_api]
|
153
|
-
Chef.deprecated(:policyfile_compat_mode, "The chef-server 11 policyfile compat mode is deprecated, please set policy_document_native_api to true in your config")
|
154
|
-
end
|
155
|
-
|
156
151
|
node.reset_defaults_and_overrides
|
157
152
|
|
158
153
|
node.consume_external_attrs(ohai_data, json_attribs)
|
data/lib/chef/property.rb
CHANGED
@@ -412,6 +412,7 @@ class Chef
|
|
412
412
|
# Otherwise, we have to validate it now.
|
413
413
|
value = input_to_stored_value(resource, default, is_default: true)
|
414
414
|
end
|
415
|
+
value = deep_dup(value)
|
415
416
|
value = stored_value_to_output(resource, value)
|
416
417
|
|
417
418
|
# If the value is mutable (non-frozen), we set it on the instance
|
@@ -748,5 +749,22 @@ class Chef
|
|
748
749
|
|
749
750
|
result
|
750
751
|
end
|
752
|
+
|
753
|
+
# recursively dup the value
|
754
|
+
def deep_dup(value)
|
755
|
+
return value if value.is_a?(DelayedEvaluator)
|
756
|
+
|
757
|
+
visitor = lambda do |obj|
|
758
|
+
obj = obj.dup rescue obj
|
759
|
+
case obj
|
760
|
+
when Hash
|
761
|
+
obj.each { |k, v| obj[k] = visitor.call(v) }
|
762
|
+
when Array
|
763
|
+
obj.each_with_index { |v, i| obj[i] = visitor.call(v) }
|
764
|
+
end
|
765
|
+
obj
|
766
|
+
end
|
767
|
+
visitor.call(value)
|
768
|
+
end
|
751
769
|
end
|
752
770
|
end
|
data/lib/chef/provider/cron.rb
CHANGED
@@ -88,11 +88,7 @@ class Chef
|
|
88
88
|
|
89
89
|
def cron_different?
|
90
90
|
CRON_ATTRIBUTES.any? do |cron_var|
|
91
|
-
|
92
|
-
new_resource.send(cron_var) != current_resource.send(cron_var)
|
93
|
-
else
|
94
|
-
new_resource.send(cron_var).to_s != current_resource.send(cron_var).to_s
|
95
|
-
end
|
91
|
+
new_resource.send(cron_var) != current_resource.send(cron_var)
|
96
92
|
end
|
97
93
|
end
|
98
94
|
|
@@ -105,7 +101,7 @@ class Chef
|
|
105
101
|
|
106
102
|
if @cron_exists
|
107
103
|
unless cron_different?
|
108
|
-
logger.
|
104
|
+
logger.debug("#{new_resource}: Skipping existing cron entry")
|
109
105
|
return
|
110
106
|
end
|
111
107
|
read_crontab.each_line do |line|
|
@@ -27,7 +27,7 @@ class Chef
|
|
27
27
|
|
28
28
|
provides :execute, target_mode: true
|
29
29
|
|
30
|
-
def_delegators :new_resource, :command, :returns, :environment, :user, :domain, :password, :group, :cwd, :umask, :creates, :elevated, :default_env, :timeout, :input
|
30
|
+
def_delegators :new_resource, :command, :returns, :environment, :user, :domain, :password, :group, :cwd, :umask, :creates, :elevated, :default_env, :timeout, :input, :login
|
31
31
|
|
32
32
|
def load_current_resource
|
33
33
|
current_resource = Chef::Resource::Execute.new(new_resource.name)
|
@@ -92,6 +92,7 @@ class Chef
|
|
92
92
|
opts[:cwd] = cwd if cwd
|
93
93
|
opts[:umask] = umask if umask
|
94
94
|
opts[:input] = input if input
|
95
|
+
opts[:login] = login if login
|
95
96
|
opts[:default_env] = default_env
|
96
97
|
opts[:log_level] = :info
|
97
98
|
opts[:log_tag] = new_resource.to_s
|
data/lib/chef/provider/file.rb
CHANGED
@@ -152,7 +152,7 @@ class Chef
|
|
152
152
|
unless ::File.exist?(new_resource.path)
|
153
153
|
action_create
|
154
154
|
else
|
155
|
-
logger.
|
155
|
+
logger.debug("#{new_resource} exists at #{new_resource.path} taking no action.")
|
156
156
|
end
|
157
157
|
end
|
158
158
|
|
@@ -334,7 +334,7 @@ class Chef
|
|
334
334
|
end
|
335
335
|
|
336
336
|
def do_validate_content
|
337
|
-
if new_resource.checksum && tempfile &&
|
337
|
+
if new_resource.checksum && tempfile && ( new_resource.checksum != tempfile_checksum )
|
338
338
|
raise Chef::Exceptions::ChecksumMismatch.new(short_cksum(new_resource.checksum), short_cksum(tempfile_checksum))
|
339
339
|
end
|
340
340
|
|
@@ -448,7 +448,7 @@ class Chef
|
|
448
448
|
|
449
449
|
def contents_changed?
|
450
450
|
logger.trace "calculating checksum of #{tempfile.path} to compare with #{current_resource.checksum}"
|
451
|
-
|
451
|
+
tempfile_checksum != current_resource.checksum
|
452
452
|
end
|
453
453
|
|
454
454
|
def tempfile
|
data/lib/chef/provider/git.rb
CHANGED
@@ -94,7 +94,7 @@ class Chef
|
|
94
94
|
enable_submodules
|
95
95
|
add_remotes
|
96
96
|
else
|
97
|
-
logger.
|
97
|
+
logger.debug "#{new_resource} checkout destination #{cwd} already exists or is a non-empty directory"
|
98
98
|
end
|
99
99
|
end
|
100
100
|
|
@@ -281,12 +281,10 @@ class Chef
|
|
281
281
|
|
282
282
|
def target_revision
|
283
283
|
@target_revision ||=
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
@target_revision = remote_resolve_reference
|
289
|
-
end
|
284
|
+
if sha_hash?(new_resource.revision)
|
285
|
+
@target_revision = new_resource.revision
|
286
|
+
else
|
287
|
+
@target_revision = remote_resolve_reference
|
290
288
|
end
|
291
289
|
end
|
292
290
|
|
@@ -158,7 +158,7 @@ class Chef
|
|
158
158
|
if new_resource.group_name && (current_resource.group_name != new_resource.group_name)
|
159
159
|
dscl_create_group
|
160
160
|
end
|
161
|
-
if new_resource.gid && (current_resource.gid != new_resource.gid
|
161
|
+
if new_resource.gid && (current_resource.gid != new_resource.gid)
|
162
162
|
set_gid
|
163
163
|
end
|
164
164
|
if new_resource.members || new_resource.excluded_members
|
@@ -67,7 +67,7 @@ class Chef
|
|
67
67
|
members_to_be_added << member unless current_resource.members.include?(member)
|
68
68
|
end
|
69
69
|
members_to_be_added.each do |member|
|
70
|
-
logger.
|
70
|
+
logger.debug("#{new_resource} appending member #{member} to group #{new_resource.group_name}")
|
71
71
|
add_member(member)
|
72
72
|
end
|
73
73
|
end
|
@@ -79,13 +79,13 @@ class Chef
|
|
79
79
|
end
|
80
80
|
|
81
81
|
members_to_be_removed.each do |member|
|
82
|
-
logger.
|
82
|
+
logger.debug("#{new_resource} removing member #{member} from group #{new_resource.group_name}")
|
83
83
|
remove_member(member)
|
84
84
|
end
|
85
85
|
end
|
86
86
|
else
|
87
87
|
members_description = new_resource.members.empty? ? "none" : new_resource.members.join(", ")
|
88
|
-
logger.
|
88
|
+
logger.debug("#{new_resource} setting group members to: #{members_description}")
|
89
89
|
set_members(new_resource.members)
|
90
90
|
end
|
91
91
|
end
|
@@ -66,13 +66,13 @@ class Chef
|
|
66
66
|
end
|
67
67
|
end
|
68
68
|
|
69
|
-
logger.
|
69
|
+
logger.debug("#{new_resource} not changing group members, the group has no members to add") if members_to_be_added.empty?
|
70
70
|
|
71
71
|
add_group_members(members_to_be_added)
|
72
72
|
else
|
73
73
|
# We are resetting the members of a group so use the same trick
|
74
74
|
reset_group_membership
|
75
|
-
logger.
|
75
|
+
logger.debug("#{new_resource} setting group members to: none") if new_resource.members.empty?
|
76
76
|
add_group_members(new_resource.members)
|
77
77
|
end
|
78
78
|
end
|
@@ -84,7 +84,7 @@ class Chef
|
|
84
84
|
|
85
85
|
# Adds a list of usernames to the group using `user mod`
|
86
86
|
def add_group_members(members)
|
87
|
-
logger.
|
87
|
+
logger.debug("#{new_resource} adding members #{members.join(", ")}") unless members.empty?
|
88
88
|
members.each do |user|
|
89
89
|
shell_out!("user", "mod", "-G", new_resource.group_name, user)
|
90
90
|
end
|
@@ -44,7 +44,7 @@ class Chef
|
|
44
44
|
# new or existing group. Because pw groupadd does not support the -m
|
45
45
|
# and -d options used by manage_group, we treat group creation as a
|
46
46
|
# special case and use -M.
|
47
|
-
logger.
|
47
|
+
logger.debug("#{new_resource} setting group members: #{new_resource.members.join(",")}")
|
48
48
|
command += [ "-M", new_resource.members.join(",") ]
|
49
49
|
end
|
50
50
|
|
@@ -119,12 +119,12 @@ class Chef
|
|
119
119
|
end
|
120
120
|
|
121
121
|
unless members_to_be_added.empty?
|
122
|
-
logger.
|
122
|
+
logger.debug("#{new_resource} adding group members: #{members_to_be_added.join(",")}")
|
123
123
|
opts << [ "-m", members_to_be_added.join(",") ]
|
124
124
|
end
|
125
125
|
|
126
126
|
unless members_to_be_removed.empty?
|
127
|
-
logger.
|
127
|
+
logger.debug("#{new_resource} removing group members: #{members_to_be_removed.join(",")}")
|
128
128
|
opts << [ "-d", members_to_be_removed.join(",") ]
|
129
129
|
end
|
130
130
|
|
@@ -205,7 +205,7 @@ class Chef
|
|
205
205
|
logger.info("#{new_resource} deleted")
|
206
206
|
end
|
207
207
|
else
|
208
|
-
logger.
|
208
|
+
logger.debug("#{new_resource} does not exist - nothing to do")
|
209
209
|
end
|
210
210
|
delete_config
|
211
211
|
end
|
@@ -220,7 +220,7 @@ class Chef
|
|
220
220
|
logger.info("#{new_resource} disabled")
|
221
221
|
end
|
222
222
|
else
|
223
|
-
logger.
|
223
|
+
logger.debug("#{new_resource} does not exist - nothing to do")
|
224
224
|
end
|
225
225
|
end
|
226
226
|
|
data/lib/chef/provider/link.rb
CHANGED
@@ -106,7 +106,7 @@ class Chef
|
|
106
106
|
if new_resource.link_type == :symbolic
|
107
107
|
converge_by("create symlink at #{new_resource.target_file} to #{new_resource.to}") do
|
108
108
|
file_class.symlink(canonicalize(new_resource.to), new_resource.target_file)
|
109
|
-
logger.
|
109
|
+
logger.debug("#{new_resource} created #{new_resource.link_type} link from #{new_resource.target_file} -> #{new_resource.to}")
|
110
110
|
logger.info("#{new_resource} created")
|
111
111
|
# file_class.symlink will create the link with default access controls.
|
112
112
|
# This means that the access controls of the file could be different
|
@@ -118,7 +118,7 @@ class Chef
|
|
118
118
|
elsif new_resource.link_type == :hard
|
119
119
|
converge_by("create hard link at #{new_resource.target_file} to #{new_resource.to}") do
|
120
120
|
file_class.link(new_resource.to, new_resource.target_file)
|
121
|
-
logger.
|
121
|
+
logger.debug("#{new_resource} created #{new_resource.link_type} link from #{new_resource.target_file} -> #{new_resource.to}")
|
122
122
|
logger.info("#{new_resource} created")
|
123
123
|
end
|
124
124
|
end
|
@@ -140,7 +140,7 @@ class Chef
|
|
140
140
|
shell_out!(command)
|
141
141
|
logger.trace("#{@new_resource} is mounted at #{@new_resource.mount_point}")
|
142
142
|
else
|
143
|
-
logger.
|
143
|
+
logger.debug("#{@new_resource} is already mounted at #{@new_resource.mount_point}")
|
144
144
|
end
|
145
145
|
end
|
146
146
|
|
@@ -154,7 +154,7 @@ class Chef
|
|
154
154
|
|
155
155
|
def enable_fs
|
156
156
|
if @current_resource.enabled && mount_options_unchanged?
|
157
|
-
logger.
|
157
|
+
logger.debug("#{@new_resource} is already enabled - nothing to do")
|
158
158
|
return nil
|
159
159
|
end
|
160
160
|
|
@@ -211,7 +211,7 @@ class Chef
|
|
211
211
|
contents.each { |line| fstab.puts line }
|
212
212
|
end
|
213
213
|
else
|
214
|
-
logger.
|
214
|
+
logger.debug("#{@new_resource} is not enabled - nothing to do")
|
215
215
|
end
|
216
216
|
end
|
217
217
|
|
@@ -120,7 +120,7 @@ class Chef
|
|
120
120
|
shell_out!(*command)
|
121
121
|
logger.trace("#{@new_resource} is mounted at #{@new_resource.mount_point}")
|
122
122
|
else
|
123
|
-
logger.
|
123
|
+
logger.debug("#{@new_resource} is already mounted at #{@new_resource.mount_point}")
|
124
124
|
end
|
125
125
|
end
|
126
126
|
|
@@ -129,7 +129,7 @@ class Chef
|
|
129
129
|
shell_out!("umount", @new_resource.mount_point)
|
130
130
|
logger.trace("#{@new_resource} is no longer mounted at #{@new_resource.mount_point}")
|
131
131
|
else
|
132
|
-
logger.
|
132
|
+
logger.debug("#{@new_resource} is not mounted at #{@new_resource.mount_point}")
|
133
133
|
end
|
134
134
|
end
|
135
135
|
|
@@ -147,7 +147,7 @@ class Chef
|
|
147
147
|
sleep 1
|
148
148
|
mount_fs
|
149
149
|
else
|
150
|
-
logger.
|
150
|
+
logger.debug("#{@new_resource} is not mounted at #{@new_resource.mount_point} - nothing to do")
|
151
151
|
end
|
152
152
|
end
|
153
153
|
|
@@ -158,7 +158,7 @@ class Chef
|
|
158
158
|
|
159
159
|
def enable_fs
|
160
160
|
if @current_resource.enabled && mount_options_unchanged? && device_unchanged?
|
161
|
-
logger.
|
161
|
+
logger.debug("#{@new_resource} is already enabled - nothing to do")
|
162
162
|
return nil
|
163
163
|
end
|
164
164
|
|
@@ -272,7 +272,7 @@ class Chef
|
|
272
272
|
contents.reverse_each { |line| fstab.puts line }
|
273
273
|
end
|
274
274
|
else
|
275
|
-
logger.
|
275
|
+
logger.debug("#{@new_resource} is not enabled - nothing to do")
|
276
276
|
end
|
277
277
|
end
|
278
278
|
|
@@ -67,7 +67,7 @@ class Chef
|
|
67
67
|
password: @new_resource.password)
|
68
68
|
logger.trace("#{@new_resource} is mounted at #{@new_resource.mount_point}")
|
69
69
|
else
|
70
|
-
logger.
|
70
|
+
logger.debug("#{@new_resource} is already mounted at #{@new_resource.mount_point}")
|
71
71
|
end
|
72
72
|
end
|
73
73
|
|