chef 14.14.29-universal-mingw32 → 14.15.6-universal-mingw32
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +1 -1
- data/README.md +18 -7
- data/Rakefile +7 -4
- data/chef.gemspec +1 -1
- data/lib/chef/knife/ssh.rb +6 -0
- data/lib/chef/provider/ifconfig.rb +14 -5
- data/lib/chef/provider/windows_task.rb +9 -5
- data/lib/chef/resource/kernel_module.rb +61 -0
- data/lib/chef/resource/windows_task.rb +4 -0
- data/lib/chef/version.rb +1 -1
- data/spec/data/cookbooks/openldap/metadata.rb +2 -2
- data/spec/data/metadata/quick_start/metadata.rb +2 -7
- data/spec/functional/audit/runner_spec.rb +1 -1
- data/spec/functional/dsl/reboot_pending_spec.rb +7 -25
- data/spec/functional/event_loggers/windows_eventlog_spec.rb +6 -4
- data/spec/functional/file_content_management/deploy_strategies_spec.rb +21 -21
- data/spec/functional/knife/exec_spec.rb +1 -1
- data/spec/functional/knife/ssh_spec.rb +3 -3
- data/spec/functional/mixin/user_context_spec.rb +3 -1
- data/spec/functional/rebooter_spec.rb +1 -1
- data/spec/functional/resource/aix_service_spec.rb +1 -1
- data/spec/functional/resource/aixinit_service_spec.rb +1 -1
- data/spec/functional/resource/apt_package_spec.rb +1 -1
- data/spec/functional/resource/chocolatey_package_spec.rb +2 -2
- data/spec/functional/resource/cookbook_file_spec.rb +1 -3
- data/spec/functional/resource/cron_spec.rb +4 -3
- data/spec/functional/resource/dpkg_package_spec.rb +4 -4
- data/spec/functional/resource/dsc_resource_spec.rb +2 -1
- data/spec/functional/resource/dsc_script_spec.rb +16 -20
- data/spec/functional/resource/execute_spec.rb +2 -2
- data/spec/functional/resource/git_spec.rb +6 -6
- data/spec/functional/resource/group_spec.rb +8 -6
- data/spec/functional/resource/ifconfig_spec.rb +3 -5
- data/spec/functional/resource/link_spec.rb +2 -2
- data/spec/functional/resource/mount_spec.rb +3 -7
- data/spec/functional/resource/powershell_script_spec.rb +9 -8
- data/spec/functional/resource/reboot_spec.rb +1 -1
- data/spec/functional/resource/remote_file_spec.rb +2 -2
- data/spec/functional/resource/template_spec.rb +1 -1
- data/spec/functional/resource/user/windows_spec.rb +2 -2
- data/spec/functional/resource/windows_certificate_spec.rb +3 -3
- data/spec/functional/resource/windows_service_spec.rb +3 -3
- data/spec/functional/resource/windows_task_spec.rb +51 -0
- data/spec/functional/run_lock_spec.rb +10 -3
- data/spec/functional/shell_spec.rb +1 -1
- data/spec/functional/util/powershell/cmdlet_spec.rb +1 -1
- data/spec/functional/version_spec.rb +1 -1
- data/spec/functional/win32/security_spec.rb +12 -7
- data/spec/functional/win32/service_manager_spec.rb +1 -1
- data/spec/functional/win32/version_info_spec.rb +4 -4
- data/spec/integration/client/client_spec.rb +114 -132
- data/spec/integration/client/exit_code_spec.rb +8 -8
- data/spec/integration/client/ipv6_spec.rb +5 -5
- data/spec/integration/knife/chef_fs_data_store_spec.rb +38 -38
- data/spec/integration/knife/chef_repo_path_spec.rb +42 -42
- data/spec/integration/knife/chef_repository_file_system_spec.rb +9 -9
- data/spec/integration/knife/chefignore_spec.rb +13 -13
- data/spec/integration/knife/client_bulk_delete_spec.rb +8 -8
- data/spec/integration/knife/client_create_spec.rb +1 -1
- data/spec/integration/knife/client_delete_spec.rb +4 -4
- data/spec/integration/knife/client_key_delete_spec.rb +1 -1
- data/spec/integration/knife/client_key_list_spec.rb +1 -1
- data/spec/integration/knife/client_list_spec.rb +1 -1
- data/spec/integration/knife/common_options_spec.rb +1 -1
- data/spec/integration/knife/config_get_spec.rb +1 -1
- data/spec/integration/knife/config_list_profiles_spec.rb +2 -1
- data/spec/integration/knife/cookbook_api_ipv6_spec.rb +3 -3
- data/spec/integration/knife/cookbook_bulk_delete_spec.rb +3 -3
- data/spec/integration/knife/cookbook_download_spec.rb +4 -4
- data/spec/integration/knife/cookbook_list_spec.rb +2 -2
- data/spec/integration/knife/cookbook_show_spec.rb +3 -3
- data/spec/integration/knife/cookbook_upload_spec.rb +6 -6
- data/spec/integration/knife/data_bag_delete_spec.rb +4 -4
- data/spec/integration/knife/data_bag_from_file_spec.rb +7 -7
- data/spec/integration/knife/data_bag_list_spec.rb +1 -1
- data/spec/integration/knife/delete_spec.rb +37 -37
- data/spec/integration/knife/deps_spec.rb +23 -23
- data/spec/integration/knife/diff_spec.rb +23 -23
- data/spec/integration/knife/download_spec.rb +79 -79
- data/spec/integration/knife/environment_compare_spec.rb +3 -3
- data/spec/integration/knife/environment_from_file_spec.rb +6 -6
- data/spec/integration/knife/environment_list_spec.rb +1 -1
- data/spec/integration/knife/environment_show_spec.rb +4 -4
- data/spec/integration/knife/list_spec.rb +25 -25
- data/spec/integration/knife/node_bulk_delete_spec.rb +2 -2
- data/spec/integration/knife/node_delete_spec.rb +2 -2
- data/spec/integration/knife/node_environment_set_spec.rb +1 -1
- data/spec/integration/knife/node_from_file_spec.rb +2 -2
- data/spec/integration/knife/node_list_spec.rb +1 -1
- data/spec/integration/knife/raw_spec.rb +12 -12
- data/spec/integration/knife/redirection_spec.rb +1 -1
- data/spec/integration/knife/role_bulk_delete_spec.rb +2 -2
- data/spec/integration/knife/role_delete_spec.rb +2 -2
- data/spec/integration/knife/role_from_file_spec.rb +5 -5
- data/spec/integration/knife/role_list_spec.rb +1 -1
- data/spec/integration/knife/role_show_spec.rb +1 -1
- data/spec/integration/knife/show_spec.rb +10 -10
- data/spec/integration/knife/upload_spec.rb +85 -85
- data/spec/integration/recipes/accumulator_spec.rb +4 -4
- data/spec/integration/recipes/lwrp_inline_resources_spec.rb +6 -6
- data/spec/integration/recipes/lwrp_spec.rb +6 -6
- data/spec/integration/recipes/notifies_spec.rb +45 -45
- data/spec/integration/recipes/notifying_block_spec.rb +4 -4
- data/spec/integration/recipes/provider_choice.rb +1 -2
- data/spec/integration/recipes/recipe_dsl_spec.rb +9 -9
- data/spec/integration/recipes/remote_directory.rb +2 -2
- data/spec/integration/recipes/resource_action_spec.rb +1 -1
- data/spec/integration/recipes/resource_converge_if_changed_spec.rb +19 -19
- data/spec/integration/solo/solo_spec.rb +29 -29
- data/spec/scripts/ssl-serve.rb +1 -1
- data/spec/spec_helper.rb +11 -14
- data/spec/stress/win32/security_spec.rb +1 -1
- data/spec/support/lib/chef/resource/zen_follower.rb +1 -1
- data/spec/support/lib/chef/resource/zen_master.rb +1 -1
- data/spec/support/mock/platform.rb +2 -2
- data/spec/support/platform_helpers.rb +12 -3
- data/spec/support/platforms/win32/spec_service.rb +6 -10
- data/spec/support/shared/context/client.rb +2 -1
- data/spec/support/shared/functional/execute_resource.rb +4 -4
- data/spec/support/shared/functional/file_resource.rb +1 -3
- data/spec/support/shared/functional/http.rb +20 -44
- data/spec/support/shared/functional/securable_resource.rb +4 -8
- data/spec/support/shared/functional/win32_service.rb +1 -1
- data/spec/support/shared/functional/windows_script.rb +2 -1
- data/spec/support/shared/integration/app_server_support.rb +3 -4
- data/spec/support/shared/integration/integration_helper.rb +1 -0
- data/spec/support/shared/integration/knife_support.rb +5 -5
- data/spec/support/shared/unit/application_dot_d.rb +10 -4
- data/spec/support/shared/unit/file_system_support.rb +3 -2
- data/spec/support/shared/unit/platform_introspector.rb +12 -12
- data/spec/support/shared/unit/provider/file.rb +1 -1
- data/spec/support/shared/unit/script_resource.rb +1 -1
- data/spec/support/shared/unit/windows_script_resource.rb +1 -1
- data/spec/tiny_server.rb +1 -1
- data/spec/unit/api_client/registration_spec.rb +1 -1
- data/spec/unit/api_client_spec.rb +5 -5
- data/spec/unit/api_client_v1_spec.rb +6 -6
- data/spec/unit/application/client_spec.rb +8 -8
- data/spec/unit/application/exit_code_spec.rb +3 -2
- data/spec/unit/application/knife_spec.rb +1 -2
- data/spec/unit/audit/audit_event_proxy_spec.rb +14 -7
- data/spec/unit/audit/audit_reporter_spec.rb +20 -11
- data/spec/unit/audit/control_group_data_spec.rb +17 -12
- data/spec/unit/chef_fs/config_spec.rb +3 -3
- data/spec/unit/chef_fs/file_system/repository/directory_spec.rb +1 -1
- data/spec/unit/chef_fs/parallelizer.rb +1 -1
- data/spec/unit/client_spec.rb +3 -3
- data/spec/unit/config_fetcher_spec.rb +1 -1
- data/spec/unit/cookbook/metadata_spec.rb +13 -13
- data/spec/unit/cookbook/synchronizer_spec.rb +6 -6
- data/spec/unit/cookbook_loader_spec.rb +17 -17
- data/spec/unit/cookbook_manifest_spec.rb +9 -9
- data/spec/unit/cookbook_site_streaming_uploader_spec.rb +1 -2
- data/spec/unit/cookbook_uploader_spec.rb +2 -2
- data/spec/unit/cookbook_version_file_specificity_spec.rb +9 -9
- data/spec/unit/cookbook_version_spec.rb +2 -2
- data/spec/unit/data_bag_item_spec.rb +7 -7
- data/spec/unit/data_bag_spec.rb +1 -1
- data/spec/unit/data_collector_spec.rb +23 -23
- data/spec/unit/decorator_spec.rb +2 -2
- data/spec/unit/deprecated_spec.rb +2 -2
- data/spec/unit/dsl/data_query_spec.rb +3 -2
- data/spec/unit/dsl/declare_resource_spec.rb +1 -1
- data/spec/unit/dsl/platform_introspection_spec.rb +2 -2
- data/spec/unit/encrypted_data_bag_item/check_encrypted_spec.rb +2 -1
- data/spec/unit/encrypted_data_bag_item_spec.rb +2 -1
- data/spec/unit/environment_spec.rb +13 -13
- data/spec/unit/event_dispatch/dsl_spec.rb +1 -1
- data/spec/unit/file_content_management/deploy/mv_unix_spec.rb +3 -3
- data/spec/unit/file_content_management/deploy/mv_windows_spec.rb +2 -2
- data/spec/unit/formatters/error_inspectors/resource_failure_inspector_spec.rb +3 -3
- data/spec/unit/guard_interpreter/resource_guard_interpreter_spec.rb +1 -1
- data/spec/unit/http/authenticator_spec.rb +4 -3
- data/spec/unit/http/json_input_spec.rb +1 -1
- data/spec/unit/http/socketless_chef_zero_client_spec.rb +15 -15
- data/spec/unit/key_spec.rb +8 -8
- data/spec/unit/knife/bootstrap_spec.rb +14 -10
- data/spec/unit/knife/client_bulk_delete_spec.rb +4 -4
- data/spec/unit/knife/configure_client_spec.rb +1 -1
- data/spec/unit/knife/configure_spec.rb +1 -1
- data/spec/unit/knife/cookbook_bulk_delete_spec.rb +1 -1
- data/spec/unit/knife/cookbook_delete_spec.rb +2 -2
- data/spec/unit/knife/cookbook_download_spec.rb +2 -2
- data/spec/unit/knife/cookbook_metadata_spec.rb +4 -4
- data/spec/unit/knife/cookbook_upload_spec.rb +7 -5
- data/spec/unit/knife/core/bootstrap_context_spec.rb +1 -1
- data/spec/unit/knife/core/cookbook_scm_repo_spec.rb +2 -2
- data/spec/unit/knife/core/gem_glob_loader_spec.rb +4 -4
- data/spec/unit/knife/core/hashed_command_loader_spec.rb +4 -2
- data/spec/unit/knife/core/node_editor_spec.rb +12 -12
- data/spec/unit/knife/core/ui_spec.rb +11 -11
- data/spec/unit/knife/data_bag_from_file_spec.rb +2 -1
- data/spec/unit/knife/data_bag_show_spec.rb +2 -1
- data/spec/unit/knife/key_create_spec.rb +1 -1
- data/spec/unit/knife/key_delete_spec.rb +3 -3
- data/spec/unit/knife/key_edit_spec.rb +4 -4
- data/spec/unit/knife/key_list_spec.rb +1 -1
- data/spec/unit/knife/key_show_spec.rb +3 -3
- data/spec/unit/knife/node_bulk_delete_spec.rb +3 -3
- data/spec/unit/knife/node_delete_spec.rb +2 -2
- data/spec/unit/knife/node_edit_spec.rb +1 -1
- data/spec/unit/knife/node_environment_set_spec.rb +1 -1
- data/spec/unit/knife/node_from_file_spec.rb +1 -1
- data/spec/unit/knife/node_policy_set_spec.rb +1 -1
- data/spec/unit/knife/node_run_list_add_spec.rb +1 -1
- data/spec/unit/knife/node_run_list_remove_spec.rb +1 -1
- data/spec/unit/knife/node_run_list_set_spec.rb +1 -1
- data/spec/unit/knife/node_show_spec.rb +1 -1
- data/spec/unit/knife/raw_spec.rb +2 -2
- data/spec/unit/knife/role_bulk_delete_spec.rb +2 -2
- data/spec/unit/knife/role_create_spec.rb +1 -1
- data/spec/unit/knife/role_delete_spec.rb +1 -1
- data/spec/unit/knife/role_edit_spec.rb +1 -1
- data/spec/unit/knife/role_env_run_list_add_spec.rb +1 -1
- data/spec/unit/knife/role_env_run_list_clear_spec.rb +1 -1
- data/spec/unit/knife/role_env_run_list_remove_spec.rb +1 -1
- data/spec/unit/knife/role_env_run_list_replace_spec.rb +1 -1
- data/spec/unit/knife/role_env_run_list_set_spec.rb +1 -1
- data/spec/unit/knife/role_from_file_spec.rb +1 -1
- data/spec/unit/knife/role_run_list_add_spec.rb +1 -1
- data/spec/unit/knife/role_run_list_clear_spec.rb +1 -1
- data/spec/unit/knife/role_run_list_remove_spec.rb +1 -1
- data/spec/unit/knife/role_run_list_replace_spec.rb +1 -1
- data/spec/unit/knife/role_run_list_set_spec.rb +1 -1
- data/spec/unit/knife/ssh_spec.rb +27 -17
- data/spec/unit/knife/ssl_check_spec.rb +4 -4
- data/spec/unit/knife/ssl_fetch_spec.rb +5 -5
- data/spec/unit/knife/status_spec.rb +3 -2
- data/spec/unit/knife/supermarket_download_spec.rb +4 -4
- data/spec/unit/knife/supermarket_install_spec.rb +5 -4
- data/spec/unit/knife/supermarket_share_spec.rb +1 -1
- data/spec/unit/knife_spec.rb +34 -33
- data/spec/unit/lwrp_spec.rb +19 -19
- data/spec/unit/mixin/homebrew_user_spec.rb +1 -1
- data/spec/unit/mixin/params_validate_spec.rb +10 -10
- data/spec/unit/mixin/properties_spec.rb +4 -4
- data/spec/unit/mixin/shell_out_spec.rb +27 -27
- data/spec/unit/mixin/template_spec.rb +4 -8
- data/spec/unit/mixin/unformatter_spec.rb +1 -2
- data/spec/unit/mixin/user_context_spec.rb +1 -2
- data/spec/unit/mixin/which.rb +2 -0
- data/spec/unit/mixin/windows_architecture_helper_spec.rb +3 -3
- data/spec/unit/node/attribute_spec.rb +79 -79
- data/spec/unit/node/immutable_collections_spec.rb +50 -50
- data/spec/unit/node_spec.rb +16 -16
- data/spec/unit/org_spec.rb +3 -3
- data/spec/unit/policy_builder/policyfile_spec.rb +2 -2
- data/spec/unit/property/state_spec.rb +26 -25
- data/spec/unit/property/validation_spec.rb +14 -13
- data/spec/unit/property_spec.rb +10 -9
- data/spec/unit/provider/apt_update_spec.rb +6 -6
- data/spec/unit/provider/cron_spec.rb +15 -15
- data/spec/unit/provider/dsc_resource_spec.rb +6 -3
- data/spec/unit/provider/dsc_script_spec.rb +1 -1
- data/spec/unit/provider/execute_spec.rb +5 -5
- data/spec/unit/provider/git_spec.rb +39 -39
- data/spec/unit/provider/group/dscl_spec.rb +3 -3
- data/spec/unit/provider/group/groupadd_spec.rb +1 -1
- data/spec/unit/provider/group_spec.rb +2 -3
- data/spec/unit/provider/ifconfig/aix_spec.rb +1 -1
- data/spec/unit/provider/ifconfig/debian_spec.rb +2 -2
- data/spec/unit/provider/ifconfig_spec.rb +45 -16
- data/spec/unit/provider/launchd_spec.rb +23 -15
- data/spec/unit/provider/link_spec.rb +22 -11
- data/spec/unit/provider/mount/aix_spec.rb +6 -6
- data/spec/unit/provider/mount/mount_spec.rb +31 -31
- data/spec/unit/provider/mount/solaris_spec.rb +11 -11
- data/spec/unit/provider/ohai_spec.rb +1 -1
- data/spec/unit/provider/osx_profile_spec.rb +5 -7
- data/spec/unit/provider/package/apt_spec.rb +5 -5
- data/spec/unit/provider/package/bff_spec.rb +1 -1
- data/spec/unit/provider/package/cab_spec.rb +1 -1
- data/spec/unit/provider/package/chocolatey_spec.rb +8 -8
- data/spec/unit/provider/package/freebsd/pkg_spec.rb +1 -1
- data/spec/unit/provider/package/ips_spec.rb +6 -6
- data/spec/unit/provider/package/macports_spec.rb +1 -1
- data/spec/unit/provider/package/msu_spec.rb +1 -1
- data/spec/unit/provider/package/openbsd_spec.rb +15 -11
- data/spec/unit/provider/package/pacman_spec.rb +3 -3
- data/spec/unit/provider/package/paludis_spec.rb +4 -4
- data/spec/unit/provider/package/portage_spec.rb +1 -1
- data/spec/unit/provider/package/powershell_spec.rb +1 -1
- data/spec/unit/provider/package/smartos_spec.rb +3 -3
- data/spec/unit/provider/package/solaris_spec.rb +1 -1
- data/spec/unit/provider/package/windows/exe_spec.rb +9 -9
- data/spec/unit/provider/package/windows/msi_spec.rb +7 -7
- data/spec/unit/provider/package/windows_spec.rb +2 -1
- data/spec/unit/provider/package/yum/yum_cache_spec.rb +1 -1
- data/spec/unit/provider/package/zypper_spec.rb +4 -4
- data/spec/unit/provider/package_spec.rb +1 -1
- data/spec/unit/provider/powershell_script_spec.rb +7 -7
- data/spec/unit/provider/registry_key_spec.rb +1 -1
- data/spec/unit/provider/remote_directory_spec.rb +6 -6
- data/spec/unit/provider/route_spec.rb +11 -11
- data/spec/unit/provider/service/arch_service_spec.rb +13 -13
- data/spec/unit/provider/service/debian_service_spec.rb +2 -1
- data/spec/unit/provider/service/freebsd_service_spec.rb +28 -24
- data/spec/unit/provider/service/gentoo_service_spec.rb +2 -2
- data/spec/unit/provider/service/init_service_spec.rb +11 -11
- data/spec/unit/provider/service/invokercd_service_spec.rb +11 -11
- data/spec/unit/provider/service/macosx_spec.rb +5 -5
- data/spec/unit/provider/service/openbsd_service_spec.rb +15 -11
- data/spec/unit/provider/service/simple_service_spec.rb +7 -7
- data/spec/unit/provider/service/upstart_service_spec.rb +14 -14
- data/spec/unit/provider/service/windows_spec.rb +53 -35
- data/spec/unit/provider/subversion_spec.rb +8 -4
- data/spec/unit/provider/systemd_unit_spec.rb +142 -142
- data/spec/unit/provider/template/content_spec.rb +29 -29
- data/spec/unit/provider/windows_task_spec.rb +1 -1
- data/spec/unit/provider_resolver_spec.rb +75 -75
- data/spec/unit/provider_spec.rb +2 -4
- data/spec/unit/recipe_spec.rb +4 -4
- data/spec/unit/resource/batch_spec.rb +1 -1
- data/spec/unit/resource/chef_gem_spec.rb +1 -1
- data/spec/unit/resource/chocolatey_config_spec.rb +1 -1
- data/spec/unit/resource/chocolatey_source_spec.rb +1 -1
- data/spec/unit/resource/directory_spec.rb +1 -1
- data/spec/unit/resource/dnf_package_spec.rb +1 -1
- data/spec/unit/resource/dsc_resource_spec.rb +1 -1
- data/spec/unit/resource/file/verification_spec.rb +1 -2
- data/spec/unit/resource/file_spec.rb +1 -1
- data/spec/unit/resource/group_spec.rb +1 -1
- data/spec/unit/resource/link_spec.rb +1 -1
- data/spec/unit/resource/osx_profile_spec.rb +2 -1
- data/spec/unit/resource/powershell_script_spec.rb +12 -7
- data/spec/unit/resource/registry_key_spec.rb +3 -3
- data/spec/unit/resource/rhsm_subscription_spec.rb +1 -1
- data/spec/unit/resource/service_spec.rb +1 -1
- data/spec/unit/resource/template_spec.rb +2 -2
- data/spec/unit/resource/windows_env_spec.rb +1 -1
- data/spec/unit/resource/windows_service_spec.rb +5 -5
- data/spec/unit/resource/windows_task_spec.rb +6 -2
- data/spec/unit/resource/yum_package_spec.rb +1 -1
- data/spec/unit/resource_collection/resource_list_spec.rb +1 -1
- data/spec/unit/resource_collection/resource_set_spec.rb +7 -7
- data/spec/unit/resource_collection/stepable_iterator_spec.rb +2 -2
- data/spec/unit/resource_collection_spec.rb +4 -4
- data/spec/unit/resource_definition_spec.rb +2 -2
- data/spec/unit/resource_inspector_spec.rb +1 -1
- data/spec/unit/resource_reporter_spec.rb +4 -4
- data/spec/unit/resource_spec.rb +22 -22
- data/spec/unit/role_spec.rb +3 -3
- data/spec/unit/run_context/cookbook_compiler_spec.rb +23 -23
- data/spec/unit/run_list/run_list_expansion_spec.rb +9 -6
- data/spec/unit/run_list_spec.rb +1 -1
- data/spec/unit/runner_spec.rb +3 -3
- data/spec/unit/search/query_spec.rb +3 -2
- data/spec/unit/shell/model_wrapper_spec.rb +1 -1
- data/spec/unit/shell/shell_session_spec.rb +8 -11
- data/spec/unit/shell_spec.rb +1 -2
- data/spec/unit/user_spec.rb +4 -4
- data/spec/unit/user_v1_spec.rb +3 -3
- data/spec/unit/util/backup_spec.rb +1 -1
- data/spec/unit/util/dsc/lcm_output_parser_spec.rb +13 -13
- data/spec/unit/util/dsc/local_configuration_manager_spec.rb +3 -3
- data/spec/unit/util/editor_spec.rb +1 -1
- data/spec/unit/util/powershell/ps_credential_spec.rb +3 -2
- data/spec/unit/util/threaded_job_queue_spec.rb +2 -2
- data/spec/unit/version_class_spec.rb +4 -4
- data/spec/unit/win32/registry_spec.rb +5 -5
- data/spec/unit/win32/security_spec.rb +2 -1
- data/tasks/announce.rb +4 -11
- metadata +10 -6
- data/tasks/maintainers.rb +0 -211
- data/tasks/templates/prerelease.md.erb +0 -35
@@ -22,7 +22,7 @@ describe Chef::GuardInterpreter::ResourceGuardInterpreter do
|
|
22
22
|
let(:node) do
|
23
23
|
node = Chef::Node.new
|
24
24
|
|
25
|
-
node.default["kernel"] =
|
25
|
+
node.default["kernel"] = {}
|
26
26
|
node.default["kernel"][:machine] = :x86_64.to_s
|
27
27
|
node.automatic[:os] = "windows"
|
28
28
|
node
|
@@ -23,7 +23,7 @@ describe Chef::HTTP::Authenticator do
|
|
23
23
|
let(:class_instance) { Chef::HTTP::Authenticator.new(client_name: "test") }
|
24
24
|
let(:method) { "GET" }
|
25
25
|
let(:url) { URI("https://chef.example.com/organizations/test") }
|
26
|
-
let(:headers) {
|
26
|
+
let(:headers) { {} }
|
27
27
|
let(:data) { "" }
|
28
28
|
|
29
29
|
context "when handle_request is called" do
|
@@ -92,7 +92,8 @@ describe Chef::HTTP::Authenticator do
|
|
92
92
|
it "calls authentication_headers with the proper input" do
|
93
93
|
expect(class_instance).to receive(:authentication_headers).with(
|
94
94
|
method, url, data,
|
95
|
-
{ "X-Ops-Server-API-Version" => Chef::HTTP::Authenticator::DEFAULT_SERVER_API_VERSION }
|
95
|
+
{ "X-Ops-Server-API-Version" => Chef::HTTP::Authenticator::DEFAULT_SERVER_API_VERSION }
|
96
|
+
).and_return({})
|
96
97
|
class_instance.handle_request(method, url, headers, data)
|
97
98
|
end
|
98
99
|
end
|
@@ -108,7 +109,7 @@ describe Chef::HTTP::Authenticator do
|
|
108
109
|
wxpGV4dGtdcahwXNE4601aXPra+xPcRd2puCNoEDBzgVuTSsLYeKBDMSfs173W1Q
|
109
110
|
YwIDAQAB
|
110
111
|
-----END PUBLIC KEY-----
|
111
|
-
EOH
|
112
|
+
EOH
|
112
113
|
|
113
114
|
let(:class_instance) { Chef::HTTP::Authenticator.new(client_name: "test", raw_key: public_key, ssh_agent_signing: true) }
|
114
115
|
|
@@ -38,13 +38,13 @@ describe Chef::HTTP::SocketlessChefZeroClient do
|
|
38
38
|
|
39
39
|
let(:expected_rack_req) do
|
40
40
|
{
|
41
|
-
"SCRIPT_NAME"
|
42
|
-
"SERVER_NAME"
|
43
|
-
"REQUEST_METHOD"
|
44
|
-
"PATH_INFO"
|
45
|
-
"QUERY_STRING"
|
46
|
-
"SERVER_PORT"
|
47
|
-
"HTTP_HOST"
|
41
|
+
"SCRIPT_NAME" => "",
|
42
|
+
"SERVER_NAME" => "localhost",
|
43
|
+
"REQUEST_METHOD" => method.to_s.upcase,
|
44
|
+
"PATH_INFO" => uri.path,
|
45
|
+
"QUERY_STRING" => uri.query,
|
46
|
+
"SERVER_PORT" => uri.port,
|
47
|
+
"HTTP_HOST" => "localhost:#{uri.port}",
|
48
48
|
"rack.url_scheme" => "chefzero",
|
49
49
|
}
|
50
50
|
end
|
@@ -137,16 +137,16 @@ describe Chef::HTTP::SocketlessChefZeroClient do
|
|
137
137
|
|
138
138
|
let(:expected_rack_req) do
|
139
139
|
{
|
140
|
-
"SCRIPT_NAME"
|
141
|
-
"SERVER_NAME"
|
142
|
-
"REQUEST_METHOD"
|
143
|
-
"PATH_INFO"
|
144
|
-
"QUERY_STRING"
|
145
|
-
"SERVER_PORT"
|
146
|
-
"HTTP_HOST"
|
140
|
+
"SCRIPT_NAME" => "",
|
141
|
+
"SERVER_NAME" => "localhost",
|
142
|
+
"REQUEST_METHOD" => method.to_s.upcase,
|
143
|
+
"PATH_INFO" => uri.path,
|
144
|
+
"QUERY_STRING" => uri.query,
|
145
|
+
"SERVER_PORT" => uri.port,
|
146
|
+
"HTTP_HOST" => "localhost:#{uri.port}",
|
147
147
|
"HTTP_X_OPS_SERVER_API_VERSION" => "2",
|
148
148
|
"rack.url_scheme" => "chefzero",
|
149
|
-
"rack.input"
|
149
|
+
"rack.input" => an_instance_of(StringIO),
|
150
150
|
}
|
151
151
|
end
|
152
152
|
|
data/spec/unit/key_spec.rb
CHANGED
@@ -34,7 +34,7 @@ describe Chef::Key do
|
|
34
34
|
Tfuc9dUYsFjptWYrV6pfEQ+bgo1OGBXORBFcFL+2D7u9JYquKrMgosznHoEkQNLo
|
35
35
|
0wIDAQAB
|
36
36
|
-----END PUBLIC KEY-----
|
37
|
-
EOS
|
37
|
+
EOS
|
38
38
|
end
|
39
39
|
|
40
40
|
shared_examples_for "fields with username type validation" do
|
@@ -66,7 +66,7 @@ EOS
|
|
66
66
|
|
67
67
|
context "when you feed it anything but a string" do
|
68
68
|
it "should raise an ArgumentError" do
|
69
|
-
expect { key.send(field,
|
69
|
+
expect { key.send(field, {}) }.to raise_error(ArgumentError)
|
70
70
|
end
|
71
71
|
end
|
72
72
|
end
|
@@ -406,9 +406,9 @@ EOS
|
|
406
406
|
|
407
407
|
it "creates a new key via the API with the fingerprint as the name" do
|
408
408
|
expect(rest).to receive(:post).with(url,
|
409
|
-
|
410
|
-
|
411
|
-
|
409
|
+
{ "name" => "12:3e:33:73:0b:f4:ec:72:dc:f0:4c:51:62:27:08:76:96:24:f4:4a",
|
410
|
+
"public_key" => key.public_key,
|
411
|
+
"expiration_date" => key.expiration_date }).and_return({})
|
412
412
|
key.create
|
413
413
|
end
|
414
414
|
end
|
@@ -424,9 +424,9 @@ EOS
|
|
424
424
|
context "when create_key is false" do
|
425
425
|
it "creates a new key via the API" do
|
426
426
|
expect(rest).to receive(:post).with(url,
|
427
|
-
|
428
|
-
|
429
|
-
|
427
|
+
{ "name" => key.name,
|
428
|
+
"public_key" => key.public_key,
|
429
|
+
"expiration_date" => key.expiration_date }).and_return({})
|
430
430
|
key.create
|
431
431
|
end
|
432
432
|
end
|
@@ -72,7 +72,7 @@ describe Chef::Knife::Bootstrap do
|
|
72
72
|
expect(knife).to receive(:read_secret).and_return("secrets")
|
73
73
|
expect(rendered_template).to match("cat > /etc/chef/encrypted_data_bag_secret <<'EOP'")
|
74
74
|
expect(rendered_template).to match('{"run_list":\[\]}')
|
75
|
-
expect(rendered_template).to match(
|
75
|
+
expect(rendered_template).to match(/secrets/)
|
76
76
|
end
|
77
77
|
end
|
78
78
|
end
|
@@ -92,7 +92,7 @@ describe Chef::Knife::Bootstrap do
|
|
92
92
|
knife.render_template
|
93
93
|
end
|
94
94
|
it "configures the preinstall command in the bootstrap template correctly" do
|
95
|
-
expect(rendered_template).to match(
|
95
|
+
expect(rendered_template).to match(/command/)
|
96
96
|
end
|
97
97
|
end
|
98
98
|
|
@@ -103,7 +103,7 @@ describe Chef::Knife::Bootstrap do
|
|
103
103
|
knife.render_template
|
104
104
|
end
|
105
105
|
it "configures the https_proxy environment variable in the bootstrap template correctly" do
|
106
|
-
expect(rendered_template).to match(
|
106
|
+
expect(rendered_template).to match(/https_proxy="1.1.1.1" export https_proxy/)
|
107
107
|
end
|
108
108
|
end
|
109
109
|
|
@@ -114,7 +114,7 @@ describe Chef::Knife::Bootstrap do
|
|
114
114
|
knife.render_template
|
115
115
|
end
|
116
116
|
it "configures the https_proxy environment variable in the bootstrap template correctly" do
|
117
|
-
expect(rendered_template).to match(
|
117
|
+
expect(rendered_template).to match(/no_proxy="localserver" export no_proxy/)
|
118
118
|
end
|
119
119
|
end
|
120
120
|
|
@@ -324,7 +324,7 @@ describe Chef::Knife::Bootstrap do
|
|
324
324
|
it "should create a hint file when told to" do
|
325
325
|
knife.parse_options(["--hint", "openstack"])
|
326
326
|
knife.merge_configs
|
327
|
-
expect(knife.render_template).to match(
|
327
|
+
expect(knife.render_template).to match(%r{/etc/chef/ohai/hints/openstack.json})
|
328
328
|
end
|
329
329
|
|
330
330
|
it "should populate a hint file with JSON when given a file to read" do
|
@@ -354,7 +354,7 @@ describe Chef::Knife::Bootstrap do
|
|
354
354
|
let(:setting) { "api.opscode.com" }
|
355
355
|
|
356
356
|
it "renders the client.rb with a single FQDN no_proxy entry" do
|
357
|
-
expect(rendered_template).to match(
|
357
|
+
expect(rendered_template).to match(/.*no_proxy\s*"api.opscode.com".*/)
|
358
358
|
end
|
359
359
|
end
|
360
360
|
|
@@ -362,7 +362,7 @@ describe Chef::Knife::Bootstrap do
|
|
362
362
|
let(:setting) { "api.opscode.com,172.16.10.*" }
|
363
363
|
|
364
364
|
it "renders the client.rb with comma-separated FQDN and wildcard IP address no_proxy entries" do
|
365
|
-
expect(rendered_template).to match(
|
365
|
+
expect(rendered_template).to match(/.*no_proxy\s*"api.opscode.com,172.16.10.\*".*/)
|
366
366
|
end
|
367
367
|
end
|
368
368
|
|
@@ -420,7 +420,7 @@ describe Chef::Knife::Bootstrap do
|
|
420
420
|
it "creates a secret file" do
|
421
421
|
expect(knife).to receive(:encryption_secret_provided_ignore_encrypt_flag?).and_return(true)
|
422
422
|
expect(knife).to receive(:read_secret).and_return(secret)
|
423
|
-
expect(rendered_template).to match(
|
423
|
+
expect(rendered_template).to match(/#{secret}/)
|
424
424
|
end
|
425
425
|
|
426
426
|
it "renders the client.rb with an encrypted_data_bag_secret entry" do
|
@@ -528,7 +528,9 @@ describe Chef::Knife::Bootstrap do
|
|
528
528
|
context "when client_d_dir is set" do
|
529
529
|
let(:client_d_dir) do
|
530
530
|
Chef::Util::PathHelper.cleanpath(
|
531
|
-
|
531
|
+
File.join(File.dirname(__FILE__), "../../data/client.d_00")
|
532
|
+
)
|
533
|
+
end
|
532
534
|
|
533
535
|
it "creates /etc/chef/client.d" do
|
534
536
|
expect(rendered_template).to match("mkdir -p /etc/chef/client\.d")
|
@@ -553,7 +555,9 @@ describe Chef::Knife::Bootstrap do
|
|
553
555
|
context "a nested directory structure" do
|
554
556
|
let(:client_d_dir) do
|
555
557
|
Chef::Util::PathHelper.cleanpath(
|
556
|
-
|
558
|
+
File.join(File.dirname(__FILE__), "../../data/client.d_01")
|
559
|
+
)
|
560
|
+
end
|
557
561
|
it "creates a file foo/bar.rb" do
|
558
562
|
expect(rendered_template).to match("cat > /etc/chef/client.d/foo/bar.rb <<'EOP'")
|
559
563
|
expect(rendered_template).to match("1 / 0")
|
@@ -42,10 +42,10 @@ describe Chef::Knife::ClientBulkDelete do
|
|
42
42
|
|
43
43
|
let(:nonvalidator_client_names) { %w{tim dan stephen} }
|
44
44
|
let(:nonvalidator_clients) do
|
45
|
-
clients =
|
45
|
+
clients = {}
|
46
46
|
|
47
47
|
nonvalidator_client_names.each do |client_name|
|
48
|
-
client = Chef::ApiClientV1.new
|
48
|
+
client = Chef::ApiClientV1.new
|
49
49
|
client.name(client_name)
|
50
50
|
allow(client).to receive(:destroy).and_return(true)
|
51
51
|
clients[client_name] = client
|
@@ -56,10 +56,10 @@ describe Chef::Knife::ClientBulkDelete do
|
|
56
56
|
|
57
57
|
let(:validator_client_names) { %w{myorg-validator} }
|
58
58
|
let(:validator_clients) do
|
59
|
-
clients =
|
59
|
+
clients = {}
|
60
60
|
|
61
61
|
validator_client_names.each do |validator_client_name|
|
62
|
-
validator_client = Chef::ApiClientV1.new
|
62
|
+
validator_client = Chef::ApiClientV1.new
|
63
63
|
validator_client.name(validator_client_name)
|
64
64
|
allow(validator_client).to receive(:validator).and_return(true)
|
65
65
|
allow(validator_client).to receive(:destroy).and_return(true)
|
@@ -58,7 +58,7 @@ describe Chef::Knife::ConfigureClient do
|
|
58
58
|
it "should write out the config file" do
|
59
59
|
allow(FileUtils).to receive(:mkdir_p)
|
60
60
|
@knife.run
|
61
|
-
expect(@client_file.string).to match
|
61
|
+
expect(@client_file.string).to match %r{chef_server_url\s+'https\://chef\.example\.com'}
|
62
62
|
expect(@client_file.string).to match /validation_client_name\s+'chef-validator'/
|
63
63
|
end
|
64
64
|
|
@@ -159,7 +159,7 @@ describe Chef::Knife::Configure do
|
|
159
159
|
@knife.run
|
160
160
|
expect(config_file.string).to match(/^client_name[\s]+=[\s]+'#{Etc.getlogin}'$/)
|
161
161
|
expect(config_file.string).to match(%r{^client_key[\s]+=[\s]+'/home/you/.chef/#{Etc.getlogin}.pem'$})
|
162
|
-
expect(config_file.string).to match(
|
162
|
+
expect(config_file.string).to match(/^chef_server_url\s+=[\s]+'#{default_server_url}'$/)
|
163
163
|
end
|
164
164
|
|
165
165
|
it "creates a new client when given the --initial option" do
|
@@ -31,7 +31,7 @@ describe Chef::Knife::CookbookBulkDelete do
|
|
31
31
|
allow(@knife.ui).to receive(:stdout).and_return(@stdout)
|
32
32
|
allow(@knife.ui).to receive(:stderr).and_return(@stderr)
|
33
33
|
allow(@knife.ui).to receive(:confirm).and_return(true)
|
34
|
-
@cookbooks =
|
34
|
+
@cookbooks = {}
|
35
35
|
%w{cheezburger pizza lasagna}.each do |cookbook_name|
|
36
36
|
cookbook = Chef::CookbookVersion.new(cookbook_name)
|
37
37
|
@cookbooks[cookbook_name] = cookbook
|
@@ -76,8 +76,8 @@ describe Chef::Knife::CookbookDelete do
|
|
76
76
|
@knife.cookbook_name = "foobar"
|
77
77
|
@knife.version = "1.0.0"
|
78
78
|
expect(@knife).to receive(:delete_object).with(Chef::CookbookVersion,
|
79
|
-
|
80
|
-
|
79
|
+
"foobar version 1.0.0",
|
80
|
+
"cookbook").and_yield
|
81
81
|
expect(@knife).to receive(:delete_request).with("cookbooks/foobar/1.0.0")
|
82
82
|
@knife.delete_explicit_version
|
83
83
|
end
|
@@ -112,7 +112,7 @@ describe Chef::Knife::CookbookDownload do
|
|
112
112
|
|
113
113
|
it "should print an error and exit if the cookbook download directory already exists" do
|
114
114
|
expect(File).to receive(:exists?).with("/var/tmp/chef/foobar-1.0.0").and_return(true)
|
115
|
-
expect(@knife.ui).to receive(:fatal).with(
|
115
|
+
expect(@knife.ui).to receive(:fatal).with(%r{/var/tmp/chef/foobar-1\.0\.0 exists}i)
|
116
116
|
expect { @knife.run }.to raise_error(SystemExit)
|
117
117
|
end
|
118
118
|
|
@@ -141,7 +141,7 @@ describe Chef::Knife::CookbookDownload do
|
|
141
141
|
expect(@stderr.string).to match /downloading #{segment}/im
|
142
142
|
end
|
143
143
|
expect(@stderr.string).to match /downloading foobar cookbook version 1\.0\.0/im
|
144
|
-
expect(@stderr.string).to match
|
144
|
+
expect(@stderr.string).to match %r{cookbook downloaded to /var/tmp/chef/foobar-1\.0\.0}im
|
145
145
|
end
|
146
146
|
|
147
147
|
describe "with -f or --force" do
|
@@ -98,8 +98,8 @@ describe Chef::Knife::CookbookMetadata do
|
|
98
98
|
it "should generate the metadata for each cookbook" do
|
99
99
|
expect(Chef::CookbookLoader).to receive(:new).with(cookbook_dir).and_call_original
|
100
100
|
knife.run
|
101
|
-
expect(stderr.string).to match
|
102
|
-
expect(stderr.string).to match
|
101
|
+
expect(stderr.string).to match %r{generating metadata for foo from #{cookbook_dir}/foo/metadata\.rb}im
|
102
|
+
expect(stderr.string).to match %r{generating metadata for bar from #{cookbook_dir}/bar/metadata\.rb}im
|
103
103
|
end
|
104
104
|
|
105
105
|
it "with -o or --cookbook_path should look in the provided path and generate cookbook metadata" do
|
@@ -107,8 +107,8 @@ describe Chef::Knife::CookbookMetadata do
|
|
107
107
|
knife.config[:cookbook_path] = cookbook_dir
|
108
108
|
expect(Chef::CookbookLoader).to receive(:new).with(cookbook_dir).and_call_original
|
109
109
|
knife.run
|
110
|
-
expect(stderr.string).to match
|
111
|
-
expect(stderr.string).to match
|
110
|
+
expect(stderr.string).to match %r{generating metadata for foo from #{cookbook_dir}/foo/metadata\.rb}im
|
111
|
+
expect(stderr.string).to match %r{generating metadata for bar from #{cookbook_dir}/bar/metadata\.rb}im
|
112
112
|
end
|
113
113
|
end
|
114
114
|
|
@@ -122,7 +122,7 @@ describe Chef::Knife::CookbookUpload do
|
|
122
122
|
test_cookbook:
|
123
123
|
/path/one/test_cookbook
|
124
124
|
/path/two/test_cookbook
|
125
|
-
E
|
125
|
+
E
|
126
126
|
expect(output.string).to include(expected_message)
|
127
127
|
end
|
128
128
|
end
|
@@ -198,7 +198,7 @@ E
|
|
198
198
|
before(:each) do
|
199
199
|
cookbook.metadata.depends("dependency")
|
200
200
|
allow(cookbook_loader).to receive(:[]) do |ckbk|
|
201
|
-
{ "test_cookbook" =>
|
201
|
+
{ "test_cookbook" => cookbook,
|
202
202
|
"dependency" => cookbook_dependency }[ckbk]
|
203
203
|
end
|
204
204
|
allow(knife).to receive(:cookbook_names).and_return(%w{cookbook_dependency test_cookbook})
|
@@ -225,7 +225,7 @@ E
|
|
225
225
|
cookbook_dependency2 = Chef::CookbookVersion.new("dependency2")
|
226
226
|
cookbook.metadata.depends("dependency2")
|
227
227
|
allow(cookbook_loader).to receive(:[]) do |ckbk|
|
228
|
-
{ "test_cookbook" =>
|
228
|
+
{ "test_cookbook" => cookbook,
|
229
229
|
"dependency" => cookbook_dependency,
|
230
230
|
"dependency2" => cookbook_dependency2 }[ckbk]
|
231
231
|
end
|
@@ -291,7 +291,8 @@ E
|
|
291
291
|
it "should warn users that no cookbooks exist" do
|
292
292
|
knife.config[:cookbook_path] = ["/chef-repo/cookbooks", "/home/user/cookbooks"]
|
293
293
|
expect(knife.ui).to receive(:warn).with(
|
294
|
-
/Could not find any cookbooks in your cookbook path: #{knife.config[:cookbook_path].join(', ')}\. Use --cookbook-path to specify the desired path\./
|
294
|
+
/Could not find any cookbooks in your cookbook path: #{knife.config[:cookbook_path].join(', ')}\. Use --cookbook-path to specify the desired path\./
|
295
|
+
)
|
295
296
|
knife.run
|
296
297
|
end
|
297
298
|
end
|
@@ -300,7 +301,8 @@ E
|
|
300
301
|
it "should warn users that no cookbooks exist" do
|
301
302
|
knife.config[:cookbook_path] = "/chef-repo/cookbooks"
|
302
303
|
expect(knife.ui).to receive(:warn).with(
|
303
|
-
/Could not find any cookbooks in your cookbook path: #{knife.config[:cookbook_path]}\. Use --cookbook-path to specify the desired path\./
|
304
|
+
/Could not find any cookbooks in your cookbook path: #{knife.config[:cookbook_path]}\. Use --cookbook-path to specify the desired path\./
|
305
|
+
)
|
304
306
|
knife.run
|
305
307
|
end
|
306
308
|
end
|
@@ -35,7 +35,7 @@ describe Chef::Knife::CookbookSCMRepo do
|
|
35
35
|
chef-vendor-graphite
|
36
36
|
chef-vendor-python
|
37
37
|
chef-vendor-absent-new
|
38
|
-
BRANCHES
|
38
|
+
BRANCHES
|
39
39
|
end
|
40
40
|
|
41
41
|
it "has a path to the cookbook repo" do
|
@@ -84,7 +84,7 @@ BRANCHES
|
|
84
84
|
@dirty_status = Mixlib::ShellOut.new
|
85
85
|
@dirty_status.stdout.replace(<<-DIRTY)
|
86
86
|
M chef/lib/chef/knife/cookbook_site_install.rb
|
87
|
-
DIRTY
|
87
|
+
DIRTY
|
88
88
|
expect(@cookbook_repo).to receive(:shell_out!).with("git status --porcelain", cwd: @repo_path).and_return(@dirty_status)
|
89
89
|
expect { @cookbook_repo.sanity_check }.to raise_error(SystemExit)
|
90
90
|
end
|
@@ -34,7 +34,7 @@ describe Chef::Knife::SubcommandLoader::GemGlobLoader do
|
|
34
34
|
it "builds a list of the core subcommand file require paths" do
|
35
35
|
expect(loader.subcommand_files).not_to be_empty
|
36
36
|
loader.subcommand_files.each do |require_path|
|
37
|
-
expect(require_path).to match(/
|
37
|
+
expect(require_path).to match(%r{chef/knife/.*|plugins/knife/.*})
|
38
38
|
end
|
39
39
|
end
|
40
40
|
|
@@ -52,7 +52,7 @@ describe Chef::Knife::SubcommandLoader::GemGlobLoader do
|
|
52
52
|
expect($LOAD_PATH).to receive(:map).and_return([])
|
53
53
|
if Gem::Specification.respond_to? :latest_specs
|
54
54
|
expect(Gem::Specification).to receive(:latest_specs).with(true).and_return(gems)
|
55
|
-
expect(gems[0]).to receive(:matches_for_glob).with(/
|
55
|
+
expect(gems[0]).to receive(:matches_for_glob).with(%r{chef/knife/\*\.rb\{(.*),\.rb,(.*)\}}).and_return(gem_files)
|
56
56
|
else
|
57
57
|
expect(Gem.source_index).to receive(:latest_specs).with(true).and_return(gems)
|
58
58
|
expect(gems[0]).to receive(:require_paths).twice.and_return(["lib"])
|
@@ -185,7 +185,7 @@ describe Chef::Knife::SubcommandLoader::GemGlobLoader do
|
|
185
185
|
expect(Gem.source_index).to receive(:latest_specs).and_call_original
|
186
186
|
end
|
187
187
|
loader.subcommand_files.each do |require_path|
|
188
|
-
expect(require_path).to match(/
|
188
|
+
expect(require_path).to match(%r{chef/knife/.*|plugins/knife/.*})
|
189
189
|
end
|
190
190
|
end
|
191
191
|
|
@@ -201,7 +201,7 @@ describe Chef::Knife::SubcommandLoader::GemGlobLoader do
|
|
201
201
|
expect(Gem.source_index).to receive(:latest_specs).and_call_original
|
202
202
|
end
|
203
203
|
loader.subcommand_files.each do |require_path|
|
204
|
-
expect(require_path).to match(/
|
204
|
+
expect(require_path).to match(%r{chef/knife/.*|plugins/knife/.*})
|
205
205
|
end
|
206
206
|
end
|
207
207
|
end
|