chef 14.14.29-universal-mingw32 → 14.15.6-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/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
|