chef 11.10.0.rc.0-x86-mingw32 → 11.10.0.rc.1-x86-mingw32
Sign up to get free protection for your applications and to get access to all the features.
- data/Rakefile +0 -75
- data/distro/common/html/_sources/ctl_chef_client.txt +36 -0
- data/distro/common/html/_sources/ctl_chef_server.txt +26 -0
- data/distro/common/html/_sources/ctl_chef_shell.txt +15 -0
- data/distro/common/html/_sources/ctl_chef_solo.txt +25 -0
- data/distro/common/html/_sources/index.txt +126 -0
- data/distro/common/html/_sources/knife.txt +74 -0
- data/distro/common/html/_sources/knife_bootstrap.txt +56 -0
- data/distro/common/html/_sources/knife_client.txt +151 -0
- data/distro/common/html/_sources/knife_common_options.txt +6 -0
- data/distro/common/html/_sources/knife_configure.txt +29 -0
- data/distro/common/html/_sources/knife_cookbook.txt +236 -0
- data/distro/common/html/_sources/knife_cookbook_site.txt +157 -0
- data/distro/common/html/_sources/knife_data_bag.txt +160 -0
- data/distro/common/html/_sources/knife_delete.txt +26 -0
- data/distro/common/html/_sources/knife_deps.txt +61 -0
- data/distro/common/html/_sources/knife_diff.txt +34 -0
- data/distro/common/html/_sources/knife_download.txt +44 -0
- data/distro/common/html/_sources/knife_edit.txt +26 -0
- data/distro/common/html/_sources/knife_environment.txt +158 -0
- data/distro/common/html/_sources/knife_exec.txt +47 -0
- data/distro/common/html/_sources/knife_index_rebuild.txt +21 -0
- data/distro/common/html/_sources/knife_list.txt +33 -0
- data/distro/common/html/_sources/knife_node.txt +250 -0
- data/distro/common/html/_sources/knife_raw.txt +35 -0
- data/distro/common/html/_sources/knife_recipe_list.txt +23 -0
- data/distro/common/html/_sources/knife_role.txt +157 -0
- data/distro/common/html/_sources/knife_search.txt +53 -0
- data/distro/common/html/_sources/knife_show.txt +27 -0
- data/distro/common/html/_sources/knife_ssh.txt +43 -0
- data/distro/common/html/_sources/knife_status.txt +37 -0
- data/distro/common/html/_sources/knife_tag.txt +69 -0
- data/distro/common/html/_sources/knife_upload.txt +49 -0
- data/distro/common/html/_sources/knife_user.txt +127 -0
- data/distro/common/html/_sources/knife_using.txt +43 -0
- data/distro/common/html/_sources/knife_xargs.txt +30 -0
- data/distro/common/html/_static/ajax-loader.gif +0 -0
- data/distro/common/html/_static/basic.css +540 -0
- data/distro/common/html/_static/chef.css +507 -0
- data/distro/common/html/_static/chef.ico +0 -0
- data/distro/common/html/_static/chef_html_logo.png +0 -0
- data/distro/common/html/_static/chef_logo.png +0 -0
- data/distro/common/html/_static/comment-bright.png +0 -0
- data/distro/common/html/_static/comment-close.png +0 -0
- data/distro/common/html/_static/comment.png +0 -0
- data/distro/common/html/_static/contents.png +0 -0
- data/distro/common/html/_static/doctools.js +247 -0
- data/distro/common/html/_static/down-pressed.png +0 -0
- data/distro/common/html/_static/down.png +0 -0
- data/distro/common/html/_static/file.png +0 -0
- data/distro/common/html/_static/guide.css +505 -0
- data/distro/common/html/_static/jquery.js +154 -0
- data/distro/common/html/_static/minus.png +0 -0
- data/distro/common/html/_static/navigation.png +0 -0
- data/distro/common/html/_static/plus.png +0 -0
- data/distro/common/html/_static/pygments.css +62 -0
- data/distro/common/html/_static/searchtools.js +560 -0
- data/distro/common/html/_static/underscore.js +23 -0
- data/distro/common/html/_static/up-pressed.png +0 -0
- data/distro/common/html/_static/up.png +0 -0
- data/distro/common/html/_static/websupport.js +808 -0
- data/distro/common/html/ctl_chef_client.html +219 -0
- data/distro/common/html/ctl_chef_server.html +111 -0
- data/distro/common/html/ctl_chef_shell.html +120 -0
- data/distro/common/html/ctl_chef_solo.html +144 -0
- data/distro/common/html/index.html +185 -0
- data/distro/common/html/knife.html +172 -0
- data/distro/common/html/knife_bootstrap.html +250 -0
- data/distro/common/html/knife_client.html +283 -0
- data/distro/common/html/knife_common_options.html +98 -0
- data/distro/common/html/knife_configure.html +107 -0
- data/distro/common/html/knife_cookbook.html +481 -0
- data/distro/common/html/knife_cookbook_site.html +372 -0
- data/distro/common/html/knife_data_bag.html +359 -0
- data/distro/common/html/knife_delete.html +95 -0
- data/distro/common/html/knife_deps.html +145 -0
- data/distro/common/html/knife_diff.html +125 -0
- data/distro/common/html/knife_download.html +147 -0
- data/distro/common/html/knife_edit.html +91 -0
- data/distro/common/html/knife_environment.html +328 -0
- data/distro/common/html/knife_exec.html +222 -0
- data/distro/common/html/knife_index_rebuild.html +85 -0
- data/distro/common/html/knife_list.html +116 -0
- data/distro/common/html/knife_node.html +450 -0
- data/distro/common/html/knife_raw.html +112 -0
- data/distro/common/html/knife_recipe_list.html +93 -0
- data/distro/common/html/knife_role.html +295 -0
- data/distro/common/html/knife_search.html +204 -0
- data/distro/common/html/knife_show.html +106 -0
- data/distro/common/html/knife_ssh.html +179 -0
- data/distro/common/html/knife_status.html +142 -0
- data/distro/common/html/knife_tag.html +140 -0
- data/distro/common/html/knife_upload.html +155 -0
- data/distro/common/html/knife_user.html +244 -0
- data/distro/common/html/knife_using.html +211 -0
- data/distro/common/html/knife_xargs.html +115 -0
- data/distro/common/html/objects.inv +0 -0
- data/distro/common/html/search.html +84 -0
- data/distro/common/html/searchindex.js +1 -0
- data/distro/common/man/man1/chef-shell.1 +5 -5
- data/distro/common/man/man1/knife-bootstrap.1 +6 -9
- data/distro/common/man/man1/knife-client.1 +1 -9
- data/distro/common/man/man1/knife-configure.1 +10 -6
- data/distro/common/man/man1/knife-cookbook-site.1 +1 -9
- data/distro/common/man/man1/knife-cookbook.1 +11 -21
- data/distro/common/man/man1/knife-data-bag.1 +8 -22
- data/distro/common/man/man1/knife-delete.1 +1 -1
- data/distro/common/man/man1/knife-deps.1 +4 -12
- data/distro/common/man/man1/knife-diff.1 +1 -1
- data/distro/common/man/man1/knife-download.1 +2 -2
- data/distro/common/man/man1/knife-edit.1 +1 -1
- data/distro/common/man/man1/knife-environment.1 +108 -9
- data/distro/common/man/man1/knife-exec.1 +1 -15
- data/distro/common/man/man1/knife-index-rebuild.1 +1 -1
- data/distro/common/man/man1/knife-list.1 +1 -1
- data/distro/common/man/man1/knife-node.1 +3 -13
- data/distro/common/man/man1/knife-raw.1 +1 -1
- data/distro/common/man/man1/knife-recipe-list.1 +1 -1
- data/distro/common/man/man1/knife-role.1 +2 -12
- data/distro/common/man/man1/knife-search.1 +5 -5
- data/distro/common/man/man1/knife-show.1 +1 -3
- data/distro/common/man/man1/knife-ssh.1 +1 -5
- data/distro/common/man/man1/knife-status.1 +1 -1
- data/distro/common/man/man1/knife-tag.1 +1 -9
- data/distro/common/man/man1/knife-upload.1 +7 -9
- data/distro/common/man/man1/knife-user.1 +3 -17
- data/distro/common/man/man1/knife-xargs.1 +1 -3
- data/distro/common/man/man8/chef-client.8 +18 -18
- data/distro/common/man/man8/chef-solo.8 +12 -6
- data/lib/chef/client.rb +9 -5
- data/lib/chef/cookbook_uploader.rb +1 -1
- data/lib/chef/dsl/recipe.rb +119 -38
- data/lib/chef/exceptions.rb +4 -0
- data/lib/chef/policy_builder/expand_node_object.rb +11 -4
- data/lib/chef/policy_builder/policyfile.rb +7 -1
- data/lib/chef/provider/file.rb +1 -0
- data/lib/chef/resource_platform_map.rb +1 -1
- data/lib/chef/resource_reporter.rb +2 -2
- data/lib/chef/version.rb +1 -1
- data/spec/functional/knife/cookbook_delete_spec.rb +9 -9
- data/spec/functional/knife/ssh_spec.rb +1 -1
- data/spec/functional/resource/link_spec.rb +6 -6
- data/spec/functional/resource/registry_spec.rb +7 -7
- data/spec/functional/run_lock_spec.rb +1 -1
- data/spec/integration/knife/download_spec.rb +1 -1
- data/spec/integration/solo/solo_spec.rb +1 -1
- data/spec/spec_helper.rb +0 -1
- data/spec/stress/win32/file_spec.rb +6 -0
- data/spec/support/lib/chef/resource/zen_master.rb +1 -1
- data/spec/support/mock/platform.rb +1 -1
- data/spec/support/shared/functional/file_resource.rb +0 -2
- data/spec/support/shared/functional/securable_resource.rb +2 -2
- data/spec/support/shared/unit/api_error_inspector.rb +7 -7
- data/spec/support/shared/unit/provider/file.rb +47 -8
- data/spec/support/shared/unit/provider/useradd_based_user_provider.rb +23 -23
- data/spec/unit/api_client/registration_spec.rb +5 -5
- data/spec/unit/api_client_spec.rb +2 -2
- data/spec/unit/application/apply.rb +6 -6
- data/spec/unit/application/client_spec.rb +6 -6
- data/spec/unit/application/knife_spec.rb +5 -5
- data/spec/unit/application/solo_spec.rb +13 -13
- data/spec/unit/application_spec.rb +19 -19
- data/spec/unit/checksum/storage/filesystem_spec.rb +2 -2
- data/spec/unit/client_spec.rb +23 -23
- data/spec/unit/config_spec.rb +4 -4
- data/spec/unit/cookbook/metadata_spec.rb +22 -22
- data/spec/unit/cookbook/synchronizer_spec.rb +17 -17
- data/spec/unit/daemon_spec.rb +21 -22
- data/spec/unit/data_bag_item_spec.rb +8 -8
- data/spec/unit/data_bag_spec.rb +6 -6
- data/spec/unit/deprecation_spec.rb +1 -1
- data/spec/unit/dsl/data_query_spec.rb +1 -1
- data/spec/unit/environment_spec.rb +5 -5
- data/spec/unit/file_access_control_spec.rb +5 -5
- data/spec/unit/file_cache_spec.rb +1 -1
- data/spec/unit/file_content_management/deploy/mv_unix_spec.rb +1 -1
- data/spec/unit/file_content_management/deploy/mv_windows_spec.rb +12 -12
- data/spec/unit/formatters/error_inspectors/compile_error_inspector_spec.rb +4 -4
- data/spec/unit/formatters/error_inspectors/cookbook_resolve_error_inspector_spec.rb +4 -4
- data/spec/unit/formatters/error_inspectors/cookbook_sync_error_inspector_spec.rb +1 -1
- data/spec/unit/formatters/error_inspectors/resource_failure_inspector_spec.rb +6 -6
- data/spec/unit/formatters/error_inspectors/run_list_expansion_error_inspector_spec.rb +4 -4
- data/spec/unit/handler/json_file_spec.rb +1 -1
- data/spec/unit/handler_spec.rb +3 -3
- data/spec/unit/knife/bootstrap_spec.rb +17 -17
- data/spec/unit/knife/client_bulk_delete_spec.rb +4 -4
- data/spec/unit/knife/client_create_spec.rb +7 -7
- data/spec/unit/knife/client_reregister_spec.rb +2 -2
- data/spec/unit/knife/client_show_spec.rb +1 -1
- data/spec/unit/knife/config_file_selection_spec.rb +4 -4
- data/spec/unit/knife/configure_client_spec.rb +4 -4
- data/spec/unit/knife/configure_spec.rb +16 -16
- data/spec/unit/knife/cookbook_bulk_delete_spec.rb +10 -10
- data/spec/unit/knife/cookbook_create_spec.rb +5 -5
- data/spec/unit/knife/cookbook_delete_spec.rb +6 -6
- data/spec/unit/knife/cookbook_download_spec.rb +10 -10
- data/spec/unit/knife/cookbook_list_spec.rb +3 -3
- data/spec/unit/knife/cookbook_metadata_from_file_spec.rb +2 -2
- data/spec/unit/knife/cookbook_metadata_spec.rb +8 -8
- data/spec/unit/knife/cookbook_show_spec.rb +4 -4
- data/spec/unit/knife/cookbook_site_download_spec.rb +3 -3
- data/spec/unit/knife/cookbook_site_install_spec.rb +8 -8
- data/spec/unit/knife/cookbook_site_share_spec.rb +22 -22
- data/spec/unit/knife/cookbook_site_unshare_spec.rb +8 -8
- data/spec/unit/knife/cookbook_test_spec.rb +7 -7
- data/spec/unit/knife/cookbook_upload_spec.rb +20 -20
- data/spec/unit/knife/core/cookbook_scm_repo_spec.rb +6 -6
- data/spec/unit/knife/core/object_loader_spec.rb +1 -1
- data/spec/unit/knife/core/ui_spec.rb +19 -21
- data/spec/unit/knife/data_bag_create_spec.rb +4 -4
- data/spec/unit/knife/data_bag_edit_spec.rb +7 -7
- data/spec/unit/knife/data_bag_from_file_spec.rb +15 -15
- data/spec/unit/knife/data_bag_show_spec.rb +5 -5
- data/spec/unit/knife/environment_create_spec.rb +6 -6
- data/spec/unit/knife/environment_delete_spec.rb +6 -6
- data/spec/unit/knife/environment_edit_spec.rb +5 -5
- data/spec/unit/knife/environment_from_file_spec.rb +7 -7
- data/spec/unit/knife/environment_list_spec.rb +4 -4
- data/spec/unit/knife/environment_show_spec.rb +4 -4
- data/spec/unit/knife/index_rebuild_spec.rb +2 -2
- data/spec/unit/knife/knife_help.rb +11 -11
- data/spec/unit/knife/node_bulk_delete_spec.rb +4 -4
- data/spec/unit/knife/node_delete_spec.rb +5 -5
- data/spec/unit/knife/node_edit_spec.rb +2 -2
- data/spec/unit/knife/node_from_file_spec.rb +5 -5
- data/spec/unit/knife/node_list_spec.rb +3 -3
- data/spec/unit/knife/node_run_list_add_spec.rb +3 -3
- data/spec/unit/knife/node_run_list_remove_spec.rb +4 -4
- data/spec/unit/knife/node_run_list_set_spec.rb +5 -5
- data/spec/unit/knife/node_show_spec.rb +2 -2
- data/spec/unit/knife/role_bulk_delete_spec.rb +4 -4
- data/spec/unit/knife/role_create_spec.rb +5 -5
- data/spec/unit/knife/role_delete_spec.rb +5 -5
- data/spec/unit/knife/role_edit_spec.rb +5 -5
- data/spec/unit/knife/role_from_file_spec.rb +5 -5
- data/spec/unit/knife/role_list_spec.rb +2 -2
- data/spec/unit/knife/ssh_spec.rb +6 -6
- data/spec/unit/knife/status_spec.rb +4 -4
- data/spec/unit/knife/tag_create_spec.rb +3 -3
- data/spec/unit/knife/tag_delete_spec.rb +3 -3
- data/spec/unit/knife/tag_list_spec.rb +2 -2
- data/spec/unit/knife/user_create_spec.rb +7 -7
- data/spec/unit/knife/user_reregister_spec.rb +3 -3
- data/spec/unit/knife/user_show_spec.rb +1 -1
- data/spec/unit/knife_spec.rb +29 -29
- data/spec/unit/lwrp_spec.rb +2 -2
- data/spec/unit/mixin/checksum_spec.rb +2 -2
- data/spec/unit/mixin/command_spec.rb +1 -1
- data/spec/unit/mixin/enforce_ownership_and_permissions_spec.rb +4 -4
- data/spec/unit/mixin/params_validate_spec.rb +17 -17
- data/spec/unit/mixin/path_sanity_spec.rb +8 -8
- data/spec/unit/mixin/securable_spec.rb +87 -87
- data/spec/unit/mixin/shell_out_spec.rb +1 -1
- data/spec/unit/mixin/template_spec.rb +2 -2
- data/spec/unit/node/attribute_spec.rb +3 -3
- data/spec/unit/node_spec.rb +12 -12
- data/spec/unit/platform_spec.rb +1 -1
- data/spec/unit/policy_builder/expand_node_object_spec.rb +16 -0
- data/spec/unit/policy_builder/policyfile_spec.rb +4 -0
- data/spec/unit/provider/breakpoint_spec.rb +8 -8
- data/spec/unit/provider/cookbook_file/content_spec.rb +4 -4
- data/spec/unit/provider/cookbook_file_spec.rb +1 -1
- data/spec/unit/provider/cron/unix_spec.rb +11 -11
- data/spec/unit/provider/cron_spec.rb +40 -40
- data/spec/unit/provider/deploy/revision_spec.rb +11 -12
- data/spec/unit/provider/deploy/timestamped_spec.rb +3 -3
- data/spec/unit/provider/deploy_spec.rb +50 -50
- data/spec/unit/provider/directory_spec.rb +18 -18
- data/spec/unit/provider/env_spec.rb +15 -15
- data/spec/unit/provider/erl_call_spec.rb +1 -1
- data/spec/unit/provider/execute_spec.rb +5 -5
- data/spec/unit/provider/file/content_spec.rb +5 -5
- data/spec/unit/provider/file_spec.rb +1 -1
- data/spec/unit/provider/git_spec.rb +47 -47
- data/spec/unit/provider/group/dscl_spec.rb +16 -15
- data/spec/unit/provider/group/gpasswd_spec.rb +6 -5
- data/spec/unit/provider/group/groupadd_spec.rb +10 -10
- data/spec/unit/provider/group/groupmod_spec.rb +3 -3
- data/spec/unit/provider/group/pw_spec.rb +9 -8
- data/spec/unit/provider/group/usermod_spec.rb +13 -12
- data/spec/unit/provider/group/windows_spec.rb +9 -9
- data/spec/unit/provider/group_spec.rb +31 -31
- data/spec/unit/provider/http_request_spec.rb +3 -3
- data/spec/unit/provider/ifconfig/aix_spec.rb +7 -7
- data/spec/unit/provider/ifconfig/debian_spec.rb +3 -3
- data/spec/unit/provider/ifconfig/redhat_spec.rb +5 -5
- data/spec/unit/provider/ifconfig_spec.rb +13 -13
- data/spec/unit/provider/link_spec.rb +33 -33
- data/spec/unit/provider/mdadm_spec.rb +4 -4
- data/spec/unit/provider/mount/aix_spec.rb +5 -5
- data/spec/unit/provider/mount/mount_spec.rb +49 -50
- data/spec/unit/provider/mount/windows_spec.rb +18 -18
- data/spec/unit/provider/mount_spec.rb +12 -12
- data/spec/unit/provider/ohai_spec.rb +6 -6
- data/spec/unit/provider/package/aix_spec.rb +14 -14
- data/spec/unit/provider/package/apt_spec.rb +10 -10
- data/spec/unit/provider/package/dpkg_spec.rb +13 -13
- data/spec/unit/provider/package/easy_install_spec.rb +6 -6
- data/spec/unit/provider/package/freebsd_spec.rb +29 -29
- data/spec/unit/provider/package/ips_spec.rb +4 -4
- data/spec/unit/provider/package/macports_spec.rb +6 -6
- data/spec/unit/provider/package/pacman_spec.rb +17 -17
- data/spec/unit/provider/package/portage_spec.rb +18 -18
- data/spec/unit/provider/package/rpm_spec.rb +7 -7
- data/spec/unit/provider/package/rubygems_spec.rb +31 -31
- data/spec/unit/provider/package/smartos_spec.rb +4 -4
- data/spec/unit/provider/package/solaris_spec.rb +15 -15
- data/spec/unit/provider/package/yum_spec.rb +100 -100
- data/spec/unit/provider/package/zypper_spec.rb +10 -10
- data/spec/unit/provider/package_spec.rb +21 -21
- data/spec/unit/provider/registry_key_spec.rb +2 -2
- data/spec/unit/provider/remote_file/content_spec.rb +31 -31
- data/spec/unit/provider/remote_file/fetcher_spec.rb +8 -8
- data/spec/unit/provider/remote_file/ftp_spec.rb +10 -10
- data/spec/unit/provider/remote_file/http_spec.rb +4 -4
- data/spec/unit/provider/remote_file/local_file_spec.rb +2 -2
- data/spec/unit/provider/remote_file_spec.rb +1 -1
- data/spec/unit/provider/route_spec.rb +23 -23
- data/spec/unit/provider/script_spec.rb +5 -5
- data/spec/unit/provider/service/arch_service_spec.rb +41 -41
- data/spec/unit/provider/service/debian_service_spec.rb +23 -23
- data/spec/unit/provider/service/freebsd_service_spec.rb +33 -33
- data/spec/unit/provider/service/gentoo_service_spec.rb +16 -16
- data/spec/unit/provider/service/init_service_spec.rb +13 -13
- data/spec/unit/provider/service/insserv_service_spec.rb +4 -4
- data/spec/unit/provider/service/invokercd_service_spec.rb +12 -12
- data/spec/unit/provider/service/macosx_spec.rb +20 -20
- data/spec/unit/provider/service/redhat_spec.rb +15 -15
- data/spec/unit/provider/service/simple_service_spec.rb +9 -9
- data/spec/unit/provider/service/solaris_smf_service_spec.rb +13 -13
- data/spec/unit/provider/service/systemd_service_spec.rb +28 -28
- data/spec/unit/provider/service/upstart_service_spec.rb +41 -41
- data/spec/unit/provider/service/windows_spec.rb +37 -37
- data/spec/unit/provider/service_spec.rb +9 -9
- data/spec/unit/provider/subversion_spec.rb +36 -36
- data/spec/unit/provider/template/content_spec.rb +8 -8
- data/spec/unit/provider/template_spec.rb +1 -1
- data/spec/unit/provider/user/dscl_spec.rb +9 -9
- data/spec/unit/provider/user/pw_spec.rb +20 -20
- data/spec/unit/provider/user/solaris_spec.rb +5 -5
- data/spec/unit/provider/user/windows_spec.rb +8 -8
- data/spec/unit/provider/user_spec.rb +34 -34
- data/spec/unit/provider_spec.rb +3 -3
- data/spec/unit/recipe_spec.rb +79 -4
- data/spec/unit/registry_helper_spec.rb +2 -2
- data/spec/unit/resource/cron_spec.rb +2 -2
- data/spec/unit/resource/directory_spec.rb +5 -5
- data/spec/unit/resource/env_spec.rb +2 -2
- data/spec/unit/resource/erl_call_spec.rb +1 -1
- data/spec/unit/resource/file_spec.rb +8 -8
- data/spec/unit/resource/group_spec.rb +3 -3
- data/spec/unit/resource/link_spec.rb +8 -8
- data/spec/unit/resource/mdadm_spec.rb +3 -3
- data/spec/unit/resource/mount_spec.rb +3 -3
- data/spec/unit/resource/route_spec.rb +2 -2
- data/spec/unit/resource/user_spec.rb +2 -2
- data/spec/unit/resource/yum_package_spec.rb +2 -2
- data/spec/unit/resource_collection_spec.rb +1 -1
- data/spec/unit/resource_definition_spec.rb +2 -2
- data/spec/unit/resource_reporter_spec.rb +71 -16
- data/spec/unit/resource_spec.rb +3 -3
- data/spec/unit/rest/auth_credentials_spec.rb +2 -2
- data/spec/unit/rest_spec.rb +3 -40
- data/spec/unit/run_list/run_list_expansion_spec.rb +3 -3
- data/spec/unit/run_list_spec.rb +9 -9
- data/spec/unit/run_status_spec.rb +1 -1
- data/spec/unit/runner_spec.rb +8 -8
- data/spec/unit/scan_access_control_spec.rb +3 -3
- data/spec/unit/search/query_spec.rb +7 -7
- data/spec/unit/shell/model_wrapper_spec.rb +2 -2
- data/spec/unit/shell/shell_ext_spec.rb +15 -15
- data/spec/unit/shell/shell_session_spec.rb +9 -9
- data/spec/unit/shell_spec.rb +1 -2
- data/spec/unit/user_spec.rb +4 -4
- data/spec/unit/util/backup_spec.rb +1 -1
- data/spec/unit/util/selinux_spec.rb +7 -7
- metadata +106 -51
- data/distro/common/html/chef-client.8.html +0 -145
- data/distro/common/html/chef-expander.8.html +0 -164
- data/distro/common/html/chef-expanderctl.8.html +0 -146
- data/distro/common/html/chef-server-webui.8.html +0 -185
- data/distro/common/html/chef-server.8.html +0 -182
- data/distro/common/html/chef-shell.1.html +0 -286
- data/distro/common/html/chef-solo.8.html +0 -185
- data/distro/common/html/chef-solr.8.html +0 -165
- data/distro/common/html/knife-bootstrap.1.html +0 -241
- data/distro/common/html/knife-client.1.html +0 -219
- data/distro/common/html/knife-configure.1.html +0 -170
- data/distro/common/html/knife-cookbook-site.1.html +0 -241
- data/distro/common/html/knife-cookbook.1.html +0 -381
- data/distro/common/html/knife-data-bag.1.html +0 -235
- data/distro/common/html/knife-environment.1.html +0 -265
- data/distro/common/html/knife-exec.1.html +0 -134
- data/distro/common/html/knife-index.1.html +0 -125
- data/distro/common/html/knife-node.1.html +0 -250
- data/distro/common/html/knife-role.1.html +0 -200
- data/distro/common/html/knife-search.1.html +0 -288
- data/distro/common/html/knife-ssh.1.html +0 -156
- data/distro/common/html/knife-status.1.html +0 -128
- data/distro/common/html/knife-tag.1.html +0 -137
- data/distro/common/html/knife.1.html +0 -315
@@ -1,4 +1,4 @@
|
|
1
|
-
.TH "CHEF-SOLO" "8" "Chef 11.
|
1
|
+
.TH "CHEF-SOLO" "8" "Chef 11.10.0" "" "chef-solo"
|
2
2
|
.SH NAME
|
3
3
|
chef-solo \- The man page for the chef-solo command line tool.
|
4
4
|
.
|
@@ -74,7 +74,13 @@ The name of the environment.
|
|
74
74
|
Indicates that a chef\-client run will be contained in a secondary process with dedicated RAM. When the chef\-client run is complete the RAM will be returned to the master process. This option helps ensure that a chef\-client will use a steady amount of RAM over time because the master process will not run recipes. This option will also help prevent memory leaks (such as those that can be introduced by the code contained within a poorly designed cookbook). Use \fB\-\-no\-fork\fP to disable running the chef\-client in fork node. Default value: \fB\-\-fork\fP.
|
75
75
|
.TP
|
76
76
|
.B \fB\-F FORMAT\fP, \fB\-\-format FORMAT\fP
|
77
|
-
The output format: \fBdoc\fP (default) or \fBmin\fP.
|
77
|
+
The output format: \fBdoc\fP (default) or \fBmin\fP.
|
78
|
+
.sp
|
79
|
+
Use \fBdoc\fP to print the progress of the chef\-client run using full strings that display a summary of updates as they occur.
|
80
|
+
.sp
|
81
|
+
Use \fBmin\fP to print the progress of the chef\-client run using single characters. A summary of updates is printed at the end of the chef\-client run. A dot (\fB.\fP) is printed for events that do not have meaningful status information, such as loading a file or synchronizing a cookbook. For resources, a dot (\fB.\fP) is printed when the resource is up to date, an \fBS\fP is printed when the resource is skipped by \fBnot_if\fP or \fBonly_if\fP, and a \fBU\fP is printed when the resource is updated.
|
82
|
+
.sp
|
83
|
+
Other formatting options are available when those formatters are configured in the client.rb file using the \fBadd_formatter\fP option.
|
78
84
|
.TP
|
79
85
|
.B \fB\-\-force\-formatter\fP
|
80
86
|
Indicates that formatter output will be used instead of logger output.
|
@@ -92,16 +98,16 @@ Shows help for the command.
|
|
92
98
|
The frequency (in seconds) at which the chef\-client runs.
|
93
99
|
.TP
|
94
100
|
.B \fB\-j PATH\fP, \fB\-\-json\-attributes PATH\fP
|
95
|
-
The path to a file that contains JSON data. Use this option to override attributes
|
101
|
+
The path to a file that contains JSON data. Use this option to override \fBnormal\fP attributes set elsewhere.
|
96
102
|
.TP
|
97
103
|
.B \fB\-l LEVEL\fP, \fB\-\-log_level LEVEL\fP
|
98
|
-
The level of logging that will be stored in a log file
|
104
|
+
The level of logging that will be stored in a log file.
|
99
105
|
.TP
|
100
106
|
.B \fB\-L LOGLOCATION\fP, \fB\-\-logfile c\fP
|
101
107
|
The location in which log file output files will be saved. If this location is set to something other than \fBSTDOUT\fP, standard output logging will still be performed (otherwise there would be no output other than to a file). This is recommended when starting any executable as a daemon.
|
102
108
|
.TP
|
103
109
|
.B \fB\-\-[no\-]color\fP
|
104
|
-
Indicates
|
110
|
+
Indicates whether colored output will be used. Default setting: \fB\-\-color\fP.
|
105
111
|
.TP
|
106
112
|
.B \fB\-N NODE_NAME\fP, \fB\-\-node\-name NODE_NAME\fP
|
107
113
|
The name of the node.
|
@@ -156,6 +162,6 @@ $ chef\-solo \-c ~/solo.rb \-j http://www.example.com/node.json \-r http://www.e
|
|
156
162
|
.sp
|
157
163
|
where \fB\-r\fP corresponds to \fBrecipe_url\fP and \fB\-j\fP corresponds to \fBjson_attribs\fP, both of which are configuration options in solo.rb.
|
158
164
|
.SH AUTHOR
|
159
|
-
|
165
|
+
Chef
|
160
166
|
.\" Generated by docutils manpage writer.
|
161
167
|
.
|
data/lib/chef/client.rb
CHANGED
@@ -255,18 +255,22 @@ class Chef
|
|
255
255
|
run_context
|
256
256
|
end
|
257
257
|
|
258
|
+
def sync_cookbooks
|
259
|
+
policy_builder.sync_cookbooks
|
260
|
+
end
|
261
|
+
|
258
262
|
def policy_builder
|
259
263
|
@policy_builder ||= Chef::PolicyBuilder.strategy.new(node_name, ohai.data, json_attribs, @override_runlist, events)
|
260
264
|
end
|
261
265
|
|
262
266
|
|
263
267
|
def save_updated_node
|
264
|
-
|
268
|
+
if Chef::Config[:solo]
|
269
|
+
# nothing to do
|
270
|
+
elsif policy_builder.temporary_policy?
|
271
|
+
Chef::Log.warn("Skipping final node save because override_runlist was given")
|
272
|
+
else
|
265
273
|
Chef::Log.debug("Saving the current state of node #{node_name}")
|
266
|
-
if(@original_runlist)
|
267
|
-
@node.run_list(*@original_runlist)
|
268
|
-
@node.automatic_attrs[:runlist_override_history] = {Time.now.to_i => @override_runlist.inspect}
|
269
|
-
end
|
270
274
|
@node.save
|
271
275
|
end
|
272
276
|
end
|
data/lib/chef/dsl/recipe.rb
CHANGED
@@ -31,50 +31,131 @@ class Chef
|
|
31
31
|
|
32
32
|
include Chef::Mixin::ConvertToClassName
|
33
33
|
|
34
|
+
# Default +cookbook_name+ implementation, always returns "none". This
|
35
|
+
# should be overriden in including classes whenever a meaningful value
|
36
|
+
# can be provided.
|
37
|
+
def cookbook_name
|
38
|
+
"none"
|
39
|
+
end
|
40
|
+
|
41
|
+
# Default +recipe_name+ implementation, always returns "none". This
|
42
|
+
# should be overridden in including classes whenever a meaningful value
|
43
|
+
# can be provided.
|
44
|
+
def recipe_name
|
45
|
+
"none"
|
46
|
+
end
|
47
|
+
|
34
48
|
def method_missing(method_symbol, *args, &block)
|
35
49
|
# If we have a definition that matches, we want to use that instead. This should
|
36
50
|
# let you do some really crazy over-riding of "native" types, if you really want
|
37
51
|
# to.
|
38
|
-
if
|
39
|
-
|
40
|
-
|
41
|
-
new_def.params = new_def.params.dup
|
42
|
-
new_def.node = run_context.node
|
43
|
-
# This sets up the parameter overrides
|
44
|
-
new_def.instance_eval(&block) if block
|
45
|
-
new_recipe = Chef::Recipe.new(cookbook_name, @recipe_name, run_context)
|
46
|
-
new_recipe.params = new_def.params
|
47
|
-
new_recipe.params[:name] = args[0]
|
48
|
-
new_recipe.instance_eval(&new_def.recipe)
|
49
|
-
else
|
52
|
+
if has_resource_definition?(method_symbol)
|
53
|
+
evaluate_resource_definition(method_symbol, *args, &block)
|
54
|
+
elsif have_resource_class_for?(method_symbol)
|
50
55
|
# Otherwise, we're rocking the regular resource call route.
|
56
|
+
declare_resource(method_symbol, args[0], caller[0], &block)
|
57
|
+
else
|
58
|
+
super
|
59
|
+
end
|
60
|
+
rescue NoMethodError
|
61
|
+
raise NoMethodError, "No resource or method named `#{method_symbol}' for #{describe_self_for_error}"
|
62
|
+
rescue NameError
|
63
|
+
raise NameError, "No resource, method, or local variable named `#{method_symbol}' for #{describe_self_for_error}"
|
64
|
+
end
|
65
|
+
|
66
|
+
def has_resource_definition?(name)
|
67
|
+
yes_or_no = run_context.definitions.has_key?(name)
|
68
|
+
|
69
|
+
yes_or_no
|
70
|
+
end
|
71
|
+
|
72
|
+
# Processes the arguments and block as a resource definition.
|
73
|
+
def evaluate_resource_definition(definition_name, *args, &block)
|
74
|
+
|
75
|
+
# This dupes the high level object, but we still need to dup the params
|
76
|
+
new_def = run_context.definitions[definition_name].dup
|
77
|
+
|
78
|
+
new_def.params = new_def.params.dup
|
79
|
+
new_def.node = run_context.node
|
80
|
+
# This sets up the parameter overrides
|
81
|
+
new_def.instance_eval(&block) if block
|
82
|
+
|
83
|
+
|
84
|
+
new_recipe = Chef::Recipe.new(cookbook_name, recipe_name, run_context)
|
85
|
+
new_recipe.params = new_def.params
|
86
|
+
new_recipe.params[:name] = args[0]
|
87
|
+
new_recipe.instance_eval(&new_def.recipe)
|
88
|
+
new_recipe
|
89
|
+
end
|
90
|
+
|
91
|
+
# Instantiates a resource (via #build_resource), then adds it to the
|
92
|
+
# resource collection. Note that resource classes are looked up directly,
|
93
|
+
# so this will create the resource you intended even if the method name
|
94
|
+
# corresponding to that resource has been overridden.
|
95
|
+
def declare_resource(type, name, created_at=nil, &resource_attrs_block)
|
96
|
+
created_at ||= caller[0]
|
51
97
|
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
98
|
+
resource = build_resource(type, name, created_at, &resource_attrs_block)
|
99
|
+
|
100
|
+
run_context.resource_collection.insert(resource)
|
101
|
+
resource
|
102
|
+
end
|
103
|
+
|
104
|
+
# Instantiate a resource of the given +type+ with the given +name+ and
|
105
|
+
# attributes as given in the +resource_attrs_block+.
|
106
|
+
#
|
107
|
+
# The resource is NOT added to the resource collection.
|
108
|
+
def build_resource(type, name, created_at=nil, &resource_attrs_block)
|
109
|
+
created_at ||= caller[0]
|
110
|
+
|
111
|
+
# Checks the new platform => short_name => resource mapping initially
|
112
|
+
# then fall back to the older approach (Chef::Resource.const_get) for
|
113
|
+
# backward compatibility
|
114
|
+
resource_class = resource_class_for(type)
|
115
|
+
|
116
|
+
raise ArgumentError, "You must supply a name when declaring a #{type} resource" if name.nil?
|
117
|
+
|
118
|
+
resource = resource_class.new(name, run_context)
|
119
|
+
resource.source_line = created_at
|
120
|
+
resource.cookbook_name = cookbook_name
|
121
|
+
resource.recipe_name = recipe_name
|
122
|
+
# If we have a resource like this one, we want to steal its state
|
123
|
+
# This behavior is very counter-intuitive and should be removed.
|
124
|
+
# See CHEF-3694, https://tickets.opscode.com/browse/CHEF-3694
|
125
|
+
resource.load_prior_resource
|
126
|
+
# Determine whether this resource is being created in the context of an enclosing Provider
|
127
|
+
resource.enclosing_provider = self.is_a?(Chef::Provider) ? self : nil
|
128
|
+
|
129
|
+
# XXX: This is very crufty, but it's required for resource definitions
|
130
|
+
# to work properly :(
|
131
|
+
resource.params = @params
|
132
|
+
|
133
|
+
# Evaluate resource attribute DSL
|
134
|
+
resource.instance_eval(&resource_attrs_block) if block_given?
|
135
|
+
|
136
|
+
# Run optional resource hook
|
137
|
+
resource.after_created
|
138
|
+
|
139
|
+
resource
|
140
|
+
end
|
141
|
+
|
142
|
+
def resource_class_for(snake_case_name)
|
143
|
+
Chef::Resource.resource_for_node(snake_case_name, run_context.node)
|
144
|
+
end
|
145
|
+
|
146
|
+
def have_resource_class_for?(snake_case_name)
|
147
|
+
not resource_class_for(snake_case_name).nil?
|
148
|
+
rescue NameError
|
149
|
+
false
|
150
|
+
end
|
151
|
+
|
152
|
+
def describe_self_for_error
|
153
|
+
if respond_to?(:name)
|
154
|
+
%Q[`#{self.class.name} "#{name}"']
|
155
|
+
elsif respond_to?(:recipe_name)
|
156
|
+
%Q[`#{self.class.name} "#{recipe_name}"']
|
157
|
+
else
|
158
|
+
to_s
|
78
159
|
end
|
79
160
|
end
|
80
161
|
|
data/lib/chef/exceptions.rb
CHANGED
@@ -80,6 +80,10 @@ class Chef
|
|
80
80
|
class ConflictingMembersInGroup < ArgumentError; end
|
81
81
|
class InvalidResourceReference < RuntimeError; end
|
82
82
|
class ResourceNotFound < RuntimeError; end
|
83
|
+
|
84
|
+
# Can't find a Resource of this type that is valid on this platform.
|
85
|
+
class NoSuchResourceType < NameError; end
|
86
|
+
|
83
87
|
class InvalidResourceSpecification < ArgumentError; end
|
84
88
|
class SolrConnectionError < RuntimeError; end
|
85
89
|
class IllegalChecksumRevert < RuntimeError; end
|
@@ -155,10 +155,6 @@ class Chef
|
|
155
155
|
raise
|
156
156
|
end
|
157
157
|
|
158
|
-
########################################
|
159
|
-
# Internal public API
|
160
|
-
########################################
|
161
|
-
|
162
158
|
# Sync_cookbooks eagerly loads all files except files and
|
163
159
|
# templates. It returns the cookbook_hash -- the return result
|
164
160
|
# from /environments/#{node.chef_environment}/cookbook_versions,
|
@@ -190,6 +186,17 @@ class Chef
|
|
190
186
|
cookbook_hash
|
191
187
|
end
|
192
188
|
|
189
|
+
# Indicates whether the policy is temporary, which means an
|
190
|
+
# override_runlist was provided. Chef::Client uses this to decide whether
|
191
|
+
# to do the final node save at the end of the run or not.
|
192
|
+
def temporary_policy?
|
193
|
+
!!@original_runlist
|
194
|
+
end
|
195
|
+
|
196
|
+
########################################
|
197
|
+
# Internal public API
|
198
|
+
########################################
|
199
|
+
|
193
200
|
def setup_run_list_override
|
194
201
|
runlist_override_sanity_check!
|
195
202
|
unless(override_runlist.empty?)
|
@@ -174,7 +174,6 @@ class Chef
|
|
174
174
|
run_list_expansion_ish
|
175
175
|
end
|
176
176
|
|
177
|
-
## Internal Public API ##
|
178
177
|
|
179
178
|
def sync_cookbooks
|
180
179
|
Chef::Log.debug("Synchronizing cookbooks")
|
@@ -187,6 +186,13 @@ class Chef
|
|
187
186
|
cookbooks_to_sync
|
188
187
|
end
|
189
188
|
|
189
|
+
# Whether or not this is a temporary policy. Since PolicyBuilder doesn't
|
190
|
+
# support override_runlist, this is always false.
|
191
|
+
def temporary_policy?
|
192
|
+
false
|
193
|
+
end
|
194
|
+
|
195
|
+
## Internal Public API ##
|
190
196
|
|
191
197
|
def run_list_with_versions_for_display
|
192
198
|
run_list.map do |recipe_spec|
|
data/lib/chef/provider/file.rb
CHANGED
@@ -123,7 +123,7 @@ class Chef
|
|
123
123
|
resource_klass = platform_resource(short_name, platform, version) ||
|
124
124
|
resource_matching_short_name(short_name)
|
125
125
|
|
126
|
-
raise
|
126
|
+
raise Exceptions::NoSuchResourceType, "Cannot find a resource for #{short_name} on #{platform} version #{version}" if resource_klass.nil?
|
127
127
|
|
128
128
|
resource_klass
|
129
129
|
end
|
@@ -50,8 +50,8 @@ class Chef
|
|
50
50
|
def for_json
|
51
51
|
as_hash = {}
|
52
52
|
as_hash["type"] = new_resource.class.dsl_name
|
53
|
-
as_hash["name"] = new_resource.name
|
54
|
-
as_hash["id"] = new_resource.identity
|
53
|
+
as_hash["name"] = new_resource.name.to_s
|
54
|
+
as_hash["id"] = new_resource.identity.to_s
|
55
55
|
as_hash["after"] = state(new_resource)
|
56
56
|
as_hash["before"] = current_resource ? state(current_resource) : {}
|
57
57
|
as_hash["duration"] = (elapsed_time * 1000).to_i.to_s
|
data/lib/chef/version.rb
CHANGED
@@ -51,7 +51,7 @@ describe Chef::Knife::CookbookDelete do
|
|
51
51
|
end
|
52
52
|
|
53
53
|
it "logs an error and exits" do
|
54
|
-
@knife.ui.stub
|
54
|
+
@knife.ui.stub(:stderr).and_return(@log_output)
|
55
55
|
lambda {@knife.run}.should raise_error(SystemExit)
|
56
56
|
@log_output.string.should match(/Cannot find a cookbook named no-such-cookbook to delete/)
|
57
57
|
end
|
@@ -67,8 +67,8 @@ describe Chef::Knife::CookbookDelete do
|
|
67
67
|
|
68
68
|
it "asks for confirmation, then deletes the cookbook" do
|
69
69
|
stdin, stdout = StringIO.new("y\n"), StringIO.new
|
70
|
-
@knife.ui.stub
|
71
|
-
@knife.ui.stub
|
70
|
+
@knife.ui.stub(:stdin).and_return(stdin)
|
71
|
+
@knife.ui.stub(:stdout).and_return(stdout)
|
72
72
|
|
73
73
|
cb100_deleted = false
|
74
74
|
@api.delete("/cookbooks/obsolete-cookbook/1.0.0", 200) { cb100_deleted = true; "[\"true\"]" }
|
@@ -83,8 +83,8 @@ describe Chef::Knife::CookbookDelete do
|
|
83
83
|
@knife.config[:purge] = true
|
84
84
|
|
85
85
|
stdin, stdout = StringIO.new("y\ny\n"), StringIO.new
|
86
|
-
@knife.ui.stub
|
87
|
-
@knife.ui.stub
|
86
|
+
@knife.ui.stub(:stdin).and_return(stdin)
|
87
|
+
@knife.ui.stub(:stdout).and_return(stdout)
|
88
88
|
|
89
89
|
cb100_deleted = false
|
90
90
|
@api.delete("/cookbooks/obsolete-cookbook/1.0.0?purge=true", 200) { cb100_deleted = true; "[\"true\"]" }
|
@@ -126,8 +126,8 @@ describe Chef::Knife::CookbookDelete do
|
|
126
126
|
cb100_deleted = cb110_deleted = cb120_deleted = nil
|
127
127
|
@api.delete("/cookbooks/obsolete-cookbook/1.0.0", 200) { cb100_deleted = true; "[\"true\"]" }
|
128
128
|
stdin, stdout = StringIO.new, StringIO.new
|
129
|
-
@knife.ui.stub
|
130
|
-
@knife.ui.stub
|
129
|
+
@knife.ui.stub(:stdin).and_return(stdin)
|
130
|
+
@knife.ui.stub(:stdout).and_return(stdout)
|
131
131
|
stdin << "1\n"
|
132
132
|
stdin.rewind
|
133
133
|
@knife.run
|
@@ -142,8 +142,8 @@ describe Chef::Knife::CookbookDelete do
|
|
142
142
|
@api.delete("/cookbooks/obsolete-cookbook/1.2.0", 200) { cb120_deleted = true; "[\"true\"]" }
|
143
143
|
|
144
144
|
stdin, stdout = StringIO.new("4\n"), StringIO.new
|
145
|
-
@knife.ui.stub
|
146
|
-
@knife.ui.stub
|
145
|
+
@knife.ui.stub(:stdin).and_return(stdin)
|
146
|
+
@knife.ui.stub(:stdout).and_return(stdout)
|
147
147
|
|
148
148
|
@knife.run
|
149
149
|
|
@@ -252,7 +252,7 @@ describe Chef::Knife::Ssh do
|
|
252
252
|
# if available, but #merge_configs (which is called by #configure_chef) is
|
253
253
|
# necessary to have default options merged in.
|
254
254
|
@knife.merge_configs
|
255
|
-
@knife.stub
|
255
|
+
@knife.stub(:ssh_command).and_return { 0 }
|
256
256
|
@api = TinyServer::API.instance
|
257
257
|
@api.clear
|
258
258
|
|
@@ -132,7 +132,7 @@ describe Chef::Resource::Link do
|
|
132
132
|
describe 'the :delete action' do
|
133
133
|
before(:each) do
|
134
134
|
@info = []
|
135
|
-
Chef::Log.stub
|
135
|
+
Chef::Log.stub(:info) { |msg| @info << msg }
|
136
136
|
resource.run_action(:delete)
|
137
137
|
end
|
138
138
|
|
@@ -153,7 +153,7 @@ describe Chef::Resource::Link do
|
|
153
153
|
describe 'the :delete action' do
|
154
154
|
before(:each) do
|
155
155
|
@info = []
|
156
|
-
Chef::Log.stub
|
156
|
+
Chef::Log.stub(:info) { |msg| @info << msg }
|
157
157
|
resource.run_action(:delete)
|
158
158
|
end
|
159
159
|
|
@@ -174,7 +174,7 @@ describe Chef::Resource::Link do
|
|
174
174
|
describe 'the :create action' do
|
175
175
|
before(:each) do
|
176
176
|
@info = []
|
177
|
-
Chef::Log.stub
|
177
|
+
Chef::Log.stub(:info) { |msg| @info << msg }
|
178
178
|
resource.run_action(:create)
|
179
179
|
end
|
180
180
|
|
@@ -195,7 +195,7 @@ describe Chef::Resource::Link do
|
|
195
195
|
describe 'the :create action' do
|
196
196
|
before(:each) do
|
197
197
|
@info = []
|
198
|
-
Chef::Log.stub
|
198
|
+
Chef::Log.stub(:info) { |msg| @info << msg }
|
199
199
|
resource.run_action(:create)
|
200
200
|
end
|
201
201
|
|
@@ -216,7 +216,7 @@ describe Chef::Resource::Link do
|
|
216
216
|
describe 'the :create action' do
|
217
217
|
before(:each) do
|
218
218
|
@info = []
|
219
|
-
Chef::Log.stub
|
219
|
+
Chef::Log.stub(:info) { |msg| @info << msg }
|
220
220
|
resource.run_action(:create)
|
221
221
|
end
|
222
222
|
it 'preserves the hard link' do
|
@@ -241,7 +241,7 @@ describe Chef::Resource::Link do
|
|
241
241
|
describe 'the :create action' do
|
242
242
|
before(:each) do
|
243
243
|
@info = []
|
244
|
-
Chef::Log.stub
|
244
|
+
Chef::Log.stub(:info) { |msg| @info << msg }
|
245
245
|
resource.run_action(:create)
|
246
246
|
end
|
247
247
|
it 'links to the target file' do
|