chef 16.3.45-universal-mingw32 → 16.5.77-universal-mingw32
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 +1 -1
- data/Rakefile +2 -2
- data/bin/knife +1 -1
- data/chef-universal-mingw32.gemspec +0 -1
- data/chef.gemspec +2 -1
- data/distro/templates/powershell/chef/chef.psm1.erb +18 -18
- data/ext/win32-eventlog/Rakefile +2 -2
- data/ext/win32-eventlog/chef-log.man.erb +4 -4
- data/lib/chef/action_collection.rb +4 -0
- data/lib/chef/api_client/registration.rb +2 -2
- data/lib/chef/application.rb +20 -18
- data/lib/chef/application/apply.rb +17 -12
- data/lib/chef/application/base.rb +26 -23
- data/lib/chef/application/client.rb +10 -4
- data/lib/chef/application/exit_code.rb +13 -4
- data/lib/chef/application/knife.rb +22 -11
- data/lib/chef/application/solo.rb +2 -1
- data/lib/chef/application/windows_service.rb +39 -39
- data/lib/chef/application/windows_service_manager.rb +6 -6
- data/lib/chef/chef_class.rb +0 -1
- data/lib/chef/chef_fs/chef_fs_data_store.rb +55 -55
- data/lib/chef/chef_fs/file_system/chef_server/acl_entry.rb +10 -10
- data/lib/chef/chef_fs/file_system/chef_server/organization_invites_entry.rb +8 -8
- data/lib/chef/chef_fs/file_system/chef_server/organization_members_entry.rb +8 -8
- data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_dir.rb +2 -2
- data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_entry.rb +2 -2
- data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_root_dir.rb +18 -18
- data/lib/chef/chef_fs/file_system/repository/directory.rb +1 -1
- data/lib/chef/chef_fs/file_system/repository/file_system_entry.rb +1 -1
- data/lib/chef/chef_fs/knife.rb +2 -2
- data/lib/chef/chef_fs/parallelizer.rb +0 -1
- data/lib/chef/client.rb +21 -22
- data/lib/chef/cookbook/cookbook_version_loader.rb +1 -1
- data/lib/chef/cookbook/gem_installer.rb +1 -1
- data/lib/chef/cookbook/synchronizer.rb +2 -2
- data/lib/chef/cookbook_site_streaming_uploader.rb +13 -11
- data/lib/chef/cookbook_uploader.rb +1 -1
- data/lib/chef/data_collector.rb +6 -5
- data/lib/chef/data_collector/config_validation.rb +22 -13
- data/lib/chef/data_collector/run_end_message.rb +13 -3
- data/lib/chef/data_collector/run_start_message.rb +1 -1
- data/lib/chef/deprecated.rb +1 -1
- data/lib/chef/deprecation/warnings.rb +2 -2
- data/lib/chef/digester.rb +2 -2
- data/lib/chef/dsl/chef_vault.rb +1 -1
- data/lib/chef/dsl/data_query.rb +2 -2
- data/lib/chef/dsl/platform_introspection.rb +9 -9
- data/lib/chef/encrypted_data_bag_item.rb +3 -4
- data/lib/chef/encrypted_data_bag_item/decryptor.rb +3 -3
- data/lib/chef/encrypted_data_bag_item/encryptor.rb +3 -3
- data/lib/chef/environment.rb +4 -4
- data/lib/chef/event_loggers/windows_eventlog.rb +2 -2
- data/lib/chef/exceptions.rb +5 -5
- data/lib/chef/file_access_control/windows.rb +5 -1
- data/lib/chef/file_content_management/tempfile.rb +10 -10
- data/lib/chef/formatters/doc.rb +7 -6
- data/lib/chef/formatters/error_inspectors/api_error_formatting.rb +6 -5
- data/lib/chef/formatters/error_inspectors/node_load_error_inspector.rb +3 -3
- data/lib/chef/formatters/error_inspectors/registration_error_inspector.rb +9 -9
- data/lib/chef/formatters/error_inspectors/resource_failure_inspector.rb +2 -2
- data/lib/chef/formatters/error_inspectors/run_list_expansion_error_inspector.rb +3 -3
- data/lib/chef/formatters/indentable_output_stream.rb +2 -2
- data/lib/chef/formatters/minimal.rb +5 -4
- data/lib/chef/http.rb +6 -3
- data/lib/chef/http/auth_credentials.rb +5 -1
- data/lib/chef/http/authenticator.rb +1 -1
- data/lib/chef/http/basic_client.rb +4 -2
- data/lib/chef/http/decompressor.rb +1 -1
- data/lib/chef/http/http_request.rb +7 -5
- data/lib/chef/http/socketless_chef_zero_client.rb +5 -2
- data/lib/chef/http/ssl_policies.rb +1 -1
- data/lib/chef/json_compat.rb +2 -2
- data/lib/chef/knife.rb +4 -4
- data/lib/chef/knife/bootstrap.rb +18 -16
- data/lib/chef/knife/bootstrap/chef_vault_handler.rb +1 -1
- data/lib/chef/knife/bootstrap/templates/chef-full.erb +3 -3
- data/lib/chef/knife/bootstrap/templates/windows-chef-client-msi.erb +7 -7
- data/lib/chef/knife/client_create.rb +3 -3
- data/lib/chef/knife/config_get.rb +8 -97
- data/lib/chef/knife/config_get_profile.rb +9 -9
- data/lib/chef/knife/config_list.rb +139 -0
- data/lib/chef/knife/config_list_profiles.rb +8 -98
- data/lib/chef/knife/config_show.rb +127 -0
- data/lib/chef/knife/config_use.rb +61 -0
- data/lib/chef/knife/config_use_profile.rb +9 -24
- data/lib/chef/knife/configure.rb +4 -2
- data/lib/chef/knife/cookbook_download.rb +1 -1
- data/lib/chef/knife/cookbook_metadata.rb +1 -1
- data/lib/chef/knife/cookbook_upload.rb +23 -23
- data/lib/chef/knife/core/bootstrap_context.rb +2 -2
- data/lib/chef/knife/core/generic_presenter.rb +1 -1
- data/lib/chef/knife/core/hashed_command_loader.rb +2 -2
- data/lib/chef/knife/core/object_loader.rb +1 -1
- data/lib/chef/knife/core/ui.rb +1 -1
- data/lib/chef/knife/core/windows_bootstrap_context.rb +42 -34
- data/lib/chef/knife/delete.rb +15 -15
- data/lib/chef/knife/exec.rb +4 -4
- data/lib/chef/knife/node_policy_set.rb +2 -2
- data/lib/chef/knife/node_run_list_add.rb +1 -1
- data/lib/chef/knife/node_run_list_remove.rb +1 -1
- data/lib/chef/knife/node_run_list_set.rb +1 -1
- data/lib/chef/knife/node_show.rb +2 -2
- data/lib/chef/knife/role_env_run_list_add.rb +1 -1
- data/lib/chef/knife/role_env_run_list_set.rb +1 -1
- data/lib/chef/knife/role_run_list_add.rb +1 -1
- data/lib/chef/knife/role_run_list_set.rb +1 -1
- data/lib/chef/knife/search.rb +0 -1
- data/lib/chef/knife/serve.rb +3 -3
- data/lib/chef/knife/ssh.rb +24 -9
- data/lib/chef/knife/ssl_check.rb +3 -3
- data/lib/chef/knife/status.rb +2 -2
- data/lib/chef/knife/tag_create.rb +1 -1
- data/lib/chef/knife/tag_delete.rb +1 -1
- data/lib/chef/knife/user_create.rb +2 -2
- data/lib/chef/knife/xargs.rb +19 -19
- data/lib/chef/knife/yaml_convert.rb +1 -1
- data/lib/chef/local_mode.rb +2 -2
- data/lib/chef/log/syslog.rb +2 -2
- data/lib/chef/log/winevt.rb +2 -2
- data/lib/chef/mixin/checksum.rb +0 -1
- data/lib/chef/mixin/deep_merge.rb +35 -18
- data/lib/chef/mixin/openssl_helper.rb +4 -5
- data/lib/chef/mixin/shell_out.rb +1 -1
- data/lib/chef/mixin/template.rb +3 -3
- data/lib/chef/mixin/uris.rb +4 -2
- data/lib/chef/mixin/versioned_api.rb +1 -2
- data/lib/chef/mixin/which.rb +1 -1
- data/lib/chef/monkey_patches/net_http.rb +4 -4
- data/lib/chef/monkey_patches/webrick-utils.rb +10 -10
- data/lib/chef/node/attribute.rb +2 -4
- data/lib/chef/node_map.rb +4 -4
- data/lib/chef/platform/service_helpers.rb +1 -1
- data/lib/chef/policy_builder/dynamic.rb +2 -0
- data/lib/chef/policy_builder/policyfile.rb +2 -2
- data/lib/chef/property.rb +1 -1
- data/lib/chef/provider.rb +1 -5
- data/lib/chef/provider/cron/unix.rb +0 -2
- data/lib/chef/provider/file.rb +2 -2
- data/lib/chef/provider/git.rb +5 -5
- data/lib/chef/provider/group.rb +0 -2
- data/lib/chef/provider/group/suse.rb +5 -5
- data/lib/chef/provider/ifconfig.rb +1 -4
- data/lib/chef/provider/launchd.rb +2 -2
- data/lib/chef/provider/link.rb +0 -9
- data/lib/chef/provider/mount.rb +0 -2
- data/lib/chef/provider/mount/linux.rb +63 -0
- data/lib/chef/provider/package.rb +0 -2
- data/lib/chef/provider/package/dpkg.rb +3 -12
- data/lib/chef/provider/package/homebrew.rb +1 -1
- data/lib/chef/provider/package/rubygems.rb +22 -19
- data/lib/chef/provider/package/snap.rb +1 -2
- data/lib/chef/provider/package/windows.rb +2 -2
- data/lib/chef/provider/package/windows/registry_uninstall_entry.rb +12 -10
- data/lib/chef/provider/package/zypper.rb +1 -1
- data/lib/chef/provider/powershell_script.rb +21 -5
- data/lib/chef/provider/remote_file/content.rb +3 -0
- data/lib/chef/provider/remote_file/ftp.rb +6 -4
- data/lib/chef/provider/remote_file/sftp.rb +6 -4
- data/lib/chef/provider/route.rb +2 -6
- data/lib/chef/provider/service/arch.rb +1 -1
- data/lib/chef/provider/service/debian.rb +1 -1
- data/lib/chef/provider/service/gentoo.rb +2 -2
- data/lib/chef/provider/service/macosx.rb +4 -4
- data/lib/chef/provider/service/openbsd.rb +1 -4
- data/lib/chef/provider/service/redhat.rb +3 -3
- data/lib/chef/provider/service/upstart.rb +1 -1
- data/lib/chef/provider/service/windows.rb +10 -10
- data/lib/chef/provider/systemd_unit.rb +0 -2
- data/lib/chef/provider/template/content.rb +1 -0
- data/lib/chef/provider/template_finder.rb +2 -10
- data/lib/chef/provider/user/dscl.rb +7 -7
- data/lib/chef/provider/user/mac.rb +12 -12
- data/lib/chef/provider/windows_task.rb +1 -5
- data/lib/chef/provider/zypper_repository.rb +2 -3
- data/lib/chef/provider_resolver.rb +1 -1
- data/lib/chef/providers.rb +1 -1
- data/lib/chef/recipe.rb +2 -2
- data/lib/chef/resource.rb +8 -12
- data/lib/chef/resource/apt_repository.rb +5 -12
- data/lib/chef/resource/bff_package.rb +22 -0
- data/lib/chef/resource/breakpoint.rb +57 -2
- data/lib/chef/resource/build_essential.rb +1 -1
- data/lib/chef/resource/cab_package.rb +29 -0
- data/lib/chef/resource/chef_client_cron.rb +32 -25
- data/lib/chef/resource/chef_client_launchd.rb +194 -0
- data/lib/chef/resource/chef_client_scheduled_task.rb +21 -18
- data/lib/chef/resource/chef_client_systemd_timer.rb +26 -19
- data/lib/chef/resource/chef_client_trusted_certificate.rb +101 -0
- data/lib/chef/resource/chef_gem.rb +10 -10
- data/lib/chef/resource/chef_handler.rb +149 -4
- data/lib/chef/resource/chef_sleep.rb +2 -2
- data/lib/chef/resource/chef_vault_secret.rb +14 -14
- data/lib/chef/resource/cookbook_file.rb +2 -2
- data/lib/chef/resource/cron/_cron_shared.rb +1 -0
- data/lib/chef/resource/cron/cron_d.rb +0 -1
- data/lib/chef/resource/dnf_package.rb +2 -2
- data/lib/chef/resource/dsc_resource.rb +0 -1
- data/lib/chef/resource/dsc_script.rb +2 -2
- data/lib/chef/resource/execute.rb +8 -9
- data/lib/chef/resource/file.rb +4 -4
- data/lib/chef/resource/gem_package.rb +5 -5
- data/lib/chef/resource/homebrew_package.rb +3 -3
- data/lib/chef/resource/homebrew_update.rb +7 -7
- data/lib/chef/resource/hostname.rb +2 -2
- data/lib/chef/resource/launchd.rb +2 -1
- data/lib/chef/resource/locale.rb +2 -2
- data/lib/chef/resource/macos_userdefaults.rb +3 -3
- data/lib/chef/resource/notify_group.rb +0 -1
- data/lib/chef/resource/ohai.rb +46 -3
- data/lib/chef/resource/ohai_hint.rb +33 -0
- data/lib/chef/resource/openssl_dhparam.rb +29 -5
- data/lib/chef/resource/openssl_ec_private_key.rb +8 -3
- data/lib/chef/resource/openssl_ec_public_key.rb +4 -2
- data/lib/chef/resource/openssl_rsa_private_key.rb +8 -3
- data/lib/chef/resource/openssl_rsa_public_key.rb +2 -0
- data/lib/chef/resource/openssl_x509_certificate.rb +38 -35
- data/lib/chef/resource/openssl_x509_crl.rb +21 -10
- data/lib/chef/resource/openssl_x509_request.rb +37 -36
- data/lib/chef/resource/osx_profile.rb +292 -6
- data/lib/chef/resource/plist.rb +1 -1
- data/lib/chef/resource/powershell_package_source.rb +6 -6
- data/lib/chef/resource/powershell_script.rb +24 -30
- data/lib/chef/resource/reboot.rb +2 -2
- data/lib/chef/resource/remote_file.rb +3 -3
- data/lib/chef/resource/rhsm_register.rb +22 -10
- data/lib/chef/resource/ruby_block.rb +2 -2
- data/lib/chef/resource/scm/subversion.rb +2 -2
- data/lib/chef/resource/service.rb +3 -3
- data/lib/chef/resource/ssh_known_hosts_entry.rb +2 -2
- data/lib/chef/resource/sudo.rb +1 -1
- data/lib/chef/resource/support/cron.d.erb +1 -1
- data/lib/chef/resource/support/cron_access.erb +1 -1
- data/lib/chef/resource/support/sudoer.erb +1 -1
- data/lib/chef/resource/support/ulimit.erb +1 -1
- data/lib/chef/resource/sysctl.rb +6 -10
- data/lib/chef/resource/systemd_unit.rb +2 -2
- data/lib/chef/resource/template.rb +2 -2
- data/lib/chef/resource/timezone.rb +112 -73
- data/lib/chef/resource/windows_ad_join.rb +12 -3
- data/lib/chef/resource/windows_audit_policy.rb +3 -0
- data/lib/chef/resource/windows_auto_run.rb +2 -0
- data/lib/chef/resource/windows_certificate.rb +8 -4
- data/lib/chef/resource/windows_dfs_folder.rb +2 -0
- data/lib/chef/resource/windows_dfs_namespace.rb +2 -0
- data/lib/chef/resource/windows_dfs_server.rb +2 -0
- data/lib/chef/resource/windows_dns_record.rb +10 -7
- data/lib/chef/resource/windows_dns_zone.rb +12 -7
- data/lib/chef/resource/windows_feature.rb +2 -0
- data/lib/chef/resource/windows_feature_dism.rb +10 -0
- data/lib/chef/resource/windows_feature_powershell.rb +14 -2
- data/lib/chef/resource/windows_firewall_profile.rb +24 -20
- data/lib/chef/resource/windows_firewall_rule.rb +5 -3
- data/lib/chef/resource/windows_font.rb +3 -1
- data/lib/chef/resource/windows_package.rb +28 -5
- data/lib/chef/resource/windows_pagefile.rb +4 -0
- data/lib/chef/resource/windows_printer.rb +22 -21
- data/lib/chef/resource/windows_printer_port.rb +20 -17
- data/lib/chef/resource/windows_security_policy.rb +2 -0
- data/lib/chef/resource/windows_share.rb +5 -3
- data/lib/chef/resource/windows_shortcut.rb +2 -0
- data/lib/chef/resource/windows_uac.rb +2 -0
- data/lib/chef/resource/windows_user_privilege.rb +54 -53
- data/lib/chef/resource/windows_workgroup.rb +5 -6
- data/lib/chef/resource/yum_package.rb +2 -2
- data/lib/chef/resource_collection/stepable_iterator.rb +1 -2
- data/lib/chef/resource_reporter.rb +0 -2
- data/lib/chef/resources.rb +3 -1
- data/lib/chef/role.rb +2 -2
- data/lib/chef/run_context.rb +2 -2
- data/lib/chef/run_context/cookbook_compiler.rb +21 -21
- data/lib/chef/run_lock.rb +2 -2
- data/lib/chef/run_status.rb +2 -6
- data/lib/chef/search/query.rb +6 -5
- data/lib/chef/shell.rb +32 -27
- data/lib/chef/shell/ext.rb +11 -11
- data/lib/chef/shell/shell_session.rb +2 -2
- data/lib/chef/train_transport.rb +5 -104
- data/lib/chef/util/backup.rb +2 -2
- data/lib/chef/util/diff.rb +14 -14
- data/lib/chef/util/powershell/cmdlet.rb +4 -2
- data/lib/chef/util/powershell/ps_credential.rb +18 -14
- data/lib/chef/util/threaded_job_queue.rb +0 -2
- data/lib/chef/version.rb +1 -1
- data/lib/chef/win32/crypto.rb +1 -1
- data/lib/chef/win32/file.rb +3 -3
- data/lib/chef/win32/file/version_info.rb +5 -5
- data/lib/chef/win32/registry.rb +1 -2
- data/lib/chef/win32/unicode.rb +1 -1
- data/spec/data/shef-config.rb +1 -1
- data/spec/data/ssl/chef-rspec.cert +15 -15
- data/spec/functional/event_loggers/windows_eventlog_spec.rb +6 -5
- data/spec/functional/resource/aix_service_spec.rb +2 -2
- data/spec/functional/resource/aixinit_service_spec.rb +8 -8
- data/spec/functional/resource/bff_spec.rb +2 -2
- data/spec/functional/resource/cookbook_file_spec.rb +1 -1
- data/spec/functional/resource/dsc_resource_spec.rb +1 -1
- data/spec/functional/resource/dsc_script_spec.rb +0 -1
- data/spec/functional/resource/group_spec.rb +6 -6
- data/spec/functional/resource/insserv_spec.rb +5 -5
- data/spec/functional/resource/link_spec.rb +20 -20
- data/spec/functional/resource/powershell_script_spec.rb +4 -4
- data/spec/functional/resource/rpm_spec.rb +2 -2
- data/spec/functional/resource/user/dscl_spec.rb +1 -1
- data/spec/functional/resource/user/mac_user_spec.rb +1 -1
- data/spec/functional/resource/windows_certificate_spec.rb +3 -3
- data/spec/functional/resource/windows_font_spec.rb +49 -0
- data/spec/functional/resource/windows_security_policy_spec.rb +0 -3
- data/spec/functional/resource/windows_task_spec.rb +13 -13
- data/spec/functional/run_lock_spec.rb +24 -24
- data/spec/functional/version_spec.rb +3 -3
- data/spec/functional/win32/registry_spec.rb +8 -8
- data/spec/functional/win32/service_manager_spec.rb +1 -1
- data/spec/integration/client/client_spec.rb +4 -4
- data/spec/integration/client/exit_code_spec.rb +3 -2
- data/spec/integration/client/ipv6_spec.rb +1 -1
- data/spec/integration/knife/common_options_spec.rb +12 -12
- data/spec/integration/knife/config_list_spec.rb +220 -0
- data/spec/integration/knife/config_show_spec.rb +192 -0
- data/spec/integration/knife/config_use_spec.rb +198 -0
- data/spec/integration/knife/cookbook_api_ipv6_spec.rb +1 -1
- data/spec/integration/knife/diff_spec.rb +3 -1
- data/spec/integration/knife/download_spec.rb +3 -1
- data/spec/integration/knife/serve_spec.rb +5 -5
- data/spec/integration/knife/upload_spec.rb +3 -1
- data/spec/integration/ohai/ohai_spec.rb +61 -0
- data/spec/integration/recipes/lwrp_inline_resources_spec.rb +1 -1
- data/spec/integration/recipes/remote_directory.rb +1 -1
- data/spec/integration/solo/solo_spec.rb +5 -5
- data/spec/spec_helper.rb +12 -11
- data/spec/stress/win32/file_spec.rb +1 -1
- data/spec/support/chef_helpers.rb +2 -2
- data/spec/support/matchers/leak.rb +2 -2
- data/spec/support/platform_helpers.rb +17 -35
- data/spec/support/platforms/win32/spec_service.rb +1 -1
- data/spec/support/shared/functional/directory_resource.rb +1 -1
- data/spec/support/shared/functional/execute_resource.rb +1 -1
- data/spec/support/shared/functional/file_resource.rb +20 -20
- data/spec/support/shared/functional/securable_resource.rb +108 -27
- data/spec/support/shared/functional/win32_service.rb +2 -2
- data/spec/support/shared/functional/windows_script.rb +3 -3
- data/spec/support/shared/integration/integration_helper.rb +22 -52
- data/spec/support/shared/unit/application_dot_d.rb +5 -3
- data/spec/support/shared/unit/script_resource.rb +6 -20
- data/spec/support/shared/unit/windows_script_resource.rb +15 -28
- data/spec/tiny_server.rb +0 -1
- data/spec/unit/application/client_spec.rb +2 -2
- data/spec/unit/application/exit_code_spec.rb +10 -0
- data/spec/unit/application_spec.rb +4 -6
- data/spec/unit/chef_fs/config_spec.rb +1 -1
- data/spec/unit/chef_fs/data_handler/data_bag_item_data_handler.rb +1 -1
- data/spec/unit/chef_fs/parallelizer_spec.rb +5 -1
- data/spec/unit/chef_fs/path_util_spec.rb +1 -1
- data/spec/unit/cookbook/synchronizer_spec.rb +2 -2
- data/spec/unit/cookbook_spec.rb +2 -2
- data/spec/unit/data_collector/config_validation_spec.rb +208 -0
- data/spec/unit/data_collector_spec.rb +28 -117
- data/spec/unit/dsl/declare_resource_spec.rb +1 -1
- data/spec/unit/environment_spec.rb +7 -7
- data/spec/unit/file_access_control_spec.rb +1 -1
- data/spec/unit/knife/bootstrap_spec.rb +20 -20
- data/spec/unit/knife/cookbook_download_spec.rb +4 -4
- data/spec/unit/knife/cookbook_metadata_from_file_spec.rb +1 -1
- data/spec/unit/knife/core/hashed_command_loader_spec.rb +3 -3
- data/spec/unit/knife/core/ui_spec.rb +1 -0
- data/spec/unit/knife/core/windows_bootstrap_context_spec.rb +21 -12
- data/spec/unit/knife/ssh_spec.rb +2 -2
- data/spec/unit/knife/supermarket_share_spec.rb +1 -1
- data/spec/unit/lwrp_spec.rb +3 -3
- data/spec/unit/mixin/deep_merge_spec.rb +15 -0
- data/spec/unit/mixin/openssl_helper_spec.rb +1 -1
- data/spec/unit/mixin/powershell_exec_spec.rb +1 -1
- data/spec/unit/mixin/securable_spec.rb +2 -2
- data/spec/unit/mixin/template_spec.rb +30 -30
- data/spec/unit/mixin/windows_architecture_helper_spec.rb +4 -4
- data/spec/unit/node/immutable_collections_spec.rb +8 -4
- data/spec/unit/node_spec.rb +5 -5
- data/spec/unit/provider/mount/linux_spec.rb +97 -0
- data/spec/unit/provider/package/chocolatey_spec.rb +1 -1
- data/spec/unit/provider/package/powershell_spec.rb +1 -1
- data/spec/unit/provider/package/rubygems_spec.rb +4 -1
- data/spec/unit/provider/powershell_script_spec.rb +11 -4
- data/spec/unit/provider/remote_directory_spec.rb +9 -9
- data/spec/unit/provider/route_spec.rb +0 -2
- data/spec/unit/provider/service/arch_service_spec.rb +3 -2
- data/spec/unit/provider/service/debian_service_spec.rb +1 -1
- data/spec/unit/provider/service/gentoo_service_spec.rb +7 -7
- data/spec/unit/provider/service/macosx_spec.rb +3 -3
- data/spec/unit/provider/service/redhat_spec.rb +2 -2
- data/spec/unit/provider/service/upstart_service_spec.rb +3 -3
- data/spec/unit/provider_resolver_spec.rb +6 -6
- data/spec/unit/recipe_spec.rb +1 -1
- data/spec/unit/resource/batch_spec.rb +6 -6
- data/spec/unit/resource/chef_client_cron_spec.rb +35 -14
- data/spec/unit/resource/chef_client_launchd_spec.rb +127 -0
- data/spec/unit/resource/chef_client_systemd_timer_spec.rb +36 -1
- data/spec/unit/resource/chef_client_trusted_certificate_spec.rb +54 -0
- data/spec/unit/resource/execute_spec.rb +113 -118
- data/spec/unit/resource/launchd_spec.rb +8 -0
- data/spec/unit/resource/osx_profile_spec.rb +299 -0
- data/spec/unit/resource/powershell_script_spec.rb +11 -29
- data/spec/unit/resource/rhsm_register_spec.rb +56 -18
- data/spec/unit/resource/script_spec.rb +6 -1
- data/spec/unit/resource/timezone_spec.rb +63 -0
- data/spec/unit/resource/windows_feature_powershell_spec.rb +30 -4
- data/spec/unit/resource/windows_uac_spec.rb +1 -1
- data/spec/unit/resource/windows_user_privilege_spec.rb +55 -0
- data/spec/unit/role_spec.rb +11 -11
- data/spec/unit/run_lock_spec.rb +5 -1
- data/spec/unit/runner_spec.rb +1 -2
- data/spec/unit/shell/shell_ext_spec.rb +46 -3
- data/spec/unit/shell/shell_session_spec.rb +35 -64
- data/spec/unit/shell_spec.rb +16 -19
- data/spec/unit/train_transport_spec.rb +14 -13
- data/spec/unit/util/selinux_spec.rb +2 -0
- data/tasks/rspec.rb +1 -3
- metadata +42 -33
- data/lib/chef/dist.rb +0 -68
- data/lib/chef/provider/osx_profile.rb +0 -255
- data/spec/integration/knife/config_get_profile_spec.rb +0 -113
- data/spec/integration/knife/config_get_spec.rb +0 -191
- data/spec/integration/knife/config_list_profiles_spec.rb +0 -218
- data/spec/integration/knife/config_use_profile_spec.rb +0 -154
- data/spec/unit/provider/osx_profile_spec.rb +0 -255
@@ -21,6 +21,9 @@ require "uri" unless defined?(URI)
|
|
21
21
|
require "tempfile" unless defined?(Tempfile)
|
22
22
|
require_relative "../../file_content_management/content_base"
|
23
23
|
require_relative "../../mixin/uris"
|
24
|
+
module Net
|
25
|
+
autoload :FTPError, "net/ftp"
|
26
|
+
end
|
24
27
|
|
25
28
|
class Chef
|
26
29
|
class Provider
|
@@ -16,10 +16,12 @@
|
|
16
16
|
# limitations under the License.
|
17
17
|
#
|
18
18
|
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
19
|
+
autoload :URI, "uri"
|
20
|
+
autoload :CGI, "cgi"
|
21
|
+
autoload :Tempfile, "tempfile"
|
22
|
+
module Net
|
23
|
+
autoload :FTP, "net/ftp"
|
24
|
+
end
|
23
25
|
require_relative "../remote_file"
|
24
26
|
require_relative "../../file_content_management/tempfile"
|
25
27
|
|
@@ -16,10 +16,12 @@
|
|
16
16
|
# limitations under the License.
|
17
17
|
#
|
18
18
|
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
19
|
+
autoload :URI, "uri"
|
20
|
+
autoload :CGI, "cgi"
|
21
|
+
autoload :Tempfile, "tempfile"
|
22
|
+
module Net
|
23
|
+
autoload :SFTP, "net/sftp"
|
24
|
+
end
|
23
25
|
require_relative "../remote_file"
|
24
26
|
require_relative "../../file_content_management/tempfile"
|
25
27
|
|
data/lib/chef/provider/route.rb
CHANGED
@@ -19,7 +19,7 @@
|
|
19
19
|
|
20
20
|
require_relative "../log"
|
21
21
|
require_relative "../provider"
|
22
|
-
|
22
|
+
autoload :IPAddr, "ipaddr"
|
23
23
|
|
24
24
|
class Chef
|
25
25
|
class Provider
|
@@ -169,11 +169,7 @@ class Chef
|
|
169
169
|
next unless resource.is_a? Chef::Resource::Route
|
170
170
|
|
171
171
|
# default to eth0
|
172
|
-
dev =
|
173
|
-
resource.device
|
174
|
-
else
|
175
|
-
"eth0"
|
176
|
-
end
|
172
|
+
dev = resource.device || "eth0"
|
177
173
|
|
178
174
|
conf[dev] = "" if conf[dev].nil?
|
179
175
|
case @action
|
@@ -32,7 +32,7 @@ class Chef::Provider::Service::Arch < Chef::Provider::Service::Init
|
|
32
32
|
end
|
33
33
|
|
34
34
|
def load_current_resource
|
35
|
-
raise Chef::Exceptions::Service, "Could not find /etc/rc.conf" unless ::File.
|
35
|
+
raise Chef::Exceptions::Service, "Could not find /etc/rc.conf" unless ::File.exist?("/etc/rc.conf")
|
36
36
|
raise Chef::Exceptions::Service, "No DAEMONS found in /etc/rc.conf" unless /DAEMONS=\((.*)\)/m.match?(::File.read("/etc/rc.conf"))
|
37
37
|
|
38
38
|
super
|
@@ -45,7 +45,7 @@ class Chef
|
|
45
45
|
shared_resource_requirements
|
46
46
|
requirements.assert(:all_actions) do |a|
|
47
47
|
update_rcd = "/usr/sbin/update-rc.d"
|
48
|
-
a.assertion { ::File.
|
48
|
+
a.assertion { ::File.exist? update_rcd }
|
49
49
|
a.failure_message Chef::Exceptions::Service, "#{update_rcd} does not exist!"
|
50
50
|
# no whyrun recovery - this is a base system component of debian
|
51
51
|
# distros and must be present
|
@@ -34,7 +34,7 @@ class Chef::Provider::Service::Gentoo < Chef::Provider::Service::Init
|
|
34
34
|
@current_resource.enabled(
|
35
35
|
Dir.glob("/etc/runlevels/**/#{Chef::Util::PathHelper.escape_glob_dir(@current_resource.service_name)}").any? do |file|
|
36
36
|
@found_script = true
|
37
|
-
exists = ::File.
|
37
|
+
exists = ::File.exist? file
|
38
38
|
readable = ::File.readable? file
|
39
39
|
logger.trace "#{@new_resource} exists: #{exists}, readable: #{readable}"
|
40
40
|
exists && readable
|
@@ -47,7 +47,7 @@ class Chef::Provider::Service::Gentoo < Chef::Provider::Service::Init
|
|
47
47
|
|
48
48
|
def define_resource_requirements
|
49
49
|
requirements.assert(:all_actions) do |a|
|
50
|
-
a.assertion { ::File.
|
50
|
+
a.assertion { ::File.exist?("/sbin/rc-update") }
|
51
51
|
a.failure_message Chef::Exceptions::Service, "/sbin/rc-update does not exist"
|
52
52
|
# no whyrun recovery -t his is a core component whose presence is
|
53
53
|
# unlikely to be affected by what we do in the course of a chef run
|
@@ -18,7 +18,7 @@
|
|
18
18
|
#
|
19
19
|
|
20
20
|
require "etc" unless defined?(Etc)
|
21
|
-
|
21
|
+
autoload :REXML, "rexml/document"
|
22
22
|
require_relative "../../resource/service"
|
23
23
|
require_relative "../../resource/macosx_service"
|
24
24
|
require_relative "simple"
|
@@ -47,7 +47,7 @@ class Chef
|
|
47
47
|
@current_resource = Chef::Resource::MacosxService.new(@new_resource.name)
|
48
48
|
@current_resource.service_name(@new_resource.service_name)
|
49
49
|
@plist_size = 0
|
50
|
-
@plist = @new_resource.plist
|
50
|
+
@plist = @new_resource.plist || find_service_plist
|
51
51
|
@service_label = find_service_label
|
52
52
|
# LaunchAgents should be loaded as the console user.
|
53
53
|
@console_user = @plist ? @plist.include?("LaunchAgents") : false
|
@@ -81,7 +81,7 @@ class Chef
|
|
81
81
|
end
|
82
82
|
|
83
83
|
requirements.assert(:all_actions) do |a|
|
84
|
-
a.assertion { ::File.
|
84
|
+
a.assertion { ::File.exist?(@plist.to_s) }
|
85
85
|
a.failure_message Chef::Exceptions::Service,
|
86
86
|
"Could not find plist for #{@new_resource}"
|
87
87
|
end
|
@@ -221,7 +221,7 @@ class Chef
|
|
221
221
|
return nil if @plist.nil?
|
222
222
|
|
223
223
|
# Plist must exist by this point
|
224
|
-
raise Chef::Exceptions::FileNotFound, "Cannot find #{@plist}!" unless ::File.
|
224
|
+
raise Chef::Exceptions::FileNotFound, "Cannot find #{@plist}!" unless ::File.exist?(@plist)
|
225
225
|
|
226
226
|
# Most services have the same internal label as the name of the
|
227
227
|
# plist file. However, there is no rule saying that *has* to be
|
@@ -16,7 +16,6 @@
|
|
16
16
|
# limitations under the License.
|
17
17
|
#
|
18
18
|
|
19
|
-
require_relative "../../mixin/shell_out"
|
20
19
|
require_relative "init"
|
21
20
|
require_relative "../../resource/service"
|
22
21
|
|
@@ -27,8 +26,6 @@ class Chef
|
|
27
26
|
|
28
27
|
provides :service, os: "openbsd"
|
29
28
|
|
30
|
-
include Chef::Mixin::ShellOut
|
31
|
-
|
32
29
|
attr_reader :init_command, :rc_conf, :rc_conf_local, :enabled_state_found
|
33
30
|
|
34
31
|
RC_CONF_PATH = "/etc/rc.conf".freeze
|
@@ -132,7 +129,7 @@ class Chef
|
|
132
129
|
end
|
133
130
|
|
134
131
|
def update_rcl(value)
|
135
|
-
FileUtils.touch RC_CONF_LOCAL_PATH unless ::File.
|
132
|
+
FileUtils.touch RC_CONF_LOCAL_PATH unless ::File.exist? RC_CONF_LOCAL_PATH
|
136
133
|
::File.write(RC_CONF_LOCAL_PATH, value)
|
137
134
|
@rc_conf_local = value
|
138
135
|
end
|
@@ -56,7 +56,7 @@ class Chef
|
|
56
56
|
|
57
57
|
requirements.assert(:all_actions) do |a|
|
58
58
|
chkconfig_file = "/sbin/chkconfig"
|
59
|
-
a.assertion { ::File.
|
59
|
+
a.assertion { ::File.exist? chkconfig_file }
|
60
60
|
a.failure_message Chef::Exceptions::Service, "#{chkconfig_file} does not exist!"
|
61
61
|
end
|
62
62
|
|
@@ -80,11 +80,11 @@ class Chef
|
|
80
80
|
|
81
81
|
super
|
82
82
|
|
83
|
-
if ::File.
|
83
|
+
if ::File.exist?("/sbin/chkconfig")
|
84
84
|
chkconfig = shell_out!("/sbin/chkconfig --list #{current_resource.service_name}", returns: [0, 1])
|
85
85
|
unless run_levels.nil? || run_levels.empty?
|
86
86
|
all_levels_match = true
|
87
|
-
chkconfig.stdout.split(/\s+/)[1
|
87
|
+
chkconfig.stdout.split(/\s+/)[1..].each do |level|
|
88
88
|
index = level.split(":").first
|
89
89
|
status = level.split(":").last
|
90
90
|
if CHKCONFIG_ON.match?(level)
|
@@ -135,7 +135,7 @@ class Chef
|
|
135
135
|
end
|
136
136
|
end
|
137
137
|
# Get enabled/disabled state by reading job configuration file
|
138
|
-
if ::File.
|
138
|
+
if ::File.exist?("#{@upstart_job_dir}/#{@new_resource.service_name}#{@upstart_conf_suffix}")
|
139
139
|
logger.trace("#{@new_resource} found #{@upstart_job_dir}/#{@new_resource.service_name}#{@upstart_conf_suffix}")
|
140
140
|
::File.open("#{@upstart_job_dir}/#{@new_resource.service_name}#{@upstart_conf_suffix}", "r") do |file|
|
141
141
|
while line = file.gets
|
@@ -95,17 +95,17 @@ class Chef::Provider::Service::Windows < Chef::Provider::Service
|
|
95
95
|
shell_out!(@new_resource.start_command)
|
96
96
|
else
|
97
97
|
spawn_command_thread do
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
end
|
98
|
+
|
99
|
+
Win32::Service.start(@new_resource.service_name)
|
100
|
+
rescue SystemCallError => ex
|
101
|
+
if ex.errno == ERROR_SERVICE_LOGON_FAILED
|
102
|
+
logger.error ex.message
|
103
|
+
raise Chef::Exceptions::Service,
|
104
|
+
"Service #{@new_resource} did not start due to a logon failure (error #{ERROR_SERVICE_LOGON_FAILED}): possibly the specified user '#{@new_resource.run_as_user}' does not have the 'log on as a service' privilege, or the password is incorrect."
|
105
|
+
else
|
106
|
+
raise ex
|
108
107
|
end
|
108
|
+
|
109
109
|
end
|
110
110
|
wait_for_state(RUNNING)
|
111
111
|
end
|
@@ -18,7 +18,6 @@
|
|
18
18
|
|
19
19
|
require_relative "../provider"
|
20
20
|
require_relative "../mixin/which"
|
21
|
-
require_relative "../mixin/shell_out"
|
22
21
|
require_relative "../resource/file"
|
23
22
|
require_relative "../resource/file/verification/systemd_unit"
|
24
23
|
require "iniparse"
|
@@ -28,7 +27,6 @@ class Chef
|
|
28
27
|
class Provider
|
29
28
|
class SystemdUnit < Chef::Provider
|
30
29
|
include Chef::Mixin::Which
|
31
|
-
include Chef::Mixin::ShellOut
|
32
30
|
|
33
31
|
provides :systemd_unit
|
34
32
|
|
@@ -43,19 +43,11 @@ class Chef
|
|
43
43
|
protected
|
44
44
|
|
45
45
|
def template_source_name(name, options)
|
46
|
-
|
47
|
-
options[:source]
|
48
|
-
else
|
49
|
-
name
|
50
|
-
end
|
46
|
+
options[:source] || name
|
51
47
|
end
|
52
48
|
|
53
49
|
def find_cookbook_name(options)
|
54
|
-
|
55
|
-
options[:cookbook]
|
56
|
-
else
|
57
|
-
@cookbook_name
|
58
|
-
end
|
50
|
+
options[:cookbook] || @cookbook_name
|
59
51
|
end
|
60
52
|
end
|
61
53
|
end
|
@@ -19,8 +19,8 @@
|
|
19
19
|
require_relative "../../mixin/shell_out"
|
20
20
|
require_relative "../user"
|
21
21
|
require_relative "../../resource/user/dscl_user"
|
22
|
-
|
23
|
-
|
22
|
+
autoload :OpenSSL, "openssl"
|
23
|
+
autoload :Plist, "plist"
|
24
24
|
require_relative "../../util/path_helper"
|
25
25
|
|
26
26
|
class Chef
|
@@ -562,7 +562,7 @@ in 'password', with the associated 'salt' and 'iterations'.")
|
|
562
562
|
# Sets a value in user information hash using Chef attributes as keys.
|
563
563
|
#
|
564
564
|
def dscl_set(user_hash, key, value)
|
565
|
-
raise "Unknown dscl key #{key}" unless DSCL_PROPERTY_MAP.
|
565
|
+
raise "Unknown dscl key #{key}" unless DSCL_PROPERTY_MAP.key?(key)
|
566
566
|
|
567
567
|
user_hash[DSCL_PROPERTY_MAP[key]] = [ value ]
|
568
568
|
user_hash
|
@@ -572,7 +572,7 @@ in 'password', with the associated 'salt' and 'iterations'.")
|
|
572
572
|
# Gets a value from user information hash using Chef attributes as keys.
|
573
573
|
#
|
574
574
|
def dscl_get(user_hash, key)
|
575
|
-
raise "Unknown dscl key #{key}" unless DSCL_PROPERTY_MAP.
|
575
|
+
raise "Unknown dscl key #{key}" unless DSCL_PROPERTY_MAP.key?(key)
|
576
576
|
|
577
577
|
# DSCL values are set as arrays
|
578
578
|
value = user_hash[DSCL_PROPERTY_MAP[key]]
|
@@ -584,16 +584,16 @@ in 'password', with the associated 'salt' and 'iterations'.")
|
|
584
584
|
#
|
585
585
|
|
586
586
|
def run_dscl(*args)
|
587
|
-
result = shell_out("dscl", ".", "-#{args[0]}", args[1
|
587
|
+
result = shell_out("dscl", ".", "-#{args[0]}", args[1..])
|
588
588
|
return "" if ( args.first =~ /^delete/ ) && ( result.exitstatus != 0 )
|
589
589
|
raise(Chef::Exceptions::DsclCommandFailed, "dscl error: #{result.inspect}") unless result.exitstatus == 0
|
590
|
-
raise(Chef::Exceptions::DsclCommandFailed, "dscl error: #{result.inspect}") if
|
590
|
+
raise(Chef::Exceptions::DsclCommandFailed, "dscl error: #{result.inspect}") if result.stdout.include?("No such key: ")
|
591
591
|
|
592
592
|
result.stdout
|
593
593
|
end
|
594
594
|
|
595
595
|
def run_plutil(*args)
|
596
|
-
result = shell_out("plutil", "-#{args[0]}", args[1
|
596
|
+
result = shell_out("plutil", "-#{args[0]}", args[1..])
|
597
597
|
raise(Chef::Exceptions::PlistUtilCommandFailed, "plutil error: #{result.inspect}") unless result.exitstatus == 0
|
598
598
|
|
599
599
|
if result.stdout.encoding == Encoding::ASCII_8BIT
|
@@ -22,7 +22,7 @@ require_relative "../../mixin/shell_out"
|
|
22
22
|
require_relative "../../mixin/which"
|
23
23
|
require_relative "../user"
|
24
24
|
require_relative "../../resource/user/mac_user"
|
25
|
-
|
25
|
+
autoload :Plist, "plist"
|
26
26
|
|
27
27
|
class Chef
|
28
28
|
class Provider
|
@@ -583,16 +583,16 @@ class Chef
|
|
583
583
|
timeout = Time.now + 5
|
584
584
|
|
585
585
|
loop do
|
586
|
-
|
587
|
-
|
588
|
-
|
589
|
-
|
590
|
-
|
591
|
-
|
592
|
-
|
593
|
-
|
594
|
-
end
|
586
|
+
|
587
|
+
run_dscl("read", "/Users/#{new_resource.username}", "ShadowHashData")
|
588
|
+
break
|
589
|
+
rescue Chef::Exceptions::DsclCommandFailed => e
|
590
|
+
if Time.now < timeout
|
591
|
+
sleep 0.1
|
592
|
+
else
|
593
|
+
raise Chef::Exceptions::User, e.message
|
595
594
|
end
|
595
|
+
|
596
596
|
end
|
597
597
|
end
|
598
598
|
|
@@ -608,7 +608,7 @@ class Chef
|
|
608
608
|
end
|
609
609
|
|
610
610
|
def run_dscl(*args)
|
611
|
-
result = shell_out("dscl", "-plist", ".", "-#{args[0]}", args[1
|
611
|
+
result = shell_out("dscl", "-plist", ".", "-#{args[0]}", args[1..])
|
612
612
|
return "" if ( args.first =~ /^delete/ ) && ( result.exitstatus != 0 )
|
613
613
|
raise(Chef::Exceptions::DsclCommandFailed, "dscl error: #{result.inspect}") unless result.exitstatus == 0
|
614
614
|
raise(Chef::Exceptions::DsclCommandFailed, "dscl error: #{result.inspect}") if /No such key: /.match?(result.stdout)
|
@@ -617,7 +617,7 @@ class Chef
|
|
617
617
|
end
|
618
618
|
|
619
619
|
def run_plutil(*args)
|
620
|
-
result = shell_out("plutil", "-#{args[0]}", args[1
|
620
|
+
result = shell_out("plutil", "-#{args[0]}", args[1..])
|
621
621
|
raise(Chef::Exceptions::PlistUtilCommandFailed, "plutil error: #{result.inspect}") unless result.exitstatus == 0
|
622
622
|
|
623
623
|
result.stdout
|
@@ -16,9 +16,7 @@
|
|
16
16
|
# limitations under the License.
|
17
17
|
#
|
18
18
|
|
19
|
-
|
20
|
-
require "rexml/document" unless defined?(REXML::Document)
|
21
|
-
require "iso8601" if ChefUtils.windows?
|
19
|
+
autoload :ISO8601, "iso8601" if ChefUtils.windows?
|
22
20
|
require_relative "../provider"
|
23
21
|
require_relative "../util/path_helper"
|
24
22
|
require "win32/taskscheduler" if ChefUtils.windows?
|
@@ -26,8 +24,6 @@ require "win32/taskscheduler" if ChefUtils.windows?
|
|
26
24
|
class Chef
|
27
25
|
class Provider
|
28
26
|
class WindowsTask < Chef::Provider
|
29
|
-
include Chef::Mixin::ShellOut
|
30
|
-
|
31
27
|
if ChefUtils.windows?
|
32
28
|
include Win32
|
33
29
|
|
@@ -19,9 +19,8 @@
|
|
19
19
|
require_relative "../resource"
|
20
20
|
require_relative "../dsl/declare_resource"
|
21
21
|
require_relative "noop"
|
22
|
-
require_relative "../mixin/shell_out"
|
23
22
|
require "shellwords" unless defined?(Shellwords)
|
24
|
-
|
23
|
+
require "chef-utils/dist" unless defined?(ChefUtils::Dist)
|
25
24
|
|
26
25
|
class Chef
|
27
26
|
class Provider
|
@@ -111,7 +110,7 @@ class Chef
|
|
111
110
|
logger.trace("Will use :cookbook_file resource to cache the gpg key locally")
|
112
111
|
:cookbook_file
|
113
112
|
else
|
114
|
-
raise Chef::Exceptions::FileNotFound, "Cannot determine location of gpgkey. Must start with 'http' or be a file managed by #{
|
113
|
+
raise Chef::Exceptions::FileNotFound, "Cannot determine location of gpgkey. Must start with 'http' or be a file managed by #{ChefUtils::Dist::Infra::PRODUCT}."
|
115
114
|
end
|
116
115
|
end
|
117
116
|
|
@@ -113,7 +113,7 @@ class Chef
|
|
113
113
|
|
114
114
|
# if resource.provider is set, just return one of those objects
|
115
115
|
def maybe_explicit_provider(resource)
|
116
|
-
resource.provider
|
116
|
+
resource.provider
|
117
117
|
end
|
118
118
|
|
119
119
|
# try dynamically finding a provider based on querying the providers to see what they support
|
data/lib/chef/providers.rb
CHANGED
@@ -36,7 +36,6 @@ require_relative "provider/mount"
|
|
36
36
|
require_relative "provider/noop"
|
37
37
|
require_relative "provider/package"
|
38
38
|
require_relative "provider/powershell_script"
|
39
|
-
require_relative "provider/osx_profile"
|
40
39
|
require_relative "provider/remote_directory"
|
41
40
|
require_relative "provider/remote_file"
|
42
41
|
require_relative "provider/route"
|
@@ -120,6 +119,7 @@ require_relative "provider/mount/mount"
|
|
120
119
|
require_relative "provider/mount/aix"
|
121
120
|
require_relative "provider/mount/solaris"
|
122
121
|
require_relative "provider/mount/windows"
|
122
|
+
require_relative "provider/mount/linux"
|
123
123
|
|
124
124
|
require_relative "provider/remote_file/ftp"
|
125
125
|
require_relative "provider/remote_file/sftp"
|
data/lib/chef/recipe.rb
CHANGED
@@ -17,7 +17,7 @@
|
|
17
17
|
# limitations under the License.
|
18
18
|
#
|
19
19
|
|
20
|
-
|
20
|
+
autoload :YAML, "yaml"
|
21
21
|
require_relative "dsl/recipe"
|
22
22
|
require_relative "mixin/from_file"
|
23
23
|
require_relative "mixin/deprecation"
|
@@ -122,7 +122,7 @@ class Chef
|
|
122
122
|
end
|
123
123
|
|
124
124
|
def to_s
|
125
|
-
"cookbook: #{cookbook_name
|
125
|
+
"cookbook: #{cookbook_name || "(none)"}, recipe: #{recipe_name || "(none)"} "
|
126
126
|
end
|
127
127
|
|
128
128
|
def inspect
|