chef 12.0.0.alpha.2 → 12.0.0.rc.0
Sign up to get free protection for your applications and to get access to all the features.
- data/CONTRIBUTING.md +9 -0
- data/README.md +1 -1
- data/Rakefile +12 -0
- data/bin/chef-service-manager +1 -1
- data/bin/chef-windows-service +35 -0
- data/distro/common/html/_sources/ctl_chef_server.txt +307 -10
- data/distro/common/html/ctl_chef_client.html +3 -7
- data/distro/common/html/ctl_chef_server.html +609 -41
- data/distro/common/html/ctl_chef_shell.html +2 -2
- data/distro/common/html/ctl_chef_solo.html +1 -1
- data/distro/common/html/index.html +13 -13
- data/distro/common/html/knife.html +10 -10
- data/distro/common/html/knife_bootstrap.html +8 -8
- data/distro/common/html/knife_client.html +12 -12
- data/distro/common/html/knife_common_options.html +7 -7
- data/distro/common/html/knife_configure.html +3 -3
- data/distro/common/html/knife_cookbook.html +19 -19
- data/distro/common/html/knife_cookbook_site.html +28 -28
- data/distro/common/html/knife_data_bag.html +28 -13
- data/distro/common/html/knife_delete.html +2 -2
- data/distro/common/html/knife_deps.html +3 -3
- data/distro/common/html/knife_diff.html +4 -4
- data/distro/common/html/knife_download.html +3 -3
- data/distro/common/html/knife_edit.html +2 -2
- data/distro/common/html/knife_environment.html +14 -14
- data/distro/common/html/knife_exec.html +11 -11
- data/distro/common/html/knife_index_rebuild.html +2 -2
- data/distro/common/html/knife_list.html +3 -3
- data/distro/common/html/knife_node.html +23 -23
- data/distro/common/html/knife_raw.html +4 -4
- data/distro/common/html/knife_recipe_list.html +3 -3
- data/distro/common/html/knife_role.html +11 -11
- data/distro/common/html/knife_search.html +4 -4
- data/distro/common/html/knife_serve.html +3 -3
- data/distro/common/html/knife_show.html +3 -3
- data/distro/common/html/knife_ssh.html +7 -7
- data/distro/common/html/knife_ssl_check.html +7 -7
- data/distro/common/html/knife_ssl_fetch.html +9 -9
- data/distro/common/html/knife_status.html +3 -3
- data/distro/common/html/knife_tag.html +9 -9
- data/distro/common/html/knife_upload.html +3 -3
- data/distro/common/html/knife_user.html +9 -9
- data/distro/common/html/knife_using.html +11 -11
- data/distro/common/html/knife_xargs.html +14 -5
- data/distro/common/html/search.html +2 -2
- data/distro/common/html/searchindex.js +1 -1
- data/distro/common/man/man1/chef-shell.1 +2 -2
- data/distro/common/man/man1/knife-bootstrap.1 +7 -7
- data/distro/common/man/man1/knife-client.1 +10 -10
- data/distro/common/man/man1/knife-configure.1 +5 -5
- data/distro/common/man/man1/knife-cookbook-site.1 +24 -24
- data/distro/common/man/man1/knife-cookbook.1 +12 -12
- data/distro/common/man/man1/knife-data-bag.1 +34 -10
- data/distro/common/man/man1/knife-delete.1 +5 -5
- data/distro/common/man/man1/knife-deps.1 +5 -5
- data/distro/common/man/man1/knife-diff.1 +7 -7
- data/distro/common/man/man1/knife-download.1 +5 -5
- data/distro/common/man/man1/knife-edit.1 +5 -5
- data/distro/common/man/man1/knife-environment.1 +11 -11
- data/distro/common/man/man1/knife-exec.1 +11 -11
- data/distro/common/man/man1/knife-index-rebuild.1 +1 -1
- data/distro/common/man/man1/knife-list.1 +5 -5
- data/distro/common/man/man1/knife-node.1 +16 -16
- data/distro/common/man/man1/knife-raw.1 +6 -6
- data/distro/common/man/man1/knife-recipe-list.1 +1 -1
- data/distro/common/man/man1/knife-role.1 +7 -7
- data/distro/common/man/man1/knife-search.1 +6 -6
- data/distro/common/man/man1/knife-serve.1 +6 -6
- data/distro/common/man/man1/knife-show.1 +5 -5
- data/distro/common/man/man1/knife-ssh.1 +9 -9
- data/distro/common/man/man1/knife-ssl-check.1 +7 -7
- data/distro/common/man/man1/knife-ssl-fetch.1 +9 -9
- data/distro/common/man/man1/knife-status.1 +5 -5
- data/distro/common/man/man1/knife-tag.1 +8 -8
- data/distro/common/man/man1/knife-upload.1 +5 -5
- data/distro/common/man/man1/knife-user.1 +8 -8
- data/distro/common/man/man1/knife-xargs.1 +36 -10
- data/distro/common/man/man1/knife.1 +14 -14
- data/distro/common/man/man8/chef-client.8 +3 -10
- data/distro/common/man/man8/chef-solo.8 +1 -1
- data/lib/chef/application.rb +313 -241
- data/lib/chef/application/apply.rb +10 -8
- data/lib/chef/application/client.rb +58 -33
- data/lib/chef/application/solo.rb +33 -12
- data/lib/chef/chef_fs/chef_fs_data_store.rb +1 -1
- data/lib/chef/chef_fs/command_line.rb +1 -1
- data/lib/chef/chef_fs/file_system/organization_invites_entry.rb +2 -1
- data/lib/chef/chef_fs/file_system/organization_members_entry.rb +2 -1
- data/lib/chef/chef_fs/file_system/rest_list_entry.rb +2 -1
- data/lib/chef/client.rb +18 -48
- data/lib/chef/config.rb +43 -11
- data/lib/chef/cookbook/cookbook_version_loader.rb +14 -7
- data/lib/chef/cookbook/metadata.rb +81 -38
- data/lib/chef/cookbook/syntax_check.rb +18 -52
- data/lib/chef/cookbook_loader.rb +1 -1
- data/lib/chef/cookbook_version.rb +58 -39
- data/lib/chef/data_bag.rb +2 -2
- data/lib/chef/deprecation/provider/file.rb +2 -1
- data/lib/chef/dsl/data_query.rb +2 -29
- data/lib/chef/dsl/recipe.rb +8 -22
- data/lib/chef/encrypted_data_bag_item/assertions.rb +1 -1
- data/lib/chef/encrypted_data_bag_item/check_encrypted.rb +56 -0
- data/lib/chef/encrypted_data_bag_item/encrypted_data_bag_item_assertions.rb +1 -1
- data/lib/chef/event_loggers/base.rb +62 -0
- data/lib/chef/event_loggers/windows_eventlog.rb +104 -0
- data/lib/chef/exceptions.rb +18 -1
- data/lib/chef/file_cache.rb +3 -2
- data/lib/chef/guard_interpreter/resource_guard_interpreter.rb +15 -6
- data/lib/chef/http.rb +20 -13
- data/lib/chef/http/ssl_policies.rb +2 -1
- data/lib/chef/json_compat.rb +9 -3
- data/lib/chef/knife.rb +2 -1
- data/lib/chef/knife/bootstrap.rb +12 -18
- data/lib/chef/knife/bootstrap/archlinux-gems.erb +2 -2
- data/lib/chef/knife/bootstrap/chef-aix.erb +2 -2
- data/lib/chef/knife/bootstrap/chef-full.erb +2 -2
- data/lib/chef/knife/cookbook_create.rb +1 -1
- data/lib/chef/knife/cookbook_site_share.rb +43 -8
- data/lib/chef/knife/core/bootstrap_context.rb +6 -11
- data/lib/chef/knife/core/object_loader.rb +5 -5
- data/lib/chef/knife/core/status_presenter.rb +156 -0
- data/lib/chef/knife/core/subcommand_loader.rb +6 -5
- data/lib/chef/knife/core/ui.rb +4 -4
- data/lib/chef/knife/data_bag_create.rb +7 -32
- data/lib/chef/knife/data_bag_edit.rb +24 -43
- data/lib/chef/knife/data_bag_from_file.rb +6 -31
- data/lib/chef/knife/data_bag_secret_options.rb +142 -0
- data/lib/chef/knife/data_bag_show.rb +19 -33
- data/lib/chef/knife/node_from_file.rb +9 -8
- data/lib/chef/knife/ssh.rb +0 -7
- data/lib/chef/knife/ssl_check.rb +70 -6
- data/lib/chef/knife/status.rb +11 -58
- data/lib/chef/mixin/command/unix.rb +2 -2
- data/lib/chef/mixin/convert_to_class_name.rb +54 -0
- data/lib/chef/mixin/descendants_tracker.rb +82 -0
- data/lib/chef/mixin/homebrew_user.rb +68 -0
- data/lib/chef/mixin/shell_out.rb +0 -4
- data/lib/chef/mixin/windows_architecture_helper.rb +16 -0
- data/lib/chef/mixin/windows_env_helper.rb +56 -0
- data/lib/chef/node.rb +2 -2
- data/lib/chef/node_map.rb +146 -0
- data/lib/chef/platform/provider_mapping.rb +11 -39
- data/lib/chef/platform/provider_priority_map.rb +80 -0
- data/lib/chef/platform/query_helpers.rb +5 -1
- data/lib/chef/platform/service_helpers.rb +113 -0
- data/lib/chef/provider.rb +24 -0
- data/lib/chef/provider/breakpoint.rb +2 -0
- data/lib/chef/provider/cookbook_file.rb +2 -0
- data/lib/chef/provider/cron.rb +1 -1
- data/lib/chef/provider/cron/unix.rb +13 -9
- data/lib/chef/provider/deploy.rb +3 -2
- data/lib/chef/provider/deploy/revision.rb +4 -2
- data/lib/chef/provider/deploy/timestamped.rb +2 -0
- data/lib/chef/provider/directory.rb +2 -0
- data/lib/chef/provider/dsc_script.rb +179 -0
- data/lib/chef/provider/env.rb +25 -10
- data/lib/chef/provider/env/windows.rb +9 -16
- data/lib/chef/provider/erl_call.rb +2 -0
- data/lib/chef/provider/execute.rb +5 -2
- data/lib/chef/provider/file.rb +2 -0
- data/lib/chef/provider/git.rb +51 -23
- data/lib/chef/provider/group/dscl.rb +2 -2
- data/lib/chef/provider/group/pw.rb +9 -13
- data/lib/chef/provider/http_request.rb +2 -0
- data/lib/chef/provider/link.rb +3 -0
- data/lib/chef/provider/log.rb +2 -0
- data/lib/chef/provider/lwrp_base.rb +11 -9
- data/lib/chef/provider/mount/mount.rb +1 -1
- data/lib/chef/provider/package/aix.rb +2 -0
- data/lib/chef/provider/package/apt.rb +2 -0
- data/lib/chef/provider/package/dpkg.rb +2 -0
- data/lib/chef/provider/package/easy_install.rb +2 -0
- data/lib/chef/provider/package/freebsd/pkg.rb +2 -1
- data/lib/chef/provider/package/freebsd/pkgng.rb +1 -1
- data/lib/chef/provider/package/freebsd/port.rb +1 -9
- data/lib/chef/provider/package/homebrew.rb +127 -0
- data/lib/chef/provider/package/ips.rb +2 -0
- data/lib/chef/provider/package/macports.rb +3 -0
- data/lib/chef/provider/package/pacman.rb +5 -4
- data/lib/chef/provider/package/paludis.rb +4 -2
- data/lib/chef/provider/package/portage.rb +4 -1
- data/lib/chef/provider/package/rpm.rb +2 -0
- data/lib/chef/provider/package/rubygems.rb +4 -0
- data/lib/chef/provider/package/smartos.rb +2 -0
- data/lib/chef/provider/package/solaris.rb +2 -0
- data/lib/chef/provider/package/windows.rb +5 -2
- data/lib/chef/provider/package/yum.rb +2 -0
- data/lib/chef/provider/powershell_script.rb +3 -1
- data/lib/chef/provider/remote_directory.rb +25 -10
- data/lib/chef/provider/route.rb +2 -0
- data/lib/chef/provider/ruby_block.rb +2 -0
- data/lib/chef/provider/script.rb +6 -0
- data/lib/chef/provider/service/aix.rb +128 -0
- data/lib/chef/provider/service/aixinit.rb +117 -0
- data/lib/chef/provider/service/arch.rb +6 -0
- data/lib/chef/provider/service/debian.rb +35 -29
- data/lib/chef/provider/service/freebsd.rb +7 -1
- data/lib/chef/provider/service/gentoo.rb +5 -1
- data/lib/chef/provider/service/init.rb +2 -0
- data/lib/chef/provider/service/insserv.rb +15 -8
- data/lib/chef/provider/service/invokercd.rb +6 -0
- data/lib/chef/provider/service/macosx.rb +4 -1
- data/lib/chef/provider/service/redhat.rb +9 -3
- data/lib/chef/provider/service/simple.rb +2 -0
- data/lib/chef/provider/service/solaris.rb +2 -0
- data/lib/chef/provider/service/systemd.rb +7 -0
- data/lib/chef/provider/service/upstart.rb +7 -0
- data/lib/chef/provider/service/windows.rb +5 -0
- data/lib/chef/provider/subversion.rb +2 -0
- data/lib/chef/provider/template.rb +1 -0
- data/lib/chef/provider/user/dscl.rb +3 -2
- data/lib/chef/provider/whyrun_safe_ruby_block.rb +2 -0
- data/lib/chef/provider_resolver.rb +103 -0
- data/lib/chef/providers.rb +6 -2
- data/lib/chef/recipe.rb +2 -0
- data/lib/chef/resource.rb +69 -78
- data/lib/chef/resource/apt_package.rb +3 -1
- data/lib/chef/resource/bash.rb +1 -0
- data/lib/chef/resource/bff_package.rb +0 -1
- data/lib/chef/resource/breakpoint.rb +1 -1
- data/lib/chef/resource/chef_gem.rb +1 -2
- data/lib/chef/resource/conditional.rb +26 -6
- data/lib/chef/resource/cookbook_file.rb +2 -3
- data/lib/chef/resource/csh.rb +1 -0
- data/lib/chef/resource/deploy.rb +0 -1
- data/lib/chef/resource/deploy_revision.rb +6 -1
- data/lib/chef/resource/directory.rb +1 -2
- data/lib/chef/resource/dpkg_package.rb +2 -1
- data/lib/chef/resource/dsc_script.rb +125 -0
- data/lib/chef/resource/easy_install_package.rb +2 -1
- data/lib/chef/resource/erl_call.rb +1 -0
- data/lib/chef/resource/execute.rb +26 -9
- data/lib/chef/resource/file.rb +1 -3
- data/lib/chef/resource/freebsd_package.rb +10 -23
- data/lib/chef/resource/gem_package.rb +2 -1
- data/lib/chef/resource/git.rb +2 -1
- data/lib/chef/resource/homebrew_package.rb +46 -0
- data/lib/chef/resource/http_request.rb +1 -0
- data/lib/chef/resource/ips_package.rb +3 -1
- data/lib/chef/resource/link.rb +1 -2
- data/lib/chef/resource/log.rb +4 -0
- data/lib/chef/resource/lwrp_base.rb +24 -15
- data/lib/chef/resource/macports_package.rb +3 -1
- data/lib/chef/resource/pacman_package.rb +2 -1
- data/lib/chef/resource/paludis_package.rb +3 -1
- data/lib/chef/resource/perl.rb +1 -0
- data/lib/chef/resource/powershell_script.rb +0 -2
- data/lib/chef/resource/python.rb +1 -1
- data/lib/chef/resource/remote_directory.rb +1 -2
- data/lib/chef/resource/remote_file.rb +1 -1
- data/lib/chef/resource/rpm_package.rb +2 -1
- data/lib/chef/resource/ruby.rb +1 -0
- data/lib/chef/resource/ruby_block.rb +3 -0
- data/lib/chef/resource/script.rb +2 -25
- data/lib/chef/resource/service.rb +0 -4
- data/lib/chef/resource/smartos_package.rb +3 -4
- data/lib/chef/resource/solaris_package.rb +7 -1
- data/lib/chef/resource/subversion.rb +0 -1
- data/lib/chef/resource/template.rb +2 -3
- data/lib/chef/resource/timestamped_deploy.rb +1 -2
- data/lib/chef/resource/whyrun_safe_ruby_block.rb +0 -1
- data/lib/chef/resource/windows_package.rb +3 -4
- data/lib/chef/resource/windows_script.rb +3 -0
- data/lib/chef/resource/windows_service.rb +2 -2
- data/lib/chef/resource/yum_package.rb +3 -1
- data/lib/chef/resource_collection.rb +50 -227
- data/lib/chef/resource_collection/resource_collection_serialization.rb +59 -0
- data/lib/chef/resource_collection/resource_list.rb +89 -0
- data/lib/chef/resource_collection/resource_set.rb +170 -0
- data/lib/chef/resources.rb +2 -0
- data/lib/chef/role.rb +1 -1
- data/lib/chef/run_context.rb +5 -1
- data/lib/chef/shell/ext.rb +1 -1
- data/lib/chef/util/backup.rb +3 -2
- data/lib/chef/util/dsc/configuration_generator.rb +115 -0
- data/lib/chef/util/dsc/lcm_output_parser.rb +133 -0
- data/lib/chef/util/dsc/local_configuration_manager.rb +141 -0
- data/lib/chef/util/dsc/resource_info.rb +26 -0
- data/lib/chef/util/path_helper.rb +12 -0
- data/lib/chef/util/powershell/cmdlet.rb +136 -0
- data/lib/chef/util/powershell/cmdlet_result.rb +46 -0
- data/lib/chef/version.rb +1 -1
- data/lib/chef/win32/api/system.rb +9 -0
- data/lib/chef/win32/version.rb +2 -0
- data/spec/.DS_Store +0 -0
- data/spec/data/.DS_Store +0 -0
- data/spec/data/bootstrap/test-hints.erb +1 -1
- data/spec/data/bootstrap/test.erb +1 -1
- data/spec/data/cb_version_cookbooks/cookbook2/files/test.txt +0 -0
- data/spec/data/cb_version_cookbooks/cookbook2/templates/test.erb +0 -0
- data/spec/data/cookbooks/ignorken/files/default/not_me.rb +2 -0
- data/spec/data/cookbooks/ignorken/templates/ubuntu-12.10/not_me.rb +2 -0
- data/spec/data/cookbooks/openldap/libraries/openldap.rb +4 -0
- data/spec/data/cookbooks/openldap/libraries/openldap/version.rb +3 -0
- data/spec/data/lwrp/.DS_Store +0 -0
- data/spec/data/lwrp/providers/.DS_Store +0 -0
- data/spec/data/lwrp/providers/buck_passer.rb +9 -2
- data/spec/data/lwrp/resources/.DS_Store +0 -0
- data/spec/data/lwrp/resources/foo.rb +3 -2
- data/spec/data/lwrp_override/.DS_Store +0 -0
- data/spec/data/lwrp_override/providers/.DS_Store +0 -0
- data/spec/data/lwrp_override/providers/buck_passer.rb +5 -10
- data/spec/data/lwrp_override/resources/.DS_Store +0 -0
- data/spec/data/lwrp_override/resources/foo.rb +4 -3
- data/spec/functional/assets/chefinittest +34 -0
- data/spec/functional/assets/testchefsubsys +11 -0
- data/spec/functional/dsl/reboot_pending_spec.rb +19 -16
- data/spec/functional/event_loggers/windows_eventlog_spec.rb +82 -0
- data/spec/functional/knife/cookbook_delete_spec.rb +3 -3
- data/spec/functional/knife/exec_spec.rb +1 -1
- data/spec/functional/resource/aix_service_spec.rb +136 -0
- data/spec/functional/resource/aixinit_service_spec.rb +211 -0
- data/spec/functional/resource/base.rb +1 -0
- data/spec/functional/resource/batch_spec.rb +4 -11
- data/spec/functional/resource/cron_spec.rb +7 -1
- data/spec/functional/resource/dsc_script_spec.rb +382 -0
- data/spec/functional/resource/env_spec.rb +54 -0
- data/spec/functional/resource/execute_spec.rb +113 -0
- data/spec/functional/resource/file_spec.rb +2 -0
- data/spec/functional/resource/group_spec.rb +7 -4
- data/spec/functional/resource/powershell_spec.rb +198 -185
- data/spec/functional/resource/rpm_spec.rb +5 -4
- data/spec/functional/resource/user/dscl_spec.rb +2 -1
- data/spec/functional/util/path_helper_spec.rb +37 -0
- data/spec/functional/util/powershell/cmdlet_spec.rb +114 -0
- data/spec/integration/client/client_spec.rb +1 -1
- data/spec/integration/client/ipv6_spec.rb +1 -1
- data/spec/integration/knife/chef_fs_data_store_spec.rb +1 -1
- data/spec/integration/knife/chef_repo_path_spec.rb +1 -1
- data/spec/integration/knife/chef_repository_file_system_spec.rb +1 -1
- data/spec/integration/knife/chefignore_spec.rb +1 -1
- data/spec/integration/knife/common_options_spec.rb +1 -1
- data/spec/integration/knife/cookbook_api_ipv6_spec.rb +2 -2
- data/spec/integration/knife/delete_spec.rb +1 -1
- data/spec/integration/knife/deps_spec.rb +1 -1
- data/spec/integration/knife/diff_spec.rb +1 -1
- data/spec/integration/knife/download_spec.rb +1 -1
- data/spec/integration/knife/list_spec.rb +1 -1
- data/spec/integration/knife/raw_spec.rb +1 -1
- data/spec/integration/knife/redirection_spec.rb +1 -1
- data/spec/integration/knife/serve_spec.rb +1 -1
- data/spec/integration/knife/show_spec.rb +1 -1
- data/spec/integration/knife/upload_spec.rb +4 -3
- data/spec/integration/recipes/lwrp_inline_resources_spec.rb +1 -1
- data/spec/spec_helper.rb +15 -0
- data/spec/support/chef_helpers.rb +1 -0
- data/spec/support/lib/chef/provider/snakeoil.rb +1 -0
- data/spec/support/lib/chef/resource/zen_follower.rb +1 -7
- data/spec/support/platform_helpers.rb +28 -0
- data/spec/support/shared/functional/file_resource.rb +6 -0
- data/spec/support/shared/functional/windows_script.rb +118 -0
- data/spec/support/shared/integration/integration_helper.rb +5 -2
- data/spec/support/shared/matchers/exit_with_code.rb +28 -0
- data/spec/support/shared/matchers/match_environment_variable.rb +17 -0
- data/spec/support/shared/shared_examples.rb +14 -0
- data/spec/support/shared/unit/execute_resource.rb +0 -7
- data/spec/support/shared/unit/resource/static_provider_resolution.rb +71 -0
- data/spec/support/shared/unit/script_resource.rb +1 -1
- data/spec/support/shared/unit/windows_script_resource.rb +35 -2
- data/spec/tiny_server.rb +1 -2
- data/spec/unit/api_client_spec.rb +5 -1
- data/spec/unit/application/{apply.rb → apply_spec.rb} +13 -5
- data/spec/unit/application/client_spec.rb +106 -13
- data/spec/unit/application/solo_spec.rb +25 -1
- data/spec/unit/client_spec.rb +1 -26
- data/spec/unit/config_fetcher_spec.rb +2 -1
- data/spec/unit/config_spec.rb +91 -2
- data/spec/unit/cookbook/cookbook_version_loader_spec.rb +8 -0
- data/spec/unit/cookbook/metadata_spec.rb +43 -6
- data/spec/unit/cookbook/syntax_check_spec.rb +8 -2
- data/spec/unit/cookbook_loader_spec.rb +4 -2
- data/spec/unit/cookbook_version_spec.rb +83 -2
- data/spec/unit/data_bag_item_spec.rb +5 -1
- data/spec/unit/data_bag_spec.rb +6 -1
- data/spec/unit/dsl/data_query_spec.rb +8 -110
- data/spec/unit/encrypted_data_bag_item/check_encrypted_spec.rb +95 -0
- data/spec/unit/encrypted_data_bag_item_spec.rb +16 -23
- data/spec/unit/environment_spec.rb +6 -2
- data/spec/unit/exceptions_spec.rb +6 -0
- data/spec/unit/guard_interpreter/resource_guard_interpreter_spec.rb +16 -15
- data/spec/unit/json_compat_spec.rb +12 -2
- data/spec/unit/knife/bootstrap_spec.rb +16 -63
- data/spec/unit/knife/cookbook_site_share_spec.rb +59 -6
- data/spec/unit/knife/core/bootstrap_context_spec.rb +8 -37
- data/spec/unit/knife/core/subcommand_loader_spec.rb +1 -1
- data/spec/unit/knife/core/ui_spec.rb +28 -0
- data/spec/unit/knife/data_bag_create_spec.rb +63 -71
- data/spec/unit/knife/data_bag_edit_spec.rb +83 -49
- data/spec/unit/knife/data_bag_from_file_spec.rb +104 -126
- data/spec/unit/knife/data_bag_secret_options_spec.rb +165 -0
- data/spec/unit/knife/data_bag_show_spec.rb +74 -72
- data/spec/unit/knife/environment_from_file_spec.rb +3 -2
- data/spec/unit/knife/ssl_check_spec.rb +46 -1
- data/spec/unit/knife/status_spec.rb +1 -2
- data/spec/unit/knife_spec.rb +18 -1
- data/spec/unit/lwrp_spec.rb +29 -8
- data/spec/unit/mixin/homebrew_user_spec.rb +100 -0
- data/spec/unit/node_map_spec.rb +155 -0
- data/spec/unit/node_spec.rb +11 -0
- data/spec/unit/platform/query_helpers_spec.rb +23 -0
- data/spec/unit/platform_spec.rb +23 -0
- data/spec/unit/provider/breakpoint_spec.rb +9 -9
- data/spec/unit/provider/cookbook_file/content_spec.rb +3 -3
- data/spec/unit/provider/cookbook_file_spec.rb +1 -1
- data/spec/unit/provider/cron/unix_spec.rb +78 -60
- data/spec/unit/provider/cron_spec.rb +175 -175
- data/spec/unit/provider/deploy/revision_spec.rb +22 -21
- data/spec/unit/provider/deploy/timestamped_spec.rb +3 -3
- data/spec/unit/provider/deploy_spec.rb +231 -230
- data/spec/unit/provider/directory_spec.rb +55 -55
- data/spec/unit/provider/dsc_script_spec.rb +174 -0
- data/spec/unit/provider/env/windows_spec.rb +70 -34
- data/spec/unit/provider/env_spec.rb +95 -49
- data/spec/unit/provider/erl_call_spec.rb +9 -9
- data/spec/unit/provider/execute_spec.rb +43 -27
- data/spec/unit/provider/file/content_spec.rb +9 -9
- data/spec/unit/provider/file_spec.rb +1 -1
- data/spec/unit/provider/git_spec.rb +221 -159
- data/spec/unit/provider/group/dscl_spec.rb +64 -63
- data/spec/unit/provider/group/gpasswd_spec.rb +14 -14
- data/spec/unit/provider/group/groupadd_spec.rb +33 -33
- data/spec/unit/provider/group/groupmod_spec.rb +23 -23
- data/spec/unit/provider/group/pw_spec.rb +21 -21
- data/spec/unit/provider/group/usermod_spec.rb +20 -20
- data/spec/unit/provider/group/windows_spec.rb +15 -15
- data/spec/unit/provider/group_spec.rb +76 -76
- data/spec/unit/provider/http_request_spec.rb +30 -30
- data/spec/unit/provider/ifconfig/aix_spec.rb +20 -20
- data/spec/unit/provider/ifconfig/debian_spec.rb +25 -9
- data/spec/unit/provider/ifconfig/redhat_spec.rb +13 -13
- data/spec/unit/provider/ifconfig_spec.rb +43 -43
- data/spec/unit/provider/link_spec.rb +60 -60
- data/spec/unit/provider/log_spec.rb +0 -4
- data/spec/unit/provider/mdadm_spec.rb +23 -23
- data/spec/unit/provider/mount/aix_spec.rb +17 -17
- data/spec/unit/provider/mount/mount_spec.rb +115 -119
- data/spec/unit/provider/mount/solaris_spec.rb +72 -72
- data/spec/unit/provider/mount/windows_spec.rb +24 -24
- data/spec/unit/provider/ohai_spec.rb +11 -11
- data/spec/unit/provider/package/aix_spec.rb +34 -34
- data/spec/unit/provider/package/apt_spec.rb +36 -36
- data/spec/unit/provider/package/dpkg_spec.rb +27 -27
- data/spec/unit/provider/package/easy_install_spec.rb +16 -16
- data/spec/unit/provider/package/freebsd/pkg_spec.rb +53 -53
- data/spec/unit/provider/package/freebsd/pkgng_spec.rb +24 -24
- data/spec/unit/provider/package/freebsd/port_spec.rb +45 -35
- data/spec/unit/provider/package/homebrew_spec.rb +266 -0
- data/spec/unit/provider/package/ips_spec.rb +34 -34
- data/spec/unit/provider/package/macports_spec.rb +49 -49
- data/spec/unit/provider/package/pacman_spec.rb +35 -39
- data/spec/unit/provider/package/paludis_spec.rb +20 -20
- data/spec/unit/provider/package/portage_spec.rb +38 -38
- data/spec/unit/provider/package/rpm_spec.rb +29 -29
- data/spec/unit/provider/package/rubygems_spec.rb +284 -270
- data/spec/unit/provider/package/smartos_spec.rb +15 -15
- data/spec/unit/provider/package/solaris_spec.rb +35 -35
- data/spec/unit/provider/package/windows/msi_spec.rb +3 -3
- data/spec/unit/provider/package/windows_spec.rb +6 -6
- data/spec/unit/provider/package/yum_spec.rb +416 -416
- data/spec/unit/provider/package/zypper_spec.rb +47 -47
- data/spec/unit/provider/package_spec.rb +107 -107
- data/spec/unit/provider/powershell_spec.rb +1 -1
- data/spec/unit/provider/registry_key_spec.rb +61 -61
- data/spec/unit/provider/remote_directory_spec.rb +36 -36
- data/spec/unit/provider/remote_file/cache_control_data_spec.rb +24 -24
- data/spec/unit/provider/remote_file/content_spec.rb +45 -45
- data/spec/unit/provider/remote_file/fetcher_spec.rb +9 -9
- data/spec/unit/provider/remote_file/ftp_spec.rb +32 -32
- data/spec/unit/provider/remote_file/http_spec.rb +44 -44
- data/spec/unit/provider/remote_file/local_file_spec.rb +9 -9
- data/spec/unit/provider/remote_file_spec.rb +3 -3
- data/spec/unit/provider/route_spec.rb +63 -63
- data/spec/unit/provider/ruby_block_spec.rb +4 -4
- data/spec/unit/provider/script_spec.rb +12 -12
- data/spec/unit/provider/service/aix_service_spec.rb +181 -0
- data/spec/unit/provider/service/aixinit_service_spec.rb +269 -0
- data/spec/unit/provider/service/arch_service_spec.rb +48 -48
- data/spec/unit/provider/service/debian_service_spec.rb +40 -40
- data/spec/unit/provider/service/gentoo_service_spec.rb +28 -28
- data/spec/unit/provider/service/init_service_spec.rb +39 -39
- data/spec/unit/provider/service/insserv_service_spec.rb +8 -8
- data/spec/unit/provider/service/invokercd_service_spec.rb +35 -35
- data/spec/unit/provider/service/macosx_spec.rb +49 -49
- data/spec/unit/provider/service/redhat_spec.rb +27 -27
- data/spec/unit/provider/service/simple_service_spec.rb +28 -28
- data/spec/unit/provider/service/solaris_smf_service_spec.rb +43 -46
- data/spec/unit/provider/service/systemd_service_spec.rb +63 -63
- data/spec/unit/provider/service/upstart_service_spec.rb +78 -78
- data/spec/unit/provider/service/windows_spec.rb +92 -92
- data/spec/unit/provider/service_spec.rb +40 -40
- data/spec/unit/provider/subversion_spec.rb +80 -80
- data/spec/unit/provider/template/content_spec.rb +9 -9
- data/spec/unit/provider/template_spec.rb +6 -6
- data/spec/unit/provider/user/dscl_spec.rb +170 -167
- data/spec/unit/provider/user/pw_spec.rb +48 -48
- data/spec/unit/provider/user/solaris_spec.rb +8 -8
- data/spec/unit/provider/user/useradd_spec.rb +1 -1
- data/spec/unit/provider/user/windows_spec.rb +26 -26
- data/spec/unit/provider/user_spec.rb +72 -72
- data/spec/unit/provider/whyrun_safe_ruby_block_spec.rb +4 -4
- data/spec/unit/provider_resolver_spec.rb +387 -0
- data/spec/unit/recipe_spec.rb +33 -12
- data/spec/unit/resource/apt_package_spec.rb +10 -13
- data/spec/unit/resource/bash_spec.rb +4 -4
- data/spec/unit/resource/batch_spec.rb +1 -1
- data/spec/unit/resource/breakpoint_spec.rb +11 -7
- data/spec/unit/resource/chef_gem_spec.rb +8 -15
- data/spec/unit/resource/conditional_action_not_nothing_spec.rb +2 -2
- data/spec/unit/resource/conditional_spec.rb +35 -16
- data/spec/unit/resource/cookbook_file_spec.rb +13 -13
- data/spec/unit/resource/cron_spec.rb +37 -37
- data/spec/unit/resource/csh_spec.rb +4 -4
- data/spec/unit/resource/deploy_revision_spec.rb +13 -18
- data/spec/unit/resource/deploy_spec.rb +60 -55
- data/spec/unit/resource/directory_spec.rb +18 -18
- data/spec/unit/resource/dpkg_package_spec.rb +8 -14
- data/spec/unit/resource/dsc_script_spec.rb +98 -0
- data/spec/unit/resource/easy_install_package_spec.rb +9 -18
- data/spec/unit/resource/env_spec.rb +12 -12
- data/spec/unit/resource/erl_call_spec.rb +11 -11
- data/spec/unit/resource/execute_spec.rb +5 -0
- data/spec/unit/resource/file_spec.rb +29 -29
- data/spec/unit/resource/freebsd_package_spec.rb +11 -12
- data/spec/unit/resource/gem_package_spec.rb +8 -15
- data/spec/unit/resource/git_spec.rb +12 -8
- data/spec/unit/resource/group_spec.rb +27 -27
- data/spec/unit/resource/homebrew_package_spec.rb +50 -0
- data/spec/unit/resource/http_request_spec.rb +6 -6
- data/spec/unit/resource/ifconfig_spec.rb +8 -8
- data/spec/unit/resource/ips_package_spec.rb +10 -13
- data/spec/unit/resource/link_spec.rb +25 -25
- data/spec/unit/resource/log_spec.rb +9 -9
- data/spec/unit/resource/macports_package_spec.rb +8 -13
- data/spec/unit/resource/mdadm_spec.rb +18 -18
- data/spec/unit/resource/mount_spec.rb +45 -45
- data/spec/unit/resource/ohai_spec.rb +7 -7
- data/spec/unit/resource/package_spec.rb +12 -12
- data/spec/unit/resource/pacman_package_spec.rb +8 -14
- data/spec/unit/resource/perl_spec.rb +4 -4
- data/spec/unit/resource/portage_package_spec.rb +3 -3
- data/spec/unit/resource/powershell_spec.rb +7 -7
- data/spec/unit/resource/python_spec.rb +4 -4
- data/spec/unit/resource/registry_key_spec.rb +32 -32
- data/spec/unit/resource/remote_directory_spec.rb +17 -17
- data/spec/unit/resource/remote_file_spec.rb +41 -41
- data/spec/unit/resource/route_spec.rb +19 -19
- data/spec/unit/resource/rpm_package_spec.rb +9 -13
- data/spec/unit/resource/ruby_block_spec.rb +8 -8
- data/spec/unit/resource/ruby_spec.rb +4 -4
- data/spec/unit/resource/scm_spec.rb +40 -40
- data/spec/unit/resource/script_spec.rb +2 -2
- data/spec/unit/resource/service_spec.rb +37 -47
- data/spec/unit/resource/smartos_package_spec.rb +10 -15
- data/spec/unit/resource/solaris_package_spec.rb +13 -28
- data/spec/unit/resource/subversion_spec.rb +16 -12
- data/spec/unit/resource/template_spec.rb +35 -35
- data/spec/unit/resource/timestamped_deploy_spec.rb +30 -4
- data/spec/unit/resource/user_spec.rb +23 -23
- data/spec/unit/resource/windows_package_spec.rb +17 -10
- data/spec/unit/resource/windows_service_spec.rb +9 -6
- data/spec/unit/resource/yum_package_spec.rb +16 -21
- data/spec/unit/resource_collection/resource_list_spec.rb +137 -0
- data/spec/unit/resource_collection/resource_set_spec.rb +199 -0
- data/spec/unit/resource_collection_spec.rb +73 -92
- data/spec/unit/resource_definition_spec.rb +38 -40
- data/spec/unit/resource_reporter_spec.rb +3 -3
- data/spec/unit/resource_spec.rb +68 -33
- data/spec/unit/rest_spec.rb +83 -76
- data/spec/unit/role_spec.rb +5 -0
- data/spec/unit/run_list_spec.rb +5 -1
- data/spec/unit/runner_spec.rb +245 -238
- data/spec/unit/shell/shell_ext_spec.rb +1 -1
- data/spec/unit/user_spec.rb +5 -1
- data/spec/unit/util/dsc/configuration_generator_spec.rb +171 -0
- data/spec/unit/util/dsc/lcm_output_parser_spec.rb +169 -0
- data/spec/unit/util/dsc/local_configuration_manager_spec.rb +139 -0
- data/spec/unit/util/path_helper_spec.rb +23 -1
- data/spec/unit/util/powershell/cmdlet_spec.rb +106 -0
- data/spec/unit/workstation_config_loader_spec.rb +1 -1
- metadata +257 -191
- checksums.yaml +0 -7
- data/distro/README +0 -2
- data/distro/arch/etc/conf.d/chef-client.conf +0 -5
- data/distro/arch/etc/conf.d/chef-expander.conf +0 -8
- data/distro/arch/etc/conf.d/chef-server-webui.conf +0 -10
- data/distro/arch/etc/conf.d/chef-server.conf +0 -10
- data/distro/arch/etc/conf.d/chef-solr.conf +0 -8
- data/distro/arch/etc/rc.d/chef-client +0 -90
- data/distro/arch/etc/rc.d/chef-expander +0 -78
- data/distro/arch/etc/rc.d/chef-server +0 -78
- data/distro/arch/etc/rc.d/chef-server-webui +0 -78
- data/distro/arch/etc/rc.d/chef-solr +0 -78
- data/distro/debian/etc/default/chef-client +0 -4
- data/distro/debian/etc/default/chef-expander +0 -8
- data/distro/debian/etc/default/chef-server +0 -9
- data/distro/debian/etc/default/chef-server-webui +0 -9
- data/distro/debian/etc/default/chef-solr +0 -8
- data/distro/debian/etc/init.d/chef-client +0 -212
- data/distro/debian/etc/init.d/chef-expander +0 -176
- data/distro/debian/etc/init.d/chef-server +0 -122
- data/distro/debian/etc/init.d/chef-server-webui +0 -123
- data/distro/debian/etc/init.d/chef-solr +0 -176
- data/distro/debian/etc/init/chef-client.conf +0 -17
- data/distro/debian/etc/init/chef-expander.conf +0 -17
- data/distro/debian/etc/init/chef-server-webui.conf +0 -17
- data/distro/debian/etc/init/chef-server.conf +0 -17
- data/distro/debian/etc/init/chef-solr.conf +0 -17
- data/distro/redhat/etc/init.d/chef-client +0 -121
- data/distro/redhat/etc/init.d/chef-expander +0 -104
- data/distro/redhat/etc/init.d/chef-server +0 -112
- data/distro/redhat/etc/init.d/chef-server-webui +0 -112
- data/distro/redhat/etc/init.d/chef-solr +0 -104
- data/distro/redhat/etc/logrotate.d/chef-client +0 -8
- data/distro/redhat/etc/logrotate.d/chef-expander +0 -8
- data/distro/redhat/etc/logrotate.d/chef-server +0 -8
- data/distro/redhat/etc/logrotate.d/chef-server-webui +0 -8
- data/distro/redhat/etc/logrotate.d/chef-solr +0 -8
- data/distro/redhat/etc/sysconfig/chef-client +0 -15
- data/distro/redhat/etc/sysconfig/chef-expander +0 -7
- data/distro/redhat/etc/sysconfig/chef-server +0 -14
- data/distro/redhat/etc/sysconfig/chef-server-webui +0 -14
- data/distro/redhat/etc/sysconfig/chef-solr +0 -8
- data/distro/windows/service_manager.rb +0 -20
- data/lib/chef/resource_platform_map.rb +0 -151
- data/spec/support/shared/matchers.rb +0 -17
- data/spec/unit/resource_platform_map_spec.rb +0 -164
@@ -28,7 +28,7 @@
|
|
28
28
|
</head>
|
29
29
|
<body>
|
30
30
|
<div style="background-color: #212c35; text-align: left; padding: 0px 0px 0px 0px">
|
31
|
-
<a href="http://docs.
|
31
|
+
<a href="http://docs.getchef.com/"><img src="_static/chef_html_logo.png" border="0" alt="Chef"/></a>
|
32
32
|
</div>
|
33
33
|
|
34
34
|
|
@@ -49,7 +49,7 @@
|
|
49
49
|
<p>The chef-shell executable is run as a command-line tool.</p>
|
50
50
|
<div class="section" id="modes">
|
51
51
|
<h2>Modes<a class="headerlink" href="#modes" title="Permalink to this headline">¶</a></h2>
|
52
|
-
<p>chef-shell is tool that allows
|
52
|
+
<p>chef-shell is tool that allows knife to be run using an Interactive Ruby (IRb) session. chef-shell currently supports recipe and attribute file syntax, as well as interactive debugging features. chef-shell has three run modes:</p>
|
53
53
|
<table border="1" class="docutils">
|
54
54
|
<colgroup>
|
55
55
|
<col width="40%" />
|
@@ -28,7 +28,7 @@
|
|
28
28
|
</head>
|
29
29
|
<body>
|
30
30
|
<div style="background-color: #212c35; text-align: left; padding: 0px 0px 0px 0px">
|
31
|
-
<a href="http://docs.
|
31
|
+
<a href="http://docs.getchef.com/"><img src="_static/chef_html_logo.png" border="0" alt="Chef"/></a>
|
32
32
|
</div>
|
33
33
|
|
34
34
|
|
@@ -28,7 +28,7 @@
|
|
28
28
|
</head>
|
29
29
|
<body>
|
30
30
|
<div style="background-color: #212c35; text-align: left; padding: 0px 0px 0px 0px">
|
31
|
-
<a href="http://docs.
|
31
|
+
<a href="http://docs.getchef.com/"><img src="_static/chef_html_logo.png" border="0" alt="Chef"/></a>
|
32
32
|
</div>
|
33
33
|
|
34
34
|
|
@@ -51,7 +51,7 @@
|
|
51
51
|
</ul>
|
52
52
|
<div class="section" id="knife">
|
53
53
|
<h2>knife<a class="headerlink" href="#knife" title="Permalink to this headline">¶</a></h2>
|
54
|
-
<p>
|
54
|
+
<p>knife is a command-line tool that provides an interface between a local chef-repo and the Chef server. knife helps users to manage:</p>
|
55
55
|
<ul class="simple">
|
56
56
|
<li>Nodes</li>
|
57
57
|
<li>Cookbooks and recipes</li>
|
@@ -62,12 +62,12 @@
|
|
62
62
|
<li>The installation of the chef-client on management workstations</li>
|
63
63
|
<li>Searching of indexed data on the Chef server</li>
|
64
64
|
</ul>
|
65
|
-
<p>The following sections describe functionality common to all
|
65
|
+
<p>The following sections describe functionality common to all knife subcommands:</p>
|
66
66
|
<ul class="simple">
|
67
67
|
<li><a class="reference internal" href="knife_using.html"><em>Working with Knife</em></a></li>
|
68
68
|
<li><a class="reference internal" href="knife_common_options.html"><em>Common Options</em></a></li>
|
69
69
|
</ul>
|
70
|
-
<p>
|
70
|
+
<p>knife includes the following sub-commands:</p>
|
71
71
|
<table border="1" class="docutils">
|
72
72
|
<colgroup>
|
73
73
|
<col width="25%" />
|
@@ -83,7 +83,7 @@
|
|
83
83
|
<td>The <strong>knife bootstrap</strong> subcommand is used to run a bootstrap operation that installs the chef-client on the target system. The bootstrap operation must specify the IP address or FQDN of the target system.</td>
|
84
84
|
</tr>
|
85
85
|
<tr class="row-odd"><td><a class="reference internal" href="knife_client.html"><em>knife client</em></a></td>
|
86
|
-
<td>The <strong>knife client</strong> subcommand is used to manage an API client list and their associated RSA public key-pairs. This allows authentication requests to be made to the Chef server by any entity that uses the Chef
|
86
|
+
<td>The <strong>knife client</strong> subcommand is used to manage an API client list and their associated RSA public key-pairs. This allows authentication requests to be made to the Chef server by any entity that uses the Chef server API, such as the chef-client and knife.</td>
|
87
87
|
</tr>
|
88
88
|
<tr class="row-even"><td><a class="reference internal" href="knife_configure.html"><em>knife configure</em></a></td>
|
89
89
|
<td>The <strong>knife configure</strong> subcommand is used to create the knife.rb and client.rb files so that they can be distributed to workstations and nodes.</td>
|
@@ -92,7 +92,7 @@
|
|
92
92
|
<td>The <strong>knife cookbook</strong> subcommand is used to interact with cookbooks that are located on the Chef server or the local chef-repo.</td>
|
93
93
|
</tr>
|
94
94
|
<tr class="row-even"><td><a class="reference internal" href="knife_cookbook_site.html"><em>knife cookbook site</em></a></td>
|
95
|
-
<td>The <strong>knife cookbook site</strong> subcommand is used to interact with cookbooks that are located at <a class="reference external" href="
|
95
|
+
<td>The <strong>knife cookbook site</strong> subcommand is used to interact with cookbooks that are located at <a class="reference external" href="https://supermarket.getchef.com/cookbooks">https://supermarket.getchef.com/cookbooks</a>. A user account is required for any community actions that write data to this site. The following arguments do not require a user account: <tt class="docutils literal"><span class="pre">download</span></tt>, <tt class="docutils literal"><span class="pre">search</span></tt>, <tt class="docutils literal"><span class="pre">install</span></tt>, and <tt class="docutils literal"><span class="pre">list</span></tt>.</td>
|
96
96
|
</tr>
|
97
97
|
<tr class="row-odd"><td><a class="reference internal" href="knife_data_bag.html"><em>knife data bag</em></a></td>
|
98
98
|
<td>The <strong>knife data bag</strong> subcommand is used to manage arbitrary stores of globally available JSON data.</td>
|
@@ -116,7 +116,7 @@
|
|
116
116
|
<td>The <strong>knife environment</strong> subcommand is used to manage environments within a single organization on the Chef server.</td>
|
117
117
|
</tr>
|
118
118
|
<tr class="row-even"><td><a class="reference internal" href="knife_exec.html"><em>knife exec</em></a></td>
|
119
|
-
<td>The <strong>knife exec</strong> subcommand uses the
|
119
|
+
<td>The <strong>knife exec</strong> subcommand uses the knife configuration file to execute Ruby scripts in the context of a fully configured chef-client. This subcommand is most often used to run scripts that will only access Chef server one time (or otherwise very infrequently). Use this subcommand any time that an operation does not warrant full usage of the knife subcommand library.</td>
|
120
120
|
</tr>
|
121
121
|
<tr class="row-odd"><td><a class="reference internal" href="knife_index_rebuild.html"><em>knife index rebuild</em></a></td>
|
122
122
|
<td>The <strong>knife index rebuild</strong> subcommand is used to rebuild the search indexes for the open source Chef server. This operation is destructive and may take some time.</td>
|
@@ -128,7 +128,7 @@
|
|
128
128
|
<td>The <strong>knife node</strong> subcommand is used to manage the nodes that exist on a Chef server.</td>
|
129
129
|
</tr>
|
130
130
|
<tr class="row-even"><td><a class="reference internal" href="knife_raw.html"><em>knife raw</em></a></td>
|
131
|
-
<td>The <strong>knife raw</strong> subcommand is used to send a REST request to a specified path using the Chef
|
131
|
+
<td>The <strong>knife raw</strong> subcommand is used to send a REST request to a specified path using the Chef server API.</td>
|
132
132
|
</tr>
|
133
133
|
<tr class="row-odd"><td><a class="reference internal" href="knife_recipe_list.html"><em>knife recipe list</em></a></td>
|
134
134
|
<td>The <strong>knife recipe list</strong> subcommand is used to view all of the recipes that are on a Chef server. A regular expression can be used to limit the results to recipes that match a specific pattern. The regular expression must be within quotes and not be surrounded by forward slashes (/).</td>
|
@@ -140,13 +140,13 @@
|
|
140
140
|
<td>The <strong>knife search</strong> subcommand is used run a search query for information that is indexed on a Chef server.</td>
|
141
141
|
</tr>
|
142
142
|
<tr class="row-even"><td><a class="reference internal" href="knife_serve.html"><em>knife serve</em></a></td>
|
143
|
-
<td>The <strong>knife serve</strong> subcommand is used to run a persistent chef-zero against the local chef-repo. (chef-zero is a lightweight Chef server that runs in-memory on the local machine.) This is the same as running the chef-client executable with the <tt class="docutils literal"><span class="pre">--local-mode</span></tt> option. The <tt class="docutils literal"><span class="pre">chef_repo_path</span></tt> is located automatically and the Chef server will bind to port <tt class="docutils literal"><span class="pre">
|
143
|
+
<td>The <strong>knife serve</strong> subcommand is used to run a persistent chef-zero against the local chef-repo. (chef-zero is a lightweight Chef server that runs in-memory on the local machine.) This is the same as running the chef-client executable with the <tt class="docutils literal"><span class="pre">--local-mode</span></tt> option. The <tt class="docutils literal"><span class="pre">chef_repo_path</span></tt> is located automatically and the Chef server will bind to the first available port between <tt class="docutils literal"><span class="pre">8889</span></tt> and <tt class="docutils literal"><span class="pre">9999</span></tt>. <strong>knife serve</strong> will print the URL for the local Chef server, so that it may be added to the knife.rb file.</td>
|
144
144
|
</tr>
|
145
145
|
<tr class="row-odd"><td><a class="reference internal" href="knife_show.html"><em>knife show</em></a></td>
|
146
146
|
<td>The <strong>knife show</strong> subcommand is used to view the details of one (or more) objects on the Chef server. This subcommand works similar to <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">cookbook</span> <span class="pre">show</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">data</span> <span class="pre">bag</span> <span class="pre">show</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">environment</span> <span class="pre">show</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">node</span> <span class="pre">show</span></tt>, and <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">role</span> <span class="pre">show</span></tt>, but with a single verb (and a single action).</td>
|
147
147
|
</tr>
|
148
148
|
<tr class="row-even"><td><a class="reference internal" href="knife_ssh.html"><em>knife ssh</em></a></td>
|
149
|
-
<td>The <strong>knife ssh</strong> subcommand is used to invoke SSH commands (in parallel) on a subset of nodes within an organization, based on the results of a search query.</td>
|
149
|
+
<td>The <strong>knife ssh</strong> subcommand is used to invoke SSH commands (in parallel) on a subset of nodes within an organization, based on the results of a <a class="reference external" href="http://docs.opscode.com/essentials_search.html">search query</a> made to the Chef server.</td>
|
150
150
|
</tr>
|
151
151
|
<tr class="row-odd"><td><a class="reference internal" href="knife_ssl_check.html"><em>knife ssl check</em></a></td>
|
152
152
|
<td><p class="first">The <strong>knife ssl check</strong> subcommand is used to verify the SSL configuration for the Enterprise Chef and/or Open Source Chef servers, or at another location specified by a URL or URI.</p>
|
@@ -157,10 +157,10 @@
|
|
157
157
|
</td>
|
158
158
|
</tr>
|
159
159
|
<tr class="row-even"><td><a class="reference internal" href="knife_ssl_fetch.html"><em>knife ssl fetch</em></a></td>
|
160
|
-
<td><p class="first">The <strong>knife ssl fetch</strong> subcommand is used to copy SSL certificates from an HTTPS server to the <tt class="docutils literal"><span class="pre">trusted_certs_dir</span></tt> directory that is used by
|
160
|
+
<td><p class="first">The <strong>knife ssl fetch</strong> subcommand is used to copy SSL certificates from an HTTPS server to the <tt class="docutils literal"><span class="pre">trusted_certs_dir</span></tt> directory that is used by knife and the chef-client to store trusted SSL certificates. When these certificates match the hostname of the remote server, running <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">ssl</span> <span class="pre">fetch</span></tt> is the only step required to verify a remote server that is accessed by either knife or the chef-client.</p>
|
161
161
|
<div class="last admonition warning">
|
162
162
|
<p class="first admonition-title">Warning</p>
|
163
|
-
<p class="last">It is the user’s responsibility to verify the authenticity of every SSL certificate before downloading it to the <tt class="docutils literal"><span class="pre">trusted_certs_dir</span></tt> directory.
|
163
|
+
<p class="last">It is the user’s responsibility to verify the authenticity of every SSL certificate before downloading it to the <tt class="docutils literal"><span class="pre">trusted_certs_dir</span></tt> directory. knife will use any certificate in that directory as if it is a 100% trusted and authentic SSL certificate. knife will not be able to determine if any certificate in this directory has been tampered with, is forged, malicious, or otherwise harmful. Therefore it is essential that users take the proper steps before downloading certificates into this directory.</p>
|
164
164
|
</div>
|
165
165
|
</td>
|
166
166
|
</tr>
|
@@ -177,7 +177,7 @@
|
|
177
177
|
<td>The <strong>knife user</strong> subcommand is used to manage the list of users and their associated RSA public key-pairs.</td>
|
178
178
|
</tr>
|
179
179
|
<tr class="row-odd"><td><a class="reference internal" href="knife_xargs.html"><em>knife xargs</em></a></td>
|
180
|
-
<td>The <strong>knife xargs</strong> subcommand is used to
|
180
|
+
<td>The <strong>knife xargs</strong> subcommand is used to take patterns from standard input, download as JSON, run a command against the downloaded JSON, and then upload any changes.</td>
|
181
181
|
</tr>
|
182
182
|
</tbody>
|
183
183
|
</table>
|
@@ -28,7 +28,7 @@
|
|
28
28
|
</head>
|
29
29
|
<body>
|
30
30
|
<div style="background-color: #212c35; text-align: left; padding: 0px 0px 0px 0px">
|
31
|
-
<a href="http://docs.
|
31
|
+
<a href="http://docs.getchef.com/"><img src="_static/chef_html_logo.png" border="0" alt="Chef"/></a>
|
32
32
|
</div>
|
33
33
|
|
34
34
|
|
@@ -41,7 +41,7 @@
|
|
41
41
|
|
42
42
|
<div class="section" id="knife">
|
43
43
|
<h1>knife<a class="headerlink" href="#knife" title="Permalink to this headline">¶</a></h1>
|
44
|
-
<p>
|
44
|
+
<p>knife is a command-line tool that provides an interface between a local chef-repo and the Chef server. knife helps users to manage:</p>
|
45
45
|
<ul class="simple">
|
46
46
|
<li>Nodes</li>
|
47
47
|
<li>Cookbooks and recipes</li>
|
@@ -52,12 +52,12 @@
|
|
52
52
|
<li>The installation of the chef-client on management workstations</li>
|
53
53
|
<li>Searching of indexed data on the Chef server</li>
|
54
54
|
</ul>
|
55
|
-
<p>The following sections describe functionality common to all
|
55
|
+
<p>The following sections describe functionality common to all knife subcommands:</p>
|
56
56
|
<ul class="simple">
|
57
57
|
<li><a class="reference internal" href="knife_using.html"><em>Working with Knife</em></a></li>
|
58
58
|
<li><a class="reference internal" href="knife_common_options.html"><em>Common Options</em></a></li>
|
59
59
|
</ul>
|
60
|
-
<p>
|
60
|
+
<p>knife includes the following sub-commands:</p>
|
61
61
|
<table border="1" class="docutils">
|
62
62
|
<colgroup>
|
63
63
|
<col width="25%" />
|
@@ -73,7 +73,7 @@
|
|
73
73
|
<td>The <strong>knife bootstrap</strong> subcommand is used to run a bootstrap operation that installs the chef-client on the target system. The bootstrap operation must specify the IP address or FQDN of the target system.</td>
|
74
74
|
</tr>
|
75
75
|
<tr class="row-odd"><td><a class="reference internal" href="knife_client.html"><em>knife client</em></a></td>
|
76
|
-
<td>The <strong>knife client</strong> subcommand is used to manage an API client list and their associated RSA public key-pairs. This allows authentication requests to be made to the Chef server by any entity that uses the Chef
|
76
|
+
<td>The <strong>knife client</strong> subcommand is used to manage an API client list and their associated RSA public key-pairs. This allows authentication requests to be made to the Chef server by any entity that uses the Chef server API, such as the chef-client and knife.</td>
|
77
77
|
</tr>
|
78
78
|
<tr class="row-even"><td><a class="reference internal" href="knife_configure.html"><em>knife configure</em></a></td>
|
79
79
|
<td>The <strong>knife configure</strong> subcommand is used to create the knife.rb and client.rb files so that they can be distributed to workstations and nodes.</td>
|
@@ -82,7 +82,7 @@
|
|
82
82
|
<td>The <strong>knife cookbook</strong> subcommand is used to interact with cookbooks that are located on the Chef server or the local chef-repo.</td>
|
83
83
|
</tr>
|
84
84
|
<tr class="row-even"><td><a class="reference internal" href="knife_cookbook_site.html"><em>knife cookbook site</em></a></td>
|
85
|
-
<td>The <strong>knife cookbook site</strong> subcommand is used to interact with cookbooks that are located at <a class="reference external" href="
|
85
|
+
<td>The <strong>knife cookbook site</strong> subcommand is used to interact with cookbooks that are located at <a class="reference external" href="https://supermarket.getchef.com/cookbooks">https://supermarket.getchef.com/cookbooks</a>. A user account is required for any community actions that write data to this site. The following arguments do not require a user account: <tt class="docutils literal"><span class="pre">download</span></tt>, <tt class="docutils literal"><span class="pre">search</span></tt>, <tt class="docutils literal"><span class="pre">install</span></tt>, and <tt class="docutils literal"><span class="pre">list</span></tt>.</td>
|
86
86
|
</tr>
|
87
87
|
<tr class="row-odd"><td><a class="reference internal" href="knife_data_bag.html"><em>knife data bag</em></a></td>
|
88
88
|
<td>The <strong>knife data bag</strong> subcommand is used to manage arbitrary stores of globally available JSON data.</td>
|
@@ -106,7 +106,7 @@
|
|
106
106
|
<td>The <strong>knife environment</strong> subcommand is used to manage environments within a single organization on the Chef server.</td>
|
107
107
|
</tr>
|
108
108
|
<tr class="row-even"><td><a class="reference internal" href="knife_exec.html"><em>knife exec</em></a></td>
|
109
|
-
<td>The <strong>knife exec</strong> subcommand uses the
|
109
|
+
<td>The <strong>knife exec</strong> subcommand uses the knife configuration file to execute Ruby scripts in the context of a fully configured chef-client. This subcommand is most often used to run scripts that will only access Chef server one time (or otherwise very infrequently). Use this subcommand any time that an operation does not warrant full usage of the knife subcommand library.</td>
|
110
110
|
</tr>
|
111
111
|
<tr class="row-odd"><td><a class="reference internal" href="knife_index_rebuild.html"><em>knife index rebuild</em></a></td>
|
112
112
|
<td>The <strong>knife index rebuild</strong> subcommand is used to rebuild the search indexes for the open source Chef server. This operation is destructive and may take some time.</td>
|
@@ -118,7 +118,7 @@
|
|
118
118
|
<td>The <strong>knife node</strong> subcommand is used to manage the nodes that exist on a Chef server.</td>
|
119
119
|
</tr>
|
120
120
|
<tr class="row-even"><td><a class="reference internal" href="knife_raw.html"><em>knife raw</em></a></td>
|
121
|
-
<td>The <strong>knife raw</strong> subcommand is used to send a REST request to a specified path using the Chef
|
121
|
+
<td>The <strong>knife raw</strong> subcommand is used to send a REST request to a specified path using the Chef server API.</td>
|
122
122
|
</tr>
|
123
123
|
<tr class="row-odd"><td><a class="reference internal" href="knife_recipe_list.html"><em>knife recipe list</em></a></td>
|
124
124
|
<td>The <strong>knife recipe list</strong> subcommand is used to view all of the recipes that are on a Chef server. A regular expression can be used to limit the results to recipes that match a specific pattern. The regular expression must be within quotes and not be surrounded by forward slashes (/).</td>
|
@@ -133,7 +133,7 @@
|
|
133
133
|
<td>The <strong>knife show</strong> subcommand is used to view the details of one (or more) objects on the Chef server. This subcommand works similar to <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">cookbook</span> <span class="pre">show</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">data</span> <span class="pre">bag</span> <span class="pre">show</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">environment</span> <span class="pre">show</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">node</span> <span class="pre">show</span></tt>, and <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">role</span> <span class="pre">show</span></tt>, but with a single verb (and a single action).</td>
|
134
134
|
</tr>
|
135
135
|
<tr class="row-odd"><td><a class="reference internal" href="knife_ssh.html"><em>knife ssh</em></a></td>
|
136
|
-
<td>The <strong>knife ssh</strong> subcommand is used to invoke SSH commands (in parallel) on a subset of nodes within an organization, based on the results of a search query.</td>
|
136
|
+
<td>The <strong>knife ssh</strong> subcommand is used to invoke SSH commands (in parallel) on a subset of nodes within an organization, based on the results of a <a class="reference external" href="http://docs.opscode.com/essentials_search.html">search query</a> made to the Chef server.</td>
|
137
137
|
</tr>
|
138
138
|
<tr class="row-even"><td><a class="reference internal" href="knife_status.html"><em>knife status</em></a></td>
|
139
139
|
<td>The <strong>knife status</strong> subcommand is used to display a brief summary of the nodes on a Chef server, including the time of the most recent successful chef-client run.</td>
|
@@ -148,7 +148,7 @@
|
|
148
148
|
<td>The <strong>knife user</strong> subcommand is used to manage the list of users and their associated RSA public key-pairs.</td>
|
149
149
|
</tr>
|
150
150
|
<tr class="row-even"><td><a class="reference internal" href="knife_xargs.html"><em>knife xargs</em></a></td>
|
151
|
-
<td>The <strong>knife xargs</strong> subcommand is used to
|
151
|
+
<td>The <strong>knife xargs</strong> subcommand is used to take patterns from standard input, download as JSON, run a command against the downloaded JSON, and then upload any changes.</td>
|
152
152
|
</tr>
|
153
153
|
</tbody>
|
154
154
|
</table>
|
@@ -28,7 +28,7 @@
|
|
28
28
|
</head>
|
29
29
|
<body>
|
30
30
|
<div style="background-color: #212c35; text-align: left; padding: 0px 0px 0px 0px">
|
31
|
-
<a href="http://docs.
|
31
|
+
<a href="http://docs.getchef.com/"><img src="_static/chef_html_logo.png" border="0" alt="Chef"/></a>
|
32
32
|
</div>
|
33
33
|
|
34
34
|
|
@@ -58,7 +58,7 @@
|
|
58
58
|
<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
|
59
59
|
<div class="admonition note">
|
60
60
|
<p class="first admonition-title">Note</p>
|
61
|
-
<p class="last">Review the list of <a class="reference internal" href="knife_common_options.html"><em>common options</em></a> available to this (and all)
|
61
|
+
<p class="last">Review the list of <a class="reference internal" href="knife_common_options.html"><em>common options</em></a> available to this (and all) knife subcommands and plugins.</p>
|
62
62
|
</div>
|
63
63
|
<p>This subcommand has the following options:</p>
|
64
64
|
<dl class="docutils">
|
@@ -84,7 +84,7 @@
|
|
84
84
|
<dt><tt class="docutils literal"><span class="pre">--bootstrap-wget-options</span> <span class="pre">OPTIONS</span></tt></dt>
|
85
85
|
<dd>Use to specify arbitrary options to be added to the bootstrap command when using GNU Wget. This option may not be used in the same command with <tt class="docutils literal"><span class="pre">--bootstrap-install-command</span></tt>.</dd>
|
86
86
|
<dt><tt class="docutils literal"><span class="pre">-d</span> <span class="pre">DISTRO</span></tt>, <tt class="docutils literal"><span class="pre">--distro</span> <span class="pre">DISTRO</span></tt></dt>
|
87
|
-
<dd><p class="first">The template file to be used during a bootstrap operation. The following distributions are supported: <tt class="docutils literal"><span class="pre">chef-full</span></tt> (the default bootstrap), <tt class="docutils literal"><span class="pre">centos5-gems</span></tt>, <tt class="docutils literal"><span class="pre">fedora13-gems</span></tt>, <tt class="docutils literal"><span class="pre">ubuntu10.04-gems</span></tt>, <tt class="docutils literal"><span class="pre">ubuntu10.04-apt</span></tt>, <tt class="docutils literal"><span class="pre">ubuntu12.04-gems</span></tt>, and the name of a custom bootstrap template file. When this option is used,
|
87
|
+
<dd><p class="first">The template file to be used during a bootstrap operation. The following distributions are supported: <tt class="docutils literal"><span class="pre">chef-full</span></tt> (the default bootstrap), <tt class="docutils literal"><span class="pre">centos5-gems</span></tt>, <tt class="docutils literal"><span class="pre">fedora13-gems</span></tt>, <tt class="docutils literal"><span class="pre">ubuntu10.04-gems</span></tt>, <tt class="docutils literal"><span class="pre">ubuntu10.04-apt</span></tt>, <tt class="docutils literal"><span class="pre">ubuntu12.04-gems</span></tt>, and the name of a custom bootstrap template file. When this option is used, knife will search for the template file in the following order: the <tt class="docutils literal"><span class="pre">bootstrap/</span></tt> folder in the current working directory, the <tt class="docutils literal"><span class="pre">bootstrap/</span></tt> folder in the chef-repo, the <tt class="docutils literal"><span class="pre">bootstrap/</span></tt> folder in the <tt class="docutils literal"><span class="pre">~/.chef/</span></tt> directory, or a default bootstrap file. Do not use the <tt class="docutils literal"><span class="pre">--template-file</span></tt> option when <tt class="docutils literal"><span class="pre">--distro</span></tt> is specified.</p>
|
88
88
|
<div class="last admonition warning">
|
89
89
|
<p class="first admonition-title">Warning</p>
|
90
90
|
<p class="last">The default bootstrap operation uses the omnibus installer, which means the default template file (<tt class="docutils literal"><span class="pre">chef-full</span></tt>) should work on all supported platforms. It is recommended to use custom bootstrap templates only when the omnibus installer cannot be used. The <tt class="docutils literal"><span class="pre">.erb</span></tt> file extension is added automatically and should not be passed as part of the bootstrap command.</p>
|
@@ -107,7 +107,7 @@
|
|
107
107
|
<dt><tt class="docutils literal"><span class="pre">-p</span> <span class="pre">PORT</span></tt>, <tt class="docutils literal"><span class="pre">--ssh-port</span> <span class="pre">PORT</span></tt></dt>
|
108
108
|
<dd>The SSH port.</dd>
|
109
109
|
<dt><tt class="docutils literal"><span class="pre">-P</span> <span class="pre">PASSWORD</span></tt>, <tt class="docutils literal"><span class="pre">--ssh-password</span> <span class="pre">PASSWORD</span></tt></dt>
|
110
|
-
<dd>The SSH password. This can be used to pass the password directly on the command line. If this option is not specified (and a password is required)
|
110
|
+
<dd>The SSH password. This can be used to pass the password directly on the command line. If this option is not specified (and a password is required) knife will prompt for the password.</dd>
|
111
111
|
<dt><tt class="docutils literal"><span class="pre">--prerelease</span></tt></dt>
|
112
112
|
<dd>Use to install pre-release gems.</dd>
|
113
113
|
<dt><tt class="docutils literal"><span class="pre">-r</span> <span class="pre">RUN_LIST</span></tt>, <tt class="docutils literal"><span class="pre">--run-list</span> <span class="pre">RUN_LIST</span></tt></dt>
|
@@ -149,11 +149,11 @@
|
|
149
149
|
bootstrap/ubuntu12.04-gems-mine.erb
|
150
150
|
</pre></div>
|
151
151
|
</div>
|
152
|
-
<p>Modify the template with any editor, then use it with the <tt class="docutils literal"><span class="pre">-d</span></tt> or <tt class="docutils literal"><span class="pre">--distro</span></tt> option in the <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">bootstrap</span></tt> operation, or use any of the
|
152
|
+
<p>Modify the template with any editor, then use it with the <tt class="docutils literal"><span class="pre">-d</span></tt> or <tt class="docutils literal"><span class="pre">--distro</span></tt> option in the <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">bootstrap</span></tt> operation, or use any of the knife plug-ins that support cloud computing.</p>
|
153
153
|
<div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife bootstrap 192.168.1.100 -r <span class="s1">'role[webserver]'</span> -d ubuntu12.04-gems-mine
|
154
154
|
</pre></div>
|
155
155
|
</div>
|
156
|
-
<p>Alternatively, an example bootstrap template can be found in the git source for the chef-repo: <a class="reference external" href="https://github.com/opscode/chef/
|
156
|
+
<p>Alternatively, an example bootstrap template can be found in the git source for the chef-repo: <a class="reference external" href="https://github.com/opscode/chef/tree/master/lib/chef/knife/bootstrap">https://github.com/opscode/chef/tree/master/lib/chef/knife/bootstrap</a>. Copy the template to <tt class="docutils literal"><span class="pre">~/.chef-repo/.chef/bootstrap/ubuntu12.04-apt.erb</span></tt> and modify the template appropriately.</p>
|
157
157
|
</div>
|
158
158
|
<div class="section" id="debian-and-apt">
|
159
159
|
<h3>Debian and Apt<a class="headerlink" href="#debian-and-apt" title="Permalink to this headline">¶</a></h3>
|
@@ -166,7 +166,7 @@
|
|
166
166
|
</div>
|
167
167
|
<p>The <strong>knife bootstrap</strong> sub-command will look in three locations for the template that is used during the bootstrap operation. The locations are:</p>
|
168
168
|
<ol class="arabic simple">
|
169
|
-
<li>A bootstrap directory in the installed
|
169
|
+
<li>A bootstrap directory in the installed knife library; the actual location may vary, depending how the chef-client is installed</li>
|
170
170
|
<li>A bootstrap directory in the <tt class="docutils literal"><span class="pre">$PWD/.chef</span></tt>, e.g. in <tt class="docutils literal"><span class="pre">~/chef-repo/.chef</span></tt></li>
|
171
171
|
<li>A bootstrap directory in the users <tt class="docutils literal"><span class="pre">$HOME/.chef</span></tt></li>
|
172
172
|
</ol>
|
@@ -237,7 +237,7 @@ vi ~/.chef/bootstrap/debian5.0-apt.erb
|
|
237
237
|
</div>
|
238
238
|
<div class="section" id="examples">
|
239
239
|
<h2>Examples<a class="headerlink" href="#examples" title="Permalink to this headline">¶</a></h2>
|
240
|
-
<p>The following examples show how to use this
|
240
|
+
<p>The following examples show how to use this knife subcommand:</p>
|
241
241
|
<p><strong>Use an SSH password</strong></p>
|
242
242
|
<div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife bootstrap 192.168.1.1 -x username -P PASSWORD --sudo
|
243
243
|
</pre></div>
|
@@ -28,7 +28,7 @@
|
|
28
28
|
</head>
|
29
29
|
<body>
|
30
30
|
<div style="background-color: #212c35; text-align: left; padding: 0px 0px 0px 0px">
|
31
|
-
<a href="http://docs.
|
31
|
+
<a href="http://docs.getchef.com/"><img src="_static/chef_html_logo.png" border="0" alt="Chef"/></a>
|
32
32
|
</div>
|
33
33
|
|
34
34
|
|
@@ -41,10 +41,10 @@
|
|
41
41
|
|
42
42
|
<div class="section" id="knife-client">
|
43
43
|
<h1>knife client<a class="headerlink" href="#knife-client" title="Permalink to this headline">¶</a></h1>
|
44
|
-
<p>The <strong>knife client</strong> subcommand is used to manage an API client list and their associated RSA public key-pairs. This allows authentication requests to be made to the Chef server by any entity that uses the Chef
|
44
|
+
<p>The <strong>knife client</strong> subcommand is used to manage an API client list and their associated RSA public key-pairs. This allows authentication requests to be made to the Chef server by any entity that uses the Chef server API, such as the chef-client and knife.</p>
|
45
45
|
<div class="admonition note">
|
46
46
|
<p class="first admonition-title">Note</p>
|
47
|
-
<p class="last">Review the list of <a class="reference internal" href="knife_common_options.html"><em>common options</em></a> available to this (and all)
|
47
|
+
<p class="last">Review the list of <a class="reference internal" href="knife_common_options.html"><em>common options</em></a> available to this (and all) knife subcommands and plugins.</p>
|
48
48
|
</div>
|
49
49
|
<div class="section" id="bulk-delete">
|
50
50
|
<h2>bulk delete<a class="headerlink" href="#bulk-delete" title="Permalink to this headline">¶</a></h2>
|
@@ -70,7 +70,7 @@
|
|
70
70
|
<p>The <tt class="docutils literal"><span class="pre">create</span></tt> argument is used to create a new API client. This process will generate an RSA key pair for the named API client. The public key will be stored on the Chef server and the private key will be displayed on <tt class="docutils literal"><span class="pre">STDOUT</span></tt> or written to a named file.</p>
|
71
71
|
<ul class="simple">
|
72
72
|
<li>For the chef-client, the private key should be copied to the system as <tt class="docutils literal"><span class="pre">/etc/chef/client.pem</span></tt>.</li>
|
73
|
-
<li>For
|
73
|
+
<li>For knife, the private key is typically copied to <tt class="docutils literal"><span class="pre">~/.chef/client_name.pem</span></tt> and referenced in the knife.rb configuration file.</li>
|
74
74
|
</ul>
|
75
75
|
<div class="section" id="id1">
|
76
76
|
<h3>Syntax<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h3>
|
@@ -93,9 +93,9 @@
|
|
93
93
|
</div>
|
94
94
|
<div class="section" id="id3">
|
95
95
|
<h3>Examples<a class="headerlink" href="#id3" title="Permalink to this headline">¶</a></h3>
|
96
|
-
<p>The following examples show how to use this
|
96
|
+
<p>The following examples show how to use this knife subcommand:</p>
|
97
97
|
<p><strong>Create an admin client</strong></p>
|
98
|
-
<p>To create a chef-client that can access the Chef
|
98
|
+
<p>To create a chef-client that can access the Chef server API as an administrator—sometimes referred to as an “API chef-client”—with the name “exampleorg” and save its private key to a file, enter:</p>
|
99
99
|
<div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife client create exampleorg -a -f <span class="s2">"/etc/chef/client.pem"</span>
|
100
100
|
</pre></div>
|
101
101
|
</div>
|
@@ -122,7 +122,7 @@
|
|
122
122
|
</div>
|
123
123
|
<div class="section" id="id6">
|
124
124
|
<h3>Examples<a class="headerlink" href="#id6" title="Permalink to this headline">¶</a></h3>
|
125
|
-
<p>The following examples show how to use this
|
125
|
+
<p>The following examples show how to use this knife subcommand:</p>
|
126
126
|
<p><strong>Delete a client</strong></p>
|
127
127
|
<p>To delete a client with the name “client_foo”, enter:</p>
|
128
128
|
<div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife client delete client_foo
|
@@ -133,7 +133,7 @@
|
|
133
133
|
</div>
|
134
134
|
<div class="section" id="edit">
|
135
135
|
<h2>edit<a class="headerlink" href="#edit" title="Permalink to this headline">¶</a></h2>
|
136
|
-
<p>The <tt class="docutils literal"><span class="pre">edit</span></tt> argument is used to edit the details of a registered API client. When this argument is run,
|
136
|
+
<p>The <tt class="docutils literal"><span class="pre">edit</span></tt> argument is used to edit the details of a registered API client. When this argument is run, knife will open $EDITOR to enable editing of the <tt class="docutils literal"><span class="pre">admin</span></tt> attribute. (None of the other attributes should be changed using this argument.) When finished, knife will update the Chef server with those changes.</p>
|
137
137
|
<div class="section" id="id7">
|
138
138
|
<h3>Syntax<a class="headerlink" href="#id7" title="Permalink to this headline">¶</a></h3>
|
139
139
|
<p>This argument has the following syntax:</p>
|
@@ -147,7 +147,7 @@
|
|
147
147
|
</div>
|
148
148
|
<div class="section" id="id9">
|
149
149
|
<h3>Examples<a class="headerlink" href="#id9" title="Permalink to this headline">¶</a></h3>
|
150
|
-
<p>The following examples show how to use this
|
150
|
+
<p>The following examples show how to use this knife subcommand:</p>
|
151
151
|
<p><strong>Edit a client</strong></p>
|
152
152
|
<p>To edit a client with the name “exampleorg”, enter:</p>
|
153
153
|
<div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife client edit exampleorg
|
@@ -175,7 +175,7 @@
|
|
175
175
|
</div>
|
176
176
|
<div class="section" id="id12">
|
177
177
|
<h3>Examples<a class="headerlink" href="#id12" title="Permalink to this headline">¶</a></h3>
|
178
|
-
<p>The following examples show how to use this
|
178
|
+
<p>The following examples show how to use this knife subcommand:</p>
|
179
179
|
<p><strong>View a list of clients</strong></p>
|
180
180
|
<p>To verify the API client list for the Chef server, enter:</p>
|
181
181
|
<div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife client list
|
@@ -218,7 +218,7 @@ Chef server correctly, try getting a list of clients using <tt class="docutils l
|
|
218
218
|
</div>
|
219
219
|
<div class="section" id="id15">
|
220
220
|
<h3>Examples<a class="headerlink" href="#id15" title="Permalink to this headline">¶</a></h3>
|
221
|
-
<p>The following examples show how to use this
|
221
|
+
<p>The following examples show how to use this knife subcommand:</p>
|
222
222
|
<p><strong>Reregister clients</strong></p>
|
223
223
|
<p>To regenerate the RSA key pair for a client named “testclient” and save it to a file named “rsa_key”, enter:</p>
|
224
224
|
<div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife client regenerate testclient -f rsa_key
|
@@ -246,7 +246,7 @@ Chef server correctly, try getting a list of clients using <tt class="docutils l
|
|
246
246
|
</div>
|
247
247
|
<div class="section" id="id18">
|
248
248
|
<h3>Examples<a class="headerlink" href="#id18" title="Permalink to this headline">¶</a></h3>
|
249
|
-
<p>The following examples show how to use this
|
249
|
+
<p>The following examples show how to use this knife subcommand:</p>
|
250
250
|
<p><strong>Show clients</strong></p>
|
251
251
|
<p>To view a client named “testclient”, enter:</p>
|
252
252
|
<div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife client show testclient
|
@@ -28,7 +28,7 @@
|
|
28
28
|
</head>
|
29
29
|
<body>
|
30
30
|
<div style="background-color: #212c35; text-align: left; padding: 0px 0px 0px 0px">
|
31
|
-
<a href="http://docs.
|
31
|
+
<a href="http://docs.getchef.com/"><img src="_static/chef_html_logo.png" border="0" alt="Chef"/></a>
|
32
32
|
</div>
|
33
33
|
|
34
34
|
|
@@ -41,16 +41,16 @@
|
|
41
41
|
|
42
42
|
<div class="section" id="common-options">
|
43
43
|
<h1>Common Options<a class="headerlink" href="#common-options" title="Permalink to this headline">¶</a></h1>
|
44
|
-
<p>The following options can be run with all
|
44
|
+
<p>The following options can be run with all knife sub-commands and plug-ins:</p>
|
45
45
|
<dl class="docutils">
|
46
46
|
<dt><tt class="docutils literal"><span class="pre">-c</span> <span class="pre">CONFIG_FILE</span></tt>, <tt class="docutils literal"><span class="pre">--config</span> <span class="pre">CONFIG_FILE</span></tt></dt>
|
47
|
-
<dd>The configuration file to use. For example, when
|
47
|
+
<dd>The configuration file to use. For example, when knife is run from a node that is configured to be managed by the Chef server, this option is used to allow knife to use the same credentials as the chef-client when communicating with the Chef server.</dd>
|
48
48
|
<dt><tt class="docutils literal"><span class="pre">--chef-zero-port</span> <span class="pre">PORT</span></tt></dt>
|
49
49
|
<dd>The port on which chef-zero will listen.</dd>
|
50
50
|
<dt><tt class="docutils literal"><span class="pre">-d</span></tt>, <tt class="docutils literal"><span class="pre">--disable-editing</span></tt></dt>
|
51
51
|
<dd>Use to prevent the $EDITOR from being opened and to accept data as-is.</dd>
|
52
52
|
<dt><tt class="docutils literal"><span class="pre">--defaults</span></tt></dt>
|
53
|
-
<dd>Use to have
|
53
|
+
<dd>Use to have knife use the default value instead of asking a user to provide one.</dd>
|
54
54
|
<dt><tt class="docutils literal"><span class="pre">-e</span> <span class="pre">EDITOR</span></tt>, <tt class="docutils literal"><span class="pre">--editor</span> <span class="pre">EDITOR</span></tt></dt>
|
55
55
|
<dd>The $EDITOR that is used for all interactive commands.</dd>
|
56
56
|
<dt><tt class="docutils literal"><span class="pre">-E</span> <span class="pre">ENVIRONMENT</span></tt>, <tt class="docutils literal"><span class="pre">--environment</span> <span class="pre">ENVIRONMENT</span></tt></dt>
|
@@ -60,7 +60,7 @@
|
|
60
60
|
<dt><tt class="docutils literal"><span class="pre">-h</span></tt>, <tt class="docutils literal"><span class="pre">--help</span></tt></dt>
|
61
61
|
<dd>Shows help for the command.</dd>
|
62
62
|
<dt><tt class="docutils literal"><span class="pre">-k</span> <span class="pre">KEY</span></tt>, <tt class="docutils literal"><span class="pre">--key</span> <span class="pre">KEY</span></tt></dt>
|
63
|
-
<dd>The private key that
|
63
|
+
<dd>The private key that knife will use to sign requests made by the API client to the Chef server.</dd>
|
64
64
|
<dt><tt class="docutils literal"><span class="pre">--[no-]color</span></tt></dt>
|
65
65
|
<dd>Use to view colored output.</dd>
|
66
66
|
<dt><tt class="docutils literal"><span class="pre">--print-after</span></tt></dt>
|
@@ -68,13 +68,13 @@
|
|
68
68
|
<dt><tt class="docutils literal"><span class="pre">-s</span> <span class="pre">URL</span></tt>, <tt class="docutils literal"><span class="pre">--server-url</span> <span class="pre">URL</span></tt></dt>
|
69
69
|
<dd>The URL for the Chef server.</dd>
|
70
70
|
<dt><tt class="docutils literal"><span class="pre">-u</span> <span class="pre">USER</span></tt>, <tt class="docutils literal"><span class="pre">--user</span> <span class="pre">USER</span></tt></dt>
|
71
|
-
<dd>The user name used by
|
71
|
+
<dd>The user name used by knife to sign requests made by the API client to the Chef server. Authentication will fail if the user name does not match the private key.</dd>
|
72
72
|
<dt><tt class="docutils literal"><span class="pre">-v</span></tt>, <tt class="docutils literal"><span class="pre">--version</span></tt></dt>
|
73
73
|
<dd>The version of the chef-client.</dd>
|
74
74
|
<dt><tt class="docutils literal"><span class="pre">-V</span></tt>, <tt class="docutils literal"><span class="pre">--verbose</span></tt></dt>
|
75
75
|
<dd>Set for more verbose outputs. Use <tt class="docutils literal"><span class="pre">-VV</span></tt> for maximum verbosity.</dd>
|
76
76
|
<dt><tt class="docutils literal"><span class="pre">-y</span></tt>, <tt class="docutils literal"><span class="pre">--yes</span></tt></dt>
|
77
|
-
<dd>Use to respond to all confirmation prompts with “Yes”.
|
77
|
+
<dd>Use to respond to all confirmation prompts with “Yes”. knife will not ask for confirmation.</dd>
|
78
78
|
<dt><tt class="docutils literal"><span class="pre">-z</span></tt>, <tt class="docutils literal"><span class="pre">--local-mode</span></tt></dt>
|
79
79
|
<dd>Use to run the chef-client in local mode. This allows all commands that work against the Chef server to also work against the local chef-repo.</dd>
|
80
80
|
</dl>
|
@@ -28,7 +28,7 @@
|
|
28
28
|
</head>
|
29
29
|
<body>
|
30
30
|
<div style="background-color: #212c35; text-align: left; padding: 0px 0px 0px 0px">
|
31
|
-
<a href="http://docs.
|
31
|
+
<a href="http://docs.getchef.com/"><img src="_static/chef_html_logo.png" border="0" alt="Chef"/></a>
|
32
32
|
</div>
|
33
33
|
|
34
34
|
|
@@ -57,7 +57,7 @@
|
|
57
57
|
<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
|
58
58
|
<div class="admonition note">
|
59
59
|
<p class="first admonition-title">Note</p>
|
60
|
-
<p class="last">Review the list of <a class="reference internal" href="knife_common_options.html"><em>common options</em></a> available to this (and all)
|
60
|
+
<p class="last">Review the list of <a class="reference internal" href="knife_common_options.html"><em>common options</em></a> available to this (and all) knife subcommands and plugins.</p>
|
61
61
|
</div>
|
62
62
|
<p>This subcommand has the following options for use when configuring a knife.rb file:</p>
|
63
63
|
<dl class="docutils">
|
@@ -77,7 +77,7 @@
|
|
77
77
|
</div>
|
78
78
|
<div class="section" id="examples">
|
79
79
|
<h2>Examples<a class="headerlink" href="#examples" title="Permalink to this headline">¶</a></h2>
|
80
|
-
<p>The following examples show how to use this
|
80
|
+
<p>The following examples show how to use this knife subcommand:</p>
|
81
81
|
<p><strong>Configure knife.rb</strong></p>
|
82
82
|
<div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife configure
|
83
83
|
</pre></div>
|