chef 16.1.16-universal-mingw32 → 16.3.45-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 +6 -7
- data/README.md +3 -3
- data/Rakefile +3 -16
- data/chef-universal-mingw32.gemspec +2 -2
- data/chef.gemspec +7 -6
- data/lib/chef/application.rb +12 -0
- data/lib/chef/application/apply.rb +2 -1
- data/lib/chef/application/base.rb +1 -1
- data/lib/chef/application/client.rb +1 -1
- data/lib/chef/application/windows_service_manager.rb +1 -1
- data/lib/chef/{whitelist.rb → attribute_allowlist.rb} +11 -11
- data/lib/chef/{blacklist.rb → attribute_blocklist.rb} +9 -9
- data/lib/chef/chef_fs/data_handler/data_bag_item_data_handler.rb +1 -1
- data/lib/chef/chef_fs/data_handler/organization_data_handler.rb +1 -2
- data/lib/chef/chef_fs/file_system/chef_server/cookbook_file.rb +2 -2
- data/lib/chef/chef_fs/file_system/chef_server/cookbooks_dir.rb +1 -5
- data/lib/chef/chef_fs/file_system/repository/base_file.rb +1 -0
- data/lib/chef/chef_fs/parallelizer/parallel_enumerable.rb +1 -1
- data/lib/chef/chef_fs/path_utils.rb +1 -1
- data/lib/chef/client.rb +3 -3
- data/lib/chef/cookbook/chefignore.rb +1 -1
- data/lib/chef/cookbook/metadata.rb +1 -1
- data/lib/chef/cookbook/remote_file_vendor.rb +1 -3
- data/lib/chef/cookbook/syntax_check.rb +1 -2
- data/lib/chef/cookbook_loader.rb +15 -29
- data/lib/chef/cookbook_version.rb +2 -2
- data/lib/chef/data_bag.rb +5 -6
- data/lib/chef/deprecated.rb +12 -0
- data/lib/chef/digester.rb +3 -2
- data/lib/chef/dsl/platform_introspection.rb +2 -0
- data/lib/chef/environment.rb +1 -2
- data/lib/chef/exceptions.rb +3 -0
- data/lib/chef/file_access_control.rb +1 -1
- data/lib/chef/file_access_control/windows.rb +2 -2
- data/lib/chef/file_content_management/deploy/mv_unix.rb +1 -1
- data/lib/chef/formatters/error_inspectors/compile_error_inspector.rb +1 -1
- data/lib/chef/formatters/error_inspectors/resource_failure_inspector.rb +3 -3
- data/lib/chef/handler.rb +2 -0
- data/lib/chef/http.rb +27 -13
- data/lib/chef/http/authenticator.rb +3 -1
- data/lib/chef/http/http_request.rb +1 -1
- data/lib/chef/http/json_output.rb +1 -1
- data/lib/chef/http/ssl_policies.rb +18 -0
- data/lib/chef/knife.rb +5 -5
- data/lib/chef/knife/bootstrap.rb +19 -19
- data/lib/chef/knife/bootstrap/templates/chef-full.erb +9 -9
- data/lib/chef/knife/bootstrap/train_connector.rb +1 -0
- data/lib/chef/knife/client_bulk_delete.rb +1 -1
- data/lib/chef/knife/config_get.rb +2 -1
- data/lib/chef/knife/config_list_profiles.rb +4 -1
- data/lib/chef/knife/config_use_profile.rb +15 -5
- data/lib/chef/knife/configure.rb +1 -1
- data/lib/chef/knife/cookbook_delete.rb +1 -1
- data/lib/chef/knife/cookbook_upload.rb +6 -14
- data/lib/chef/knife/core/bootstrap_context.rb +1 -1
- data/lib/chef/knife/core/cookbook_scm_repo.rb +1 -1
- data/lib/chef/knife/core/gem_glob_loader.rb +1 -1
- data/lib/chef/knife/core/hashed_command_loader.rb +1 -0
- data/lib/chef/knife/core/subcommand_loader.rb +20 -1
- data/lib/chef/knife/core/ui.rb +8 -2
- data/lib/chef/knife/core/windows_bootstrap_context.rb +2 -3
- data/lib/chef/knife/data_bag_create.rb +1 -1
- data/lib/chef/knife/node_bulk_delete.rb +1 -1
- data/lib/chef/knife/node_run_list_remove.rb +1 -1
- data/lib/chef/knife/rehash.rb +3 -21
- data/lib/chef/knife/role_bulk_delete.rb +1 -1
- data/lib/chef/knife/ssh.rb +6 -2
- data/lib/chef/knife/supermarket_share.rb +1 -1
- data/lib/chef/knife/supermarket_unshare.rb +1 -1
- data/lib/chef/log.rb +8 -3
- data/{spec/functional/resource/base.rb → lib/chef/mixin/chef_utils_wiring.rb} +24 -12
- data/{spec/unit/log_spec.rb → lib/chef/mixin/default_paths.rb} +13 -5
- data/lib/chef/mixin/openssl_helper.rb +27 -5
- data/lib/chef/mixin/path_sanity.rb +5 -4
- data/lib/chef/mixin/securable.rb +2 -2
- data/lib/chef/mixin/shell_out.rb +4 -188
- data/lib/chef/mixin/template.rb +1 -0
- data/lib/chef/mixin/which.rb +6 -3
- data/lib/chef/mixins.rb +1 -0
- data/lib/chef/node.rb +36 -12
- data/lib/chef/node_map.rb +21 -18
- data/lib/chef/platform/service_helpers.rb +31 -28
- data/lib/chef/powershell.rb +1 -1
- data/lib/chef/provider/batch.rb +3 -10
- data/lib/chef/provider/cron.rb +2 -14
- data/lib/chef/provider/execute.rb +2 -1
- data/lib/chef/provider/git.rb +12 -4
- data/lib/chef/provider/group/dscl.rb +2 -2
- data/lib/chef/provider/group/windows.rb +1 -1
- data/lib/chef/provider/ifconfig.rb +7 -7
- data/lib/chef/provider/mount/aix.rb +1 -1
- data/lib/chef/provider/mount/solaris.rb +0 -1
- data/lib/chef/provider/mount/windows.rb +2 -2
- data/lib/chef/provider/noop.rb +1 -1
- data/lib/chef/provider/package/openbsd.rb +1 -1
- data/lib/chef/provider/package/portage.rb +2 -2
- data/lib/chef/provider/package/powershell.rb +6 -2
- data/lib/chef/provider/package/rubygems.rb +2 -2
- data/lib/chef/provider/package/snap.rb +97 -29
- data/lib/chef/provider/package/windows.rb +9 -4
- data/lib/chef/provider/package/windows/msi.rb +3 -3
- data/lib/chef/provider/package/windows/registry_uninstall_entry.rb +1 -1
- data/lib/chef/provider/package/zypper.rb +0 -1
- data/lib/chef/provider/powershell_script.rb +10 -14
- data/lib/chef/provider/remote_file/http.rb +4 -1
- data/lib/chef/provider/script.rb +4 -75
- data/lib/chef/provider/service.rb +2 -2
- data/lib/chef/provider/service/arch.rb +1 -1
- data/lib/chef/provider/service/debian.rb +2 -2
- data/lib/chef/provider/service/openbsd.rb +4 -4
- data/lib/chef/provider/service/redhat.rb +1 -1
- data/lib/chef/provider/service/windows.rb +1 -1
- data/lib/chef/provider/subversion.rb +2 -2
- data/lib/chef/provider/user/dscl.rb +4 -4
- data/lib/chef/provider/user/linux.rb +3 -3
- data/lib/chef/provider/user/mac.rb +5 -5
- data/lib/chef/provider/windows_script.rb +87 -25
- data/lib/chef/provider/yum_repository.rb +1 -1
- data/lib/chef/provider/zypper_repository.rb +31 -11
- data/lib/chef/resource.rb +24 -11
- data/lib/chef/resource/alternatives.rb +1 -1
- data/lib/chef/resource/apt_package.rb +1 -1
- data/lib/chef/resource/archive_file.rb +28 -8
- data/lib/chef/resource/bash.rb +0 -1
- data/lib/chef/resource/batch.rb +4 -2
- data/lib/chef/resource/build_essential.rb +2 -2
- data/lib/chef/resource/chef_client_scheduled_task.rb +14 -2
- data/lib/chef/resource/chef_gem.rb +57 -21
- data/lib/chef/resource/chocolatey_feature.rb +1 -2
- data/lib/chef/resource/cron/_cron_shared.rb +98 -0
- data/lib/chef/resource/cron/cron.rb +46 -0
- data/lib/chef/resource/{cron_d.rb → cron/cron_d.rb} +7 -87
- data/lib/chef/resource/cron_access.rb +13 -5
- data/lib/chef/resource/csh.rb +0 -1
- data/lib/chef/resource/dmg_package.rb +2 -2
- data/lib/chef/resource/execute.rb +479 -9
- data/lib/chef/resource/file.rb +1 -1
- data/lib/chef/resource/freebsd_package.rb +1 -1
- data/lib/chef/resource/gem_package.rb +35 -2
- data/lib/chef/resource/helpers/cron_validations.rb +6 -3
- data/lib/chef/resource/homebrew_package.rb +30 -1
- data/lib/chef/resource/homebrew_update.rb +107 -0
- data/lib/chef/resource/hostname.rb +23 -36
- data/lib/chef/resource/kernel_module.rb +14 -1
- data/lib/chef/resource/launchd.rb +1 -1
- data/lib/chef/resource/lwrp_base.rb +1 -0
- data/lib/chef/resource/macos_userdefaults.rb +176 -61
- data/lib/chef/resource/mount.rb +1 -1
- data/lib/chef/resource/openssl_x509_certificate.rb +11 -14
- data/lib/chef/resource/openssl_x509_crl.rb +1 -2
- data/lib/chef/resource/perl.rb +0 -1
- data/lib/chef/resource/plist.rb +23 -4
- data/lib/chef/resource/powershell_script.rb +4 -2
- data/lib/chef/resource/python.rb +0 -1
- data/lib/chef/resource/remote_file.rb +26 -10
- data/lib/chef/resource/ruby.rb +0 -1
- data/lib/chef/resource/service.rb +2 -2
- data/lib/chef/resource/ssh_known_hosts_entry.rb +16 -1
- data/lib/chef/resource/sudo.rb +30 -3
- data/lib/chef/resource/swap_file.rb +17 -0
- data/lib/chef/resource/template.rb +1 -1
- data/lib/chef/resource/timezone.rb +15 -0
- data/lib/chef/resource/user_ulimit.rb +1 -1
- data/lib/chef/resource/windows_ad_join.rb +30 -1
- data/lib/chef/resource/windows_audit_policy.rb +227 -0
- data/lib/chef/resource/windows_auto_run.rb +11 -0
- data/lib/chef/resource/windows_certificate.rb +26 -0
- data/lib/chef/resource/windows_dns_record.rb +17 -0
- data/lib/chef/resource/windows_firewall_profile.rb +197 -0
- data/lib/chef/resource/windows_font.rb +3 -3
- data/lib/chef/resource/windows_package.rb +1 -1
- data/lib/chef/resource/windows_pagefile.rb +1 -1
- data/lib/chef/resource/windows_script.rb +2 -16
- data/lib/chef/resource/windows_security_policy.rb +67 -36
- data/lib/chef/resource/windows_shortcut.rb +1 -2
- data/lib/chef/resource/windows_task.rb +4 -4
- data/lib/chef/resource/windows_user_privilege.rb +30 -7
- data/lib/chef/resource/yum_repository.rb +9 -9
- data/lib/chef/resource_inspector.rb +7 -1
- data/lib/chef/resources.rb +5 -2
- data/lib/chef/role.rb +1 -2
- data/lib/chef/search/query.rb +1 -1
- data/lib/chef/server_api_versions.rb +4 -0
- data/lib/chef/shell/shell_session.rb +2 -0
- data/lib/chef/util/diff.rb +2 -3
- data/lib/chef/util/windows/net_user.rb +1 -1
- data/lib/chef/util/windows/volume.rb +1 -1
- data/lib/chef/version.rb +2 -2
- data/lib/chef/win32/file.rb +1 -1
- data/lib/chef/win32/registry.rb +3 -4
- data/lib/chef/win32/security.rb +1 -1
- data/spec/data/lwrp/providers/buck_passer.rb +1 -1
- data/spec/data/lwrp/providers/buck_passer_2.rb +1 -1
- data/spec/data/lwrp/providers/embedded_resource_accesses_providers_scope.rb +1 -1
- data/spec/functional/knife/configure_spec.rb +1 -1
- data/spec/functional/knife/ssh_spec.rb +5 -16
- data/spec/functional/resource/aix_service_spec.rb +9 -2
- data/spec/functional/resource/aixinit_service_spec.rb +1 -2
- data/spec/functional/resource/apt_package_spec.rb +0 -1
- data/spec/functional/resource/bash_spec.rb +3 -2
- data/spec/functional/resource/bff_spec.rb +1 -1
- data/spec/functional/resource/chocolatey_package_spec.rb +4 -0
- data/spec/functional/resource/cron_spec.rb +20 -2
- data/spec/functional/resource/dnf_package_spec.rb +4 -1
- data/spec/functional/resource/execute_spec.rb +1 -1
- data/spec/functional/resource/git_spec.rb +23 -1
- data/spec/functional/resource/group_spec.rb +15 -3
- data/spec/functional/resource/ifconfig_spec.rb +9 -1
- data/spec/functional/resource/insserv_spec.rb +3 -3
- data/spec/functional/resource/link_spec.rb +2 -5
- data/spec/functional/resource/mount_spec.rb +9 -1
- data/spec/functional/resource/msu_package_spec.rb +9 -3
- data/spec/functional/resource/powershell_script_spec.rb +4 -4
- data/spec/functional/resource/remote_file_spec.rb +9 -15
- data/spec/functional/resource/rpm_spec.rb +1 -1
- data/spec/functional/resource/timezone_spec.rb +2 -0
- data/spec/functional/resource/windows_package_spec.rb +0 -1
- data/spec/functional/resource/windows_path_spec.rb +4 -0
- data/spec/functional/resource/windows_security_policy_spec.rb +0 -1
- data/spec/functional/resource/windows_service_spec.rb +4 -0
- data/spec/functional/resource/windows_task_spec.rb +12 -11
- data/spec/functional/resource/windows_user_privilege_spec.rb +1 -2
- data/spec/functional/resource/yum_package_spec.rb +4 -1
- data/spec/functional/resource/zypper_package_spec.rb +4 -1
- data/spec/functional/run_lock_spec.rb +2 -1
- data/spec/functional/shell_spec.rb +5 -6
- data/spec/functional/util/powershell/cmdlet_spec.rb +1 -1
- data/spec/functional/version_spec.rb +1 -1
- data/spec/functional/win32/crypto_spec.rb +1 -1
- data/spec/integration/knife/config_list_profiles_spec.rb +30 -2
- data/spec/integration/knife/config_use_profile_spec.rb +55 -2
- data/spec/integration/knife/cookbook_upload_spec.rb +28 -1
- data/spec/integration/knife/data_bag_from_file_spec.rb +1 -1
- data/spec/integration/knife/environment_from_file_spec.rb +1 -1
- data/spec/integration/knife/node_from_file_spec.rb +1 -1
- data/spec/integration/knife/role_from_file_spec.rb +1 -1
- data/spec/integration/recipes/accumulator_spec.rb +1 -1
- data/spec/integration/recipes/lwrp_inline_resources_spec.rb +1 -1
- data/spec/integration/recipes/lwrp_spec.rb +1 -1
- data/spec/integration/recipes/notifies_spec.rb +1 -1
- data/spec/integration/recipes/notifying_block_spec.rb +1 -1
- data/spec/integration/recipes/recipe_dsl_spec.rb +5 -1
- data/spec/integration/recipes/resource_converge_if_changed_spec.rb +2 -0
- data/spec/integration/recipes/resource_load_spec.rb +4 -2
- data/spec/integration/recipes/unified_mode_spec.rb +1 -1
- data/spec/integration/recipes/use_partial_spec.rb +1 -1
- data/spec/scripts/ssl-serve.rb +1 -1
- data/spec/spec_helper.rb +10 -4
- data/spec/support/chef_helpers.rb +1 -20
- data/spec/support/platform_helpers.rb +1 -3
- data/spec/support/platforms/win32/spec_service.rb +1 -1
- data/spec/support/shared/functional/execute_resource.rb +1 -1
- data/spec/support/shared/functional/file_resource.rb +0 -1
- data/spec/support/shared/functional/securable_resource.rb +1 -2
- data/spec/support/shared/functional/securable_resource_with_reporting.rb +0 -1
- data/spec/support/shared/functional/windows_script.rb +2 -2
- data/spec/support/shared/integration/knife_support.rb +2 -9
- data/spec/support/shared/unit/application_dot_d.rb +0 -1
- data/spec/support/shared/unit/execute_resource.rb +1 -1
- data/spec/support/shared/unit/provider/file.rb +12 -8
- data/spec/unit/application/solo_spec.rb +4 -2
- data/spec/unit/application_spec.rb +11 -2
- data/spec/unit/chef_fs/config_spec.rb +2 -2
- data/spec/unit/chef_fs/diff_spec.rb +8 -8
- data/spec/unit/chef_fs/file_system/operation_failed_error_spec.rb +2 -4
- data/spec/unit/chef_fs/{parallelizer.rb → parallelizer_spec.rb} +1 -1
- data/spec/unit/client_spec.rb +4 -1
- data/spec/unit/cookbook/gem_installer_spec.rb +2 -1
- data/spec/unit/cookbook/synchronizer_spec.rb +26 -24
- data/spec/unit/data_bag_spec.rb +6 -3
- data/spec/unit/data_collector_spec.rb +1 -1
- data/spec/unit/decorator_spec.rb +23 -23
- data/spec/unit/dsl/platform_introspection_spec.rb +1 -0
- data/spec/unit/environment_spec.rb +5 -1
- data/spec/unit/event_dispatch/dispatcher_spec.rb +3 -0
- data/spec/unit/guard_interpreter_spec.rb +1 -1
- data/spec/unit/http/api_versions_spec.rb +20 -2
- data/spec/unit/http/ssl_policies_spec.rb +20 -0
- data/spec/unit/json_compat_spec.rb +1 -1
- data/spec/unit/knife/bootstrap_spec.rb +5 -8
- data/spec/unit/knife/cookbook_download_spec.rb +2 -2
- data/spec/unit/knife/cookbook_show_spec.rb +6 -7
- data/spec/unit/knife/cookbook_upload_spec.rb +7 -10
- data/spec/unit/knife/data_bag_edit_spec.rb +1 -1
- data/spec/unit/log/syslog_spec.rb +6 -10
- data/spec/unit/log/winevt_spec.rb +21 -13
- data/spec/unit/lwrp_spec.rb +9 -6
- data/spec/unit/mixin/{path_sanity_spec.rb → default_paths_spec.rb} +14 -14
- data/spec/unit/mixin/powershell_exec_spec.rb +1 -1
- data/spec/unit/mixin/powershell_out_spec.rb +2 -4
- data/spec/unit/mixin/powershell_type_coercions_spec.rb +1 -1
- data/spec/unit/mixin/securable_spec.rb +0 -1
- data/spec/unit/mixin/shell_out_spec.rb +25 -26
- data/spec/unit/mixin/subclass_directive_spec.rb +2 -2
- data/spec/unit/mixin/unformatter_spec.rb +2 -2
- data/spec/unit/mixin/uris_spec.rb +1 -1
- data/spec/unit/mixin/user_context_spec.rb +1 -9
- data/spec/unit/mixin/which.rb +8 -0
- data/spec/unit/node_spec.rb +98 -11
- data/spec/unit/property_spec.rb +6 -6
- data/spec/unit/provider/batch_spec.rb +130 -0
- data/spec/unit/provider/cron/unix_spec.rb +1 -1
- data/spec/unit/provider/cron_spec.rb +9 -49
- data/spec/unit/provider/dsc_resource_spec.rb +22 -38
- data/spec/unit/provider/dsc_script_spec.rb +10 -10
- data/spec/unit/provider/execute_spec.rb +1 -8
- data/spec/unit/provider/git_spec.rb +3 -3
- data/spec/unit/provider/ifconfig_spec.rb +0 -1
- data/spec/unit/provider/mdadm_spec.rb +1 -3
- data/spec/unit/provider/package/dnf/python_helper_spec.rb +1 -1
- data/spec/unit/provider/package/openbsd_spec.rb +1 -1
- data/spec/unit/provider/package/pacman_spec.rb +17 -20
- data/spec/unit/provider/package/powershell_spec.rb +95 -86
- data/spec/unit/provider/package/rubygems_spec.rb +5 -10
- data/spec/unit/provider/package/smartos_spec.rb +1 -1
- data/spec/unit/provider/package/snap_spec.rb +1 -1
- data/spec/unit/provider/package/windows/registry_uninstall_entry_spec.rb +3 -3
- data/spec/unit/provider/package/windows_spec.rb +30 -53
- data/spec/unit/provider/powershell_script_spec.rb +3 -45
- data/spec/unit/provider/script_spec.rb +20 -110
- data/spec/unit/provider/service/redhat_spec.rb +1 -1
- data/spec/unit/provider/service/windows_spec.rb +2 -6
- data/spec/unit/provider/systemd_unit_spec.rb +28 -24
- data/spec/unit/provider/user/dscl_spec.rb +2 -2
- data/spec/unit/provider/windows_env_spec.rb +5 -4
- data/spec/unit/provider/zypper_repository_spec.rb +60 -10
- data/spec/unit/provider_spec.rb +1 -0
- data/spec/unit/resource/archive_file_spec.rb +11 -2
- data/spec/unit/resource/chef_client_cron_spec.rb +23 -7
- data/spec/unit/resource/chef_client_scheduled_task_spec.rb +17 -7
- data/spec/unit/resource/chef_client_systemd_timer_spec.rb +7 -4
- data/spec/unit/resource/cron_spec.rb +2 -2
- data/spec/unit/resource/execute_spec.rb +10 -0
- data/spec/unit/resource/file/verification_spec.rb +2 -1
- data/spec/unit/resource/helpers/cron_validations_spec.rb +5 -1
- data/spec/unit/resource/homebrew_update_spec.rb +30 -0
- data/spec/unit/resource/macos_user_defaults_spec.rb +103 -2
- data/spec/unit/resource/powershell_script_spec.rb +10 -15
- data/spec/unit/resource/timezone_spec.rb +1 -1
- data/spec/unit/resource/windows_audit_policy_spec.rb +64 -0
- data/spec/unit/resource/windows_dns_record_spec.rb +3 -3
- data/spec/unit/resource/windows_dns_zone_spec.rb +2 -2
- data/spec/unit/resource/windows_firewall_profile_spec.rb +77 -0
- data/spec/unit/resource/windows_package_spec.rb +1 -0
- data/spec/unit/resource/windows_task_spec.rb +1 -1
- data/spec/unit/resource/windows_uac_spec.rb +2 -2
- data/spec/unit/resource/yum_repository_spec.rb +21 -21
- data/spec/unit/resource_reporter_spec.rb +1 -1
- data/spec/unit/resource_spec.rb +84 -1
- data/spec/unit/role_spec.rb +23 -21
- data/spec/unit/run_context/cookbook_compiler_spec.rb +1 -1
- data/spec/unit/run_lock_spec.rb +1 -1
- data/spec/unit/scan_access_control_spec.rb +1 -1
- data/spec/unit/server_api_spec.rb +43 -16
- data/spec/unit/util/backup_spec.rb +1 -1
- data/spec/unit/util/diff_spec.rb +1 -15
- data/spec/unit/util/dsc/configuration_generator_spec.rb +1 -1
- data/spec/unit/util/powershell/ps_credential_spec.rb +2 -2
- data/spec/unit/util/selinux_spec.rb +2 -1
- data/spec/unit/util/threaded_job_queue_spec.rb +9 -0
- data/spec/unit/win32/security_spec.rb +4 -3
- metadata +68 -40
- data/lib/chef/resource/cron.rb +0 -157
@@ -1,4 +1,3 @@
|
|
1
|
-
# encoding: UTF-8
|
2
1
|
#
|
3
2
|
# Author:: Kaustubh Deorukhkar (<kaustubh@clogeny.com>)
|
4
3
|
# Copyright:: Copyright (c) Chef Software Inc.
|
@@ -18,7 +17,6 @@
|
|
18
17
|
#
|
19
18
|
|
20
19
|
require "spec_helper"
|
21
|
-
require "functional/resource/base"
|
22
20
|
require "chef/mixin/shell_out"
|
23
21
|
|
24
22
|
shared_examples "src service" do
|
@@ -80,6 +78,15 @@ describe Chef::Resource::Service, :requires_root, :aix_only do
|
|
80
78
|
shell_out("id -u #{ENV["USER"]}").stdout.chomp
|
81
79
|
end
|
82
80
|
|
81
|
+
let(:run_context) do
|
82
|
+
node = Chef::Node.new
|
83
|
+
node.default[:platform] = ohai[:platform]
|
84
|
+
node.default[:platform_version] = ohai[:platform_version]
|
85
|
+
node.default[:os] = ohai[:os]
|
86
|
+
events = Chef::EventDispatch::Dispatcher.new
|
87
|
+
Chef::RunContext.new(node, {}, events)
|
88
|
+
end
|
89
|
+
|
83
90
|
describe "When service is a subsystem" do
|
84
91
|
before(:all) do
|
85
92
|
script_dir = File.join(File.dirname(__FILE__), "/../assets/")
|
@@ -1,4 +1,3 @@
|
|
1
|
-
# encoding: UTF-8
|
2
1
|
#
|
3
2
|
# Author:: Kaustubh Deorukhkar (<kaustubh@clogeny.com>)
|
4
3
|
# Copyright:: Copyright (c) Chef Software Inc.
|
@@ -18,7 +17,6 @@
|
|
18
17
|
#
|
19
18
|
|
20
19
|
require "spec_helper"
|
21
|
-
require "functional/resource/base"
|
22
20
|
require "chef/mixin/shell_out"
|
23
21
|
require "fileutils"
|
24
22
|
|
@@ -57,6 +55,7 @@ describe Chef::Resource::Service, :requires_root, :aix_only do
|
|
57
55
|
|
58
56
|
# Actual tests
|
59
57
|
let(:new_resource) do
|
58
|
+
run_context = Chef::RunContext.new(Chef::Node.new, {}, Chef::EventDispatch::Dispatcher.new)
|
60
59
|
new_resource = Chef::Resource::Service.new("chefinittest", run_context)
|
61
60
|
new_resource.provider Chef::Provider::Service::AixInit
|
62
61
|
new_resource.supports({ status: true, restart: true, reload: true })
|
@@ -17,18 +17,19 @@
|
|
17
17
|
#
|
18
18
|
|
19
19
|
require "spec_helper"
|
20
|
-
require "functional/resource/base"
|
21
20
|
|
22
21
|
describe Chef::Resource::Bash, :unix_only do
|
23
22
|
let(:code) { "echo hello" }
|
24
23
|
let(:resource) do
|
24
|
+
run_context = Chef::RunContext.new(Chef::Node.new, {}, Chef::EventDispatch::Dispatcher.new)
|
25
|
+
|
25
26
|
resource = Chef::Resource::Bash.new("foo_resource", run_context)
|
26
27
|
resource.code(code) unless code.nil?
|
27
28
|
resource
|
28
29
|
end
|
29
30
|
|
30
31
|
describe "when setting the command property" do
|
31
|
-
let
|
32
|
+
let(:command) { "wizard racket" }
|
32
33
|
|
33
34
|
it "should raise an exception when trying to set the command" do
|
34
35
|
expect { resource.command command }.to raise_error(Chef::Exceptions::Script)
|
@@ -16,7 +16,6 @@
|
|
16
16
|
# limitations under the License.
|
17
17
|
#
|
18
18
|
|
19
|
-
require "functional/resource/base"
|
20
19
|
require "chef/mixin/shell_out"
|
21
20
|
|
22
21
|
# Run the test only for AIX platform.
|
@@ -24,6 +23,7 @@ describe Chef::Resource::BffPackage, :requires_root, external: ohai[:platform] !
|
|
24
23
|
include Chef::Mixin::ShellOut
|
25
24
|
|
26
25
|
let(:new_resource) do
|
26
|
+
run_context = Chef::RunContext.new(Chef::Node.new, {}, Chef::EventDispatch::Dispatcher.new)
|
27
27
|
new_resource = Chef::Resource::BffPackage.new(@pkg_name, run_context)
|
28
28
|
new_resource.source @pkg_path
|
29
29
|
new_resource
|
@@ -25,6 +25,10 @@ describe Chef::Resource::ChocolateyPackage, :windows_only, :choco_installed do
|
|
25
25
|
let(:package_list) { proc { powershell_out!("choco list -lo -r #{Array(package_name).join(" ")}").stdout.chomp } }
|
26
26
|
let(:package_source) { File.join(CHEF_SPEC_ASSETS, "chocolatey_feed") }
|
27
27
|
|
28
|
+
let(:run_context) do
|
29
|
+
Chef::RunContext.new(Chef::Node.new, {}, Chef::EventDispatch::Dispatcher.new)
|
30
|
+
end
|
31
|
+
|
28
32
|
subject do
|
29
33
|
new_resource = Chef::Resource::ChocolateyPackage.new("test choco package", run_context)
|
30
34
|
new_resource.package_name package_name
|
@@ -1,4 +1,3 @@
|
|
1
|
-
# encoding: UTF-8
|
2
1
|
#
|
3
2
|
# Author:: Kaustubh Deorukhkar (<kaustubh@clogeny.com>)
|
4
3
|
# Copyright:: Copyright (c) Chef Software Inc.
|
@@ -18,7 +17,6 @@
|
|
18
17
|
#
|
19
18
|
|
20
19
|
require "spec_helper"
|
21
|
-
require "functional/resource/base"
|
22
20
|
require "chef/mixin/shell_out"
|
23
21
|
|
24
22
|
describe Chef::Resource::Cron, :requires_root, :unix_only do
|
@@ -53,6 +51,16 @@ describe Chef::Resource::Cron, :requires_root, :unix_only do
|
|
53
51
|
end
|
54
52
|
|
55
53
|
# Actual tests
|
54
|
+
|
55
|
+
let(:run_context) do
|
56
|
+
node = Chef::Node.new
|
57
|
+
node.default[:platform] = ohai[:platform]
|
58
|
+
node.default[:platform_version] = ohai[:platform_version]
|
59
|
+
node.default[:os] = ohai[:os]
|
60
|
+
events = Chef::EventDispatch::Dispatcher.new
|
61
|
+
Chef::RunContext.new(node, {}, events)
|
62
|
+
end
|
63
|
+
|
56
64
|
let(:new_resource) do
|
57
65
|
new_resource = Chef::Resource::Cron.new("Chef functional test cron", run_context)
|
58
66
|
new_resource.user "root"
|
@@ -80,6 +88,16 @@ describe Chef::Resource::Cron, :requires_root, :unix_only do
|
|
80
88
|
5.times { new_resource.run_action(:create) }
|
81
89
|
cron_should_exists(new_resource.name, new_resource.command)
|
82
90
|
end
|
91
|
+
|
92
|
+
# Test cron for day of week
|
93
|
+
weekdays = { Mon: 1, tuesday: 2, '3': 3, 'thursday': 4, 'Fri': 5, 6 => 6 }
|
94
|
+
weekdays.each do |key, value|
|
95
|
+
it "should create crontab entry and set #{value} for #{key} as weekday" do
|
96
|
+
new_resource.weekday key
|
97
|
+
expect { new_resource.run_action(:create) }.not_to raise_error
|
98
|
+
cron_should_exists(new_resource.name, new_resource.command)
|
99
|
+
end
|
100
|
+
end
|
83
101
|
end
|
84
102
|
|
85
103
|
describe "delete action" do
|
@@ -16,7 +16,6 @@
|
|
16
16
|
#
|
17
17
|
|
18
18
|
require "spec_helper"
|
19
|
-
require "functional/resource/base"
|
20
19
|
require "chef/mixin/shell_out"
|
21
20
|
|
22
21
|
# run this test only for following platforms.
|
@@ -66,6 +65,10 @@ describe Chef::Resource::DnfPackage, :requires_root, external: exclude_test do
|
|
66
65
|
FileUtils.rm_f "/etc/yum.repos.d/chef-dnf-localtesting.repo"
|
67
66
|
end
|
68
67
|
|
68
|
+
let(:run_context) do
|
69
|
+
Chef::RunContext.new(Chef::Node.new, {}, Chef::EventDispatch::Dispatcher.new)
|
70
|
+
end
|
71
|
+
|
69
72
|
let(:package_name) { "chef_rpm" }
|
70
73
|
let(:dnf_package) { Chef::Resource::DnfPackage.new(package_name, run_context) }
|
71
74
|
|
@@ -17,11 +17,11 @@
|
|
17
17
|
#
|
18
18
|
|
19
19
|
require "spec_helper"
|
20
|
-
require "functional/resource/base"
|
21
20
|
require "timeout"
|
22
21
|
|
23
22
|
describe Chef::Resource::Execute do
|
24
23
|
let(:resource) do
|
24
|
+
run_context = Chef::RunContext.new(Chef::Node.new, {}, Chef::EventDispatch::Dispatcher.new)
|
25
25
|
resource = Chef::Resource::Execute.new("foo_resource", run_context)
|
26
26
|
resource.command("echo hello")
|
27
27
|
resource
|
@@ -20,7 +20,7 @@ require "spec_helper"
|
|
20
20
|
require "tmpdir"
|
21
21
|
|
22
22
|
# Deploy relies heavily on symlinks, so it doesn't work on windows.
|
23
|
-
describe Chef::Resource::Git
|
23
|
+
describe Chef::Resource::Git do
|
24
24
|
include RecipeDSLHelper
|
25
25
|
|
26
26
|
# Some versions of git complains when the deploy directory is
|
@@ -239,6 +239,28 @@ describe Chef::Resource::Git, requires_git: true do
|
|
239
239
|
end
|
240
240
|
end
|
241
241
|
|
242
|
+
context "when updating a branch that's already checked out out" do
|
243
|
+
it "checks out master, commits to the repo, and checks out the latest changes" do
|
244
|
+
git deploy_directory do
|
245
|
+
repository origin_repo
|
246
|
+
revision "master"
|
247
|
+
action :sync
|
248
|
+
end.should_be_updated
|
249
|
+
|
250
|
+
# We don't have a way to test a commit in the git bundle
|
251
|
+
# Revert to a previous commit in the same branch and make sure we can still sync.
|
252
|
+
shell_out!("git", "reset", "--hard", rev_foo, cwd: deploy_directory)
|
253
|
+
|
254
|
+
git deploy_directory do
|
255
|
+
repository origin_repo
|
256
|
+
revision "master"
|
257
|
+
action :sync
|
258
|
+
end.should_be_updated
|
259
|
+
expect_revision_to_be("HEAD", rev_head)
|
260
|
+
expect_branch_to_be("master")
|
261
|
+
end
|
262
|
+
end
|
263
|
+
|
242
264
|
context "when dealing with a repo with a degenerate tag named 'HEAD'" do
|
243
265
|
before do
|
244
266
|
shell_out!("git", "tag", "-m\"degenerate tag\"", "HEAD", "ed181b3419b6f489bedab282348162a110d6d3a1", cwd: origin_repo)
|
@@ -18,7 +18,6 @@
|
|
18
18
|
#
|
19
19
|
|
20
20
|
require "spec_helper"
|
21
|
-
require "functional/resource/base"
|
22
21
|
require "chef/mixin/shell_out"
|
23
22
|
|
24
23
|
describe Chef::Resource::Group, :requires_root_or_running_windows do
|
@@ -113,6 +112,15 @@ describe Chef::Resource::Group, :requires_root_or_running_windows do
|
|
113
112
|
# TODO: User shouldn't exist
|
114
113
|
end
|
115
114
|
|
115
|
+
let(:run_context) do
|
116
|
+
node = Chef::Node.new
|
117
|
+
node.default[:platform] = ohai[:platform]
|
118
|
+
node.default[:platform_version] = ohai[:platform_version]
|
119
|
+
node.default[:os] = ohai[:os]
|
120
|
+
events = Chef::EventDispatch::Dispatcher.new
|
121
|
+
Chef::RunContext.new(node, {}, events)
|
122
|
+
end
|
123
|
+
|
116
124
|
shared_examples_for "correct group management" do
|
117
125
|
def add_members_to_group(members)
|
118
126
|
temp_resource = group_resource.dup
|
@@ -151,8 +159,10 @@ describe Chef::Resource::Group, :requires_root_or_running_windows do
|
|
151
159
|
# excluded_members can only be used when append is set. It is ignored otherwise.
|
152
160
|
let(:excluded_members) { [] }
|
153
161
|
|
162
|
+
let(:expected_error_class) { windows? ? ArgumentError : Mixlib::ShellOut::ShellCommandFailed }
|
163
|
+
|
154
164
|
it "should raise an error" do
|
155
|
-
expect { group_resource.run_action(tested_action) }.to raise_error
|
165
|
+
expect { group_resource.run_action(tested_action) }.to raise_error(expected_error_class)
|
156
166
|
end
|
157
167
|
end
|
158
168
|
|
@@ -161,8 +171,10 @@ describe Chef::Resource::Group, :requires_root_or_running_windows do
|
|
161
171
|
group_resource.append(true)
|
162
172
|
end
|
163
173
|
|
174
|
+
let(:expected_error_class) { windows? ? Chef::Exceptions::Win32APIError : Mixlib::ShellOut::ShellCommandFailed }
|
175
|
+
|
164
176
|
it "should raise an error" do
|
165
|
-
expect { group_resource.run_action(tested_action) }.to raise_error
|
177
|
+
expect { group_resource.run_action(tested_action) }.to raise_error(expected_error_class)
|
166
178
|
end
|
167
179
|
end
|
168
180
|
end
|
@@ -17,7 +17,6 @@
|
|
17
17
|
#
|
18
18
|
|
19
19
|
require "spec_helper"
|
20
|
-
require "functional/resource/base"
|
21
20
|
require "chef/mixin/shell_out"
|
22
21
|
|
23
22
|
# run this test only for following platforms.
|
@@ -26,6 +25,15 @@ include_flag = !(%w{amazon debian aix}.include?(ohai[:platform_family]) || (ohai
|
|
26
25
|
describe Chef::Resource::Ifconfig, :requires_root, :requires_ifconfig, external: include_flag do
|
27
26
|
include Chef::Mixin::ShellOut
|
28
27
|
|
28
|
+
let(:run_context) do
|
29
|
+
node = Chef::Node.new
|
30
|
+
node.default[:platform] = ohai[:platform]
|
31
|
+
node.default[:platform_version] = ohai[:platform_version]
|
32
|
+
node.default[:os] = ohai[:os]
|
33
|
+
events = Chef::EventDispatch::Dispatcher.new
|
34
|
+
Chef::RunContext.new(node, {}, events)
|
35
|
+
end
|
36
|
+
|
29
37
|
let(:new_resource) do
|
30
38
|
new_resource = Chef::Resource::Ifconfig.new("10.10.0.1", run_context)
|
31
39
|
new_resource
|
@@ -1,4 +1,3 @@
|
|
1
|
-
# encoding: UTF-8
|
2
1
|
#
|
3
2
|
# Author:: Dheeraj Dubey (<dheeraj.dubey@msystechnologies.com>)
|
4
3
|
# Copyright:: Copyright (c) Chef Software Inc.
|
@@ -18,7 +17,6 @@
|
|
18
17
|
#
|
19
18
|
|
20
19
|
require "spec_helper"
|
21
|
-
require "functional/resource/base"
|
22
20
|
require "chef/mixin/shell_out"
|
23
21
|
require "fileutils"
|
24
22
|
|
@@ -54,6 +52,8 @@ describe Chef::Resource::Service, :requires_root, :opensuse do
|
|
54
52
|
|
55
53
|
# Actual tests
|
56
54
|
let(:new_resource) do
|
55
|
+
run_context = Chef::RunContext.new(Chef::Node.new, {}, Chef::EventDispatch::Dispatcher.new)
|
56
|
+
|
57
57
|
new_resource = Chef::Resource::Service.new("inittest", run_context)
|
58
58
|
new_resource.provider Chef::Provider::Service::Insserv
|
59
59
|
new_resource.supports({ status: true, restart: true, reload: true })
|
@@ -65,7 +65,7 @@ describe Chef::Resource::Service, :requires_root, :opensuse do
|
|
65
65
|
provider
|
66
66
|
end
|
67
67
|
|
68
|
-
let
|
68
|
+
let(:service_name) { "Chef::Util::PathHelper.escape_glob_dir(current_resource.service_name)" }
|
69
69
|
|
70
70
|
let(:current_resource) do
|
71
71
|
provider.load_current_resource
|
@@ -64,13 +64,10 @@ describe Chef::Resource::Link do
|
|
64
64
|
end
|
65
65
|
end
|
66
66
|
|
67
|
-
def
|
67
|
+
def user(user)
|
68
68
|
node = Chef::Node.new
|
69
69
|
node.consume_external_attrs(ohai.data, {})
|
70
|
-
node
|
71
|
-
end
|
72
|
-
|
73
|
-
def user(user)
|
70
|
+
run_context = Chef::RunContext.new(node, {}, Chef::EventDispatch::Dispatcher.new)
|
74
71
|
usr = Chef::Resource.resource_for_node(:user, node).new(user, run_context)
|
75
72
|
usr.password("ComplexPass11!") if windows?
|
76
73
|
usr
|
@@ -17,7 +17,6 @@
|
|
17
17
|
#
|
18
18
|
|
19
19
|
require "spec_helper"
|
20
|
-
require "functional/resource/base"
|
21
20
|
require "chef/mixin/shell_out"
|
22
21
|
require "tmpdir"
|
23
22
|
|
@@ -101,6 +100,15 @@ describe Chef::Resource::Mount, :requires_root, external: include_flag do
|
|
101
100
|
expect(shell_out("cat #{unix_mount_config_file}").stdout).not_to include("#{mount_point}:")
|
102
101
|
end
|
103
102
|
|
103
|
+
let(:run_context) do
|
104
|
+
node = Chef::Node.new
|
105
|
+
node.default[:platform] = ohai[:platform]
|
106
|
+
node.default[:platform_version] = ohai[:platform_version]
|
107
|
+
node.default[:os] = ohai[:os]
|
108
|
+
events = Chef::EventDispatch::Dispatcher.new
|
109
|
+
Chef::RunContext.new(node, {}, events)
|
110
|
+
end
|
111
|
+
|
104
112
|
let(:new_resource) do
|
105
113
|
new_resource = Chef::Resource::Mount.new(@mount_point, run_context)
|
106
114
|
new_resource.device @device
|
@@ -26,11 +26,17 @@ describe Chef::Resource::MsuPackage, :win2012r2_only do
|
|
26
26
|
let(:package_identity) { "Package_for_KB2959977~31bf3856ad364e35~amd64~~6.3.1.1" }
|
27
27
|
let(:timeout) { 3600 }
|
28
28
|
|
29
|
-
let(:
|
30
|
-
let(:cab_provider) do
|
29
|
+
let(:run_context) do
|
31
30
|
node = Chef::Node.new
|
31
|
+
node.default[:platform] = ohai[:platform]
|
32
|
+
node.default[:platform_version] = ohai[:platform_version]
|
33
|
+
node.default[:os] = ohai[:os]
|
32
34
|
events = Chef::EventDispatch::Dispatcher.new
|
33
|
-
|
35
|
+
Chef::RunContext.new(node, {}, events)
|
36
|
+
end
|
37
|
+
|
38
|
+
let(:new_resource) { Chef::Resource::CabPackage.new("windows_test_pkg") }
|
39
|
+
let(:cab_provider) do
|
34
40
|
Chef::Provider::Package::Cab.new(new_resource, run_context)
|
35
41
|
end
|
36
42
|
|
@@ -23,8 +23,8 @@ describe Chef::Resource::WindowsScript::PowershellScript, :windows_only do
|
|
23
23
|
|
24
24
|
include_context Chef::Resource::WindowsScript
|
25
25
|
|
26
|
-
let
|
27
|
-
let
|
26
|
+
let(:architecture_command) { "echo $env:PROCESSOR_ARCHITECTURE" }
|
27
|
+
let(:output_command) { " | out-file -encoding ASCII " }
|
28
28
|
|
29
29
|
it_behaves_like "a Windows script running on Windows"
|
30
30
|
|
@@ -68,8 +68,8 @@ describe Chef::Resource::WindowsScript::PowershellScript, :windows_only do
|
|
68
68
|
end
|
69
69
|
end
|
70
70
|
|
71
|
-
let
|
72
|
-
let
|
71
|
+
let(:negative_exit_status) { -27 }
|
72
|
+
let(:unsigned_exit_status) { (-negative_exit_status ^ 65535) + 1 }
|
73
73
|
it "returns the exit status -27 as a signed integer or an unsigned 16-bit 2's complement value of 65509 for a powershell script that exits with -27" do
|
74
74
|
|
75
75
|
# Versions of PowerShell prior to 4.0 return a 16-bit unsigned value --
|
@@ -134,7 +134,7 @@ describe Chef::Resource::RemoteFile do
|
|
134
134
|
let(:smb_file_local_file_name) { "smb_file.txt" }
|
135
135
|
let(:smb_file_local_path) { File.join( smb_share_root_directory, smb_file_local_file_name ) }
|
136
136
|
let(:smb_share_name) { "chef_smb_test" }
|
137
|
-
let(:smb_remote_path) { File.join("//#{ENV["COMPUTERNAME"]}", smb_share_name, smb_file_local_file_name).
|
137
|
+
let(:smb_remote_path) { File.join("//#{ENV["COMPUTERNAME"]}", smb_share_name, smb_file_local_file_name).tr("/", "\\") }
|
138
138
|
let(:smb_file_content) { "hellofun" }
|
139
139
|
let(:local_destination_path) { File.join(Dir.tmpdir, make_tmpname("chef_remote_file")) }
|
140
140
|
let(:windows_current_user) { ENV["USERNAME"] }
|
@@ -155,7 +155,7 @@ describe Chef::Resource::RemoteFile do
|
|
155
155
|
before do
|
156
156
|
shell_out("net.exe share #{smb_share_name} /delete")
|
157
157
|
File.write(smb_file_local_path, smb_file_content )
|
158
|
-
shell_out!("net.exe share #{smb_share_name}=\"#{smb_share_root_directory.
|
158
|
+
shell_out!("net.exe share #{smb_share_name}=\"#{smb_share_root_directory.tr("/", '\\')}\" /grant:\"authenticated users\",read")
|
159
159
|
end
|
160
160
|
|
161
161
|
after do
|
@@ -229,8 +229,8 @@ describe Chef::Resource::RemoteFile do
|
|
229
229
|
end
|
230
230
|
|
231
231
|
context "when the resource is accessed using an alternate user's identity with no access to the file" do
|
232
|
-
let
|
233
|
-
let
|
232
|
+
let(:windows_nonadmin_user) { "chefremfile1" }
|
233
|
+
let(:windows_nonadmin_user_password) { "j82ajfxK3;2Xe1" }
|
234
234
|
include_context "a non-admin Windows user"
|
235
235
|
|
236
236
|
before do
|
@@ -246,8 +246,8 @@ describe Chef::Resource::RemoteFile do
|
|
246
246
|
end
|
247
247
|
|
248
248
|
context "when the the file is only accessible as a specific alternate identity" do
|
249
|
-
let
|
250
|
-
let
|
249
|
+
let(:windows_nonadmin_user) { "chefremfile2" }
|
250
|
+
let(:windows_nonadmin_user_password) { "j82ajfxK3;2Xe2" }
|
251
251
|
include_context "a non-admin Windows user"
|
252
252
|
|
253
253
|
before do
|
@@ -279,8 +279,8 @@ describe Chef::Resource::RemoteFile do
|
|
279
279
|
end
|
280
280
|
|
281
281
|
context "when the resource is accessed using an alternate user's identity with no access to the file" do
|
282
|
-
let
|
283
|
-
let
|
282
|
+
let(:windows_nonadmin_user) { "chefremfile3" }
|
283
|
+
let(:windows_nonadmin_user_password) { "j82ajfxK3;2Xe3" }
|
284
284
|
include_context "a non-admin Windows user"
|
285
285
|
|
286
286
|
let(:remote_user) { windows_nonadmin_user_qualified }
|
@@ -409,13 +409,7 @@ describe Chef::Resource::RemoteFile do
|
|
409
409
|
it "should not create the file" do
|
410
410
|
# This can legitimately raise either Errno::EADDRNOTAVAIL or Errno::ECONNREFUSED
|
411
411
|
# in different Ruby versions.
|
412
|
-
|
413
|
-
RSpec::Expectations.configuration.on_potential_false_positives = :nothing
|
414
|
-
begin
|
415
|
-
expect { resource.run_action(:create) }.to raise_error
|
416
|
-
ensure
|
417
|
-
RSpec::Expectations.configuration.on_potential_false_positives = old_value
|
418
|
-
end
|
412
|
+
expect { resource.run_action(:create) }.to raise_error(SystemCallError)
|
419
413
|
|
420
414
|
expect(File).not_to exist(path)
|
421
415
|
end
|