chef 12.21.31-universal-mingw32 → 12.22.1-universal-mingw32
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CONTRIBUTING.md +151 -151
- data/Gemfile +95 -95
- data/LICENSE +201 -201
- data/README.md +309 -309
- data/Rakefile +104 -104
- data/VERSION +1 -1
- data/acceptance/.gitignore +3 -3
- data/acceptance/.shared/kitchen_acceptance/.kitchen.digitalocean.yml +33 -33
- data/acceptance/.shared/kitchen_acceptance/.kitchen.ec2.yml +283 -283
- data/acceptance/.shared/kitchen_acceptance/.kitchen.vagrant.yml +59 -59
- data/acceptance/.shared/kitchen_acceptance/libraries/kitchen.rb +68 -68
- data/acceptance/.shared/kitchen_acceptance/metadata.rb +1 -1
- data/acceptance/Gemfile +16 -16
- data/acceptance/Gemfile.lock +258 -258
- data/acceptance/README.md +137 -137
- data/acceptance/basics/.acceptance/acceptance-cookbook/.gitignore +2 -2
- data/acceptance/basics/.acceptance/acceptance-cookbook/metadata.rb +3 -3
- data/acceptance/basics/.acceptance/acceptance-cookbook/recipes/destroy.rb +1 -1
- data/acceptance/basics/.acceptance/acceptance-cookbook/recipes/provision.rb +1 -1
- data/acceptance/basics/.acceptance/acceptance-cookbook/recipes/verify.rb +1 -1
- data/acceptance/basics/.kitchen.yml +4 -4
- data/acceptance/basics/test/integration/chef-current-install/serverspec/chef_client_spec.rb +19 -19
- data/acceptance/basics/test/integration/chef-current-install/serverspec/spec_helper.rb +6 -6
- data/acceptance/basics/test/integration/helpers/serverspec/Gemfile +8 -8
- data/acceptance/data-collector/.acceptance/acceptance-cookbook/.gitignore +2 -2
- data/acceptance/data-collector/.acceptance/acceptance-cookbook/metadata.rb +3 -3
- data/acceptance/data-collector/.acceptance/acceptance-cookbook/recipes/destroy.rb +2 -2
- data/acceptance/data-collector/.acceptance/acceptance-cookbook/recipes/provision.rb +2 -2
- data/acceptance/data-collector/.acceptance/acceptance-cookbook/recipes/verify.rb +2 -2
- data/acceptance/data-collector/.acceptance/data-collector-test/.gitignore +16 -16
- data/acceptance/data-collector/.acceptance/data-collector-test/Berksfile +3 -3
- data/acceptance/data-collector/.acceptance/data-collector-test/files/default/api.rb +85 -85
- data/acceptance/data-collector/.acceptance/data-collector-test/files/default/apigemfile +3 -3
- data/acceptance/data-collector/.acceptance/data-collector-test/files/default/client-rb-both-mode.rb +4 -4
- data/acceptance/data-collector/.acceptance/data-collector-test/files/default/client-rb-client-mode.rb +4 -4
- data/acceptance/data-collector/.acceptance/data-collector-test/files/default/client-rb-no-endpoint.rb +2 -2
- data/acceptance/data-collector/.acceptance/data-collector-test/files/default/client-rb-solo-mode.rb +4 -4
- data/acceptance/data-collector/.acceptance/data-collector-test/files/default/config.ru +2 -2
- data/acceptance/data-collector/.acceptance/data-collector-test/metadata.rb +7 -7
- data/acceptance/data-collector/.acceptance/data-collector-test/recipes/default.rb +38 -38
- data/acceptance/data-collector/.kitchen.yml +9 -9
- data/acceptance/data-collector/Berksfile +3 -3
- data/acceptance/data-collector/test/integration/default/serverspec/default_spec.rb +204 -204
- data/acceptance/data-collector/test/integration/helpers/serverspec/Gemfile +8 -8
- data/acceptance/fips/.acceptance/acceptance-cookbook/.gitignore +2 -2
- data/acceptance/fips/.acceptance/acceptance-cookbook/metadata.rb +2 -2
- data/acceptance/fips/.acceptance/acceptance-cookbook/recipes/destroy.rb +1 -1
- data/acceptance/fips/.acceptance/acceptance-cookbook/recipes/provision.rb +1 -1
- data/acceptance/fips/.acceptance/acceptance-cookbook/recipes/verify.rb +1 -1
- data/acceptance/fips/.kitchen.yml +8 -8
- data/acceptance/fips/test/integration/fips-integration/serverspec/Gemfile +9 -9
- data/acceptance/fips/test/integration/fips-integration/serverspec/fips-integration_spec.rb +52 -52
- data/acceptance/fips/test/integration/fips-unit-functional/serverspec/Gemfile +7 -7
- data/acceptance/fips/test/integration/fips-unit-functional/serverspec/fips-unit-functional_spec.rb +56 -56
- data/acceptance/omnitruck/.acceptance/acceptance-cookbook/.gitignore +2 -2
- data/acceptance/omnitruck/.acceptance/acceptance-cookbook/metadata.rb +1 -1
- data/acceptance/omnitruck/.acceptance/acceptance-cookbook/recipes/destroy.rb +1 -1
- data/acceptance/omnitruck/.acceptance/acceptance-cookbook/recipes/provision.rb +1 -1
- data/acceptance/omnitruck/.acceptance/acceptance-cookbook/recipes/verify.rb +61 -61
- data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/.gitignore +2 -2
- data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/libraries/cookbook_kitchen.rb +43 -43
- data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/libraries/top_cookbooks.rb +39 -39
- data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/metadata.rb +3 -3
- data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/recipes/destroy.rb +1 -1
- data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/recipes/provision.rb +1 -1
- data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/recipes/verify.rb +1 -1
- data/acceptance/top-cookbooks/.gitignore +1 -1
- data/acceptance/top-cookbooks/.kitchen.chocolatey.yml +6 -6
- data/acceptance/top-cookbooks/.kitchen.iis.yml +4 -4
- data/acceptance/top-cookbooks/.kitchen.learn-the-basics-rhel.yml +7 -7
- data/acceptance/top-cookbooks/.kitchen.learn-the-basics-ubuntu.yml +7 -7
- data/acceptance/top-cookbooks/.kitchen.learn-the-basics-windows.yml +7 -7
- data/acceptance/top-cookbooks/.kitchen.powershell.yml +4 -4
- data/acceptance/top-cookbooks/.kitchen.sql_server.yml +5 -5
- data/acceptance/top-cookbooks/.kitchen.winbox.yml +8 -8
- data/acceptance/top-cookbooks/.kitchen.windows.yml +38 -38
- data/acceptance/trivial/.acceptance/acceptance-cookbook/.gitignore +2 -2
- data/acceptance/trivial/.acceptance/acceptance-cookbook/metadata.rb +2 -2
- data/acceptance/trivial/.acceptance/acceptance-cookbook/recipes/destroy.rb +1 -1
- data/acceptance/trivial/.acceptance/acceptance-cookbook/recipes/provision.rb +1 -1
- data/acceptance/trivial/.acceptance/acceptance-cookbook/recipes/verify.rb +1 -1
- data/acceptance/trivial/.kitchen.yml +7 -7
- data/acceptance/trivial/test/integration/chef-current-install/inspec/chef_client_spec.rb +5 -5
- data/acceptance/windows-service/.acceptance/acceptance-cookbook/.gitignore +2 -2
- data/acceptance/windows-service/.acceptance/acceptance-cookbook/metadata.rb +2 -2
- data/acceptance/windows-service/.acceptance/acceptance-cookbook/recipes/destroy.rb +1 -1
- data/acceptance/windows-service/.acceptance/acceptance-cookbook/recipes/provision.rb +1 -1
- data/acceptance/windows-service/.acceptance/acceptance-cookbook/recipes/verify.rb +1 -1
- data/acceptance/windows-service/.kitchen.yml +7 -7
- data/acceptance/windows-service/test/integration/chef-windows-service/inspec/chef_windows_service_spec.rb +58 -58
- data/bin/chef-apply +25 -25
- data/bin/chef-client +26 -26
- data/bin/chef-service-manager +38 -38
- data/bin/chef-shell +34 -34
- data/bin/chef-solo +25 -25
- data/bin/chef-windows-service +35 -35
- data/bin/knife +25 -25
- data/chef-universal-mingw32.gemspec +23 -23
- data/chef.gemspec +61 -61
- data/distro/common/html/_sources/ctl_chef_client.txt +35 -35
- data/distro/common/html/_sources/ctl_chef_server.txt +341 -341
- data/distro/common/html/_sources/ctl_chef_shell.txt +15 -15
- data/distro/common/html/_sources/ctl_chef_solo.txt +25 -25
- data/distro/common/html/_sources/index.txt +135 -135
- data/distro/common/html/_sources/knife.txt +74 -74
- data/distro/common/html/_sources/knife_bootstrap.txt +56 -56
- data/distro/common/html/_sources/knife_client.txt +150 -150
- data/distro/common/html/_sources/knife_common_options.txt +6 -6
- data/distro/common/html/_sources/knife_configure.txt +29 -29
- data/distro/common/html/_sources/knife_cookbook.txt +236 -236
- data/distro/common/html/_sources/knife_cookbook_site.txt +157 -157
- data/distro/common/html/_sources/knife_data_bag.txt +159 -159
- data/distro/common/html/_sources/knife_delete.txt +26 -26
- data/distro/common/html/_sources/knife_deps.txt +61 -61
- data/distro/common/html/_sources/knife_diff.txt +34 -34
- data/distro/common/html/_sources/knife_download.txt +44 -44
- data/distro/common/html/_sources/knife_edit.txt +26 -26
- data/distro/common/html/_sources/knife_environment.txt +158 -158
- data/distro/common/html/_sources/knife_exec.txt +47 -47
- data/distro/common/html/_sources/knife_index_rebuild.txt +20 -20
- data/distro/common/html/_sources/knife_list.txt +33 -33
- data/distro/common/html/_sources/knife_node.txt +250 -250
- data/distro/common/html/_sources/knife_raw.txt +35 -35
- data/distro/common/html/_sources/knife_recipe_list.txt +23 -23
- data/distro/common/html/_sources/knife_role.txt +157 -157
- data/distro/common/html/_sources/knife_search.txt +53 -53
- data/distro/common/html/_sources/knife_serve.txt +18 -18
- data/distro/common/html/_sources/knife_show.txt +26 -26
- data/distro/common/html/_sources/knife_ssh.txt +43 -43
- data/distro/common/html/_sources/knife_ssl_check.txt +41 -41
- data/distro/common/html/_sources/knife_ssl_fetch.txt +41 -41
- data/distro/common/html/_sources/knife_status.txt +37 -37
- data/distro/common/html/_sources/knife_tag.txt +69 -69
- data/distro/common/html/_sources/knife_upload.txt +49 -49
- data/distro/common/html/_sources/knife_user.txt +127 -127
- data/distro/common/html/_sources/knife_using.txt +43 -43
- data/distro/common/html/_sources/knife_xargs.txt +30 -30
- data/distro/common/html/_static/basic.css +536 -536
- data/distro/common/html/_static/doctools.js +238 -238
- data/distro/common/html/_static/guide.css +504 -504
- data/distro/common/html/_static/pygments.css +61 -61
- data/distro/common/html/_static/searchtools.js +621 -621
- data/distro/common/html/_static/underscore.js +31 -31
- data/distro/common/html/_static/websupport.js +808 -808
- data/distro/common/html/ctl_chef_client.html +269 -269
- data/distro/common/html/ctl_chef_server.html +727 -727
- data/distro/common/html/ctl_chef_shell.html +162 -162
- data/distro/common/html/ctl_chef_solo.html +193 -193
- data/distro/common/html/index.html +201 -201
- data/distro/common/html/knife.html +169 -169
- data/distro/common/html/knife_bootstrap.html +284 -284
- data/distro/common/html/knife_client.html +284 -284
- data/distro/common/html/knife_common_options.html +95 -95
- data/distro/common/html/knife_configure.html +104 -104
- data/distro/common/html/knife_cookbook.html +486 -486
- data/distro/common/html/knife_cookbook_site.html +375 -375
- data/distro/common/html/knife_data_bag.html +373 -373
- data/distro/common/html/knife_delete.html +92 -92
- data/distro/common/html/knife_deps.html +142 -142
- data/distro/common/html/knife_diff.html +122 -122
- data/distro/common/html/knife_download.html +144 -144
- data/distro/common/html/knife_edit.html +88 -88
- data/distro/common/html/knife_environment.html +322 -322
- data/distro/common/html/knife_exec.html +219 -219
- data/distro/common/html/knife_index_rebuild.html +82 -82
- data/distro/common/html/knife_list.html +113 -113
- data/distro/common/html/knife_node.html +457 -457
- data/distro/common/html/knife_raw.html +109 -109
- data/distro/common/html/knife_recipe_list.html +90 -90
- data/distro/common/html/knife_role.html +294 -294
- data/distro/common/html/knife_search.html +202 -202
- data/distro/common/html/knife_serve.html +78 -78
- data/distro/common/html/knife_show.html +103 -103
- data/distro/common/html/knife_ssh.html +176 -176
- data/distro/common/html/knife_ssl_check.html +150 -150
- data/distro/common/html/knife_ssl_fetch.html +150 -150
- data/distro/common/html/knife_status.html +143 -143
- data/distro/common/html/knife_tag.html +137 -137
- data/distro/common/html/knife_upload.html +152 -152
- data/distro/common/html/knife_user.html +241 -241
- data/distro/common/html/knife_using.html +209 -209
- data/distro/common/html/knife_xargs.html +121 -121
- data/distro/common/html/search.html +81 -81
- data/distro/common/man/man1/README.md +58 -58
- data/distro/common/man/man1/chef-shell.1 +194 -194
- data/distro/common/man/man1/knife-bootstrap.1 +215 -215
- data/distro/common/man/man1/knife-client.1 +443 -443
- data/distro/common/man/man1/knife-configure.1 +161 -161
- data/distro/common/man/man1/knife-cookbook-site.1 +552 -552
- data/distro/common/man/man1/knife-cookbook.1 +770 -770
- data/distro/common/man/man1/knife-data-bag.1 +617 -617
- data/distro/common/man/man1/knife-delete.1 +127 -127
- data/distro/common/man/man1/knife-deps.1 +246 -246
- data/distro/common/man/man1/knife-diff.1 +226 -226
- data/distro/common/man/man1/knife-download.1 +258 -258
- data/distro/common/man/man1/knife-edit.1 +121 -121
- data/distro/common/man/man1/knife-environment.1 +496 -496
- data/distro/common/man/man1/knife-exec.1 +362 -362
- data/distro/common/man/man1/knife-index-rebuild.1 +63 -63
- data/distro/common/man/man1/knife-list.1 +174 -174
- data/distro/common/man/man1/knife-node.1 +716 -716
- data/distro/common/man/man1/knife-raw.1 +172 -172
- data/distro/common/man/man1/knife-recipe-list.1 +85 -85
- data/distro/common/man/man1/knife-role.1 +426 -426
- data/distro/common/man/man1/knife-search.1 +359 -359
- data/distro/common/man/man1/knife-serve.1 +109 -109
- data/distro/common/man/man1/knife-show.1 +160 -160
- data/distro/common/man/man1/knife-ssh.1 +284 -284
- data/distro/common/man/man1/knife-ssl-check.1 +207 -207
- data/distro/common/man/man1/knife-ssl-fetch.1 +207 -207
- data/distro/common/man/man1/knife-status.1 +234 -234
- data/distro/common/man/man1/knife-tag.1 +189 -189
- data/distro/common/man/man1/knife-upload.1 +280 -280
- data/distro/common/man/man1/knife-user.1 +356 -356
- data/distro/common/man/man1/knife-xargs.1 +189 -189
- data/distro/common/man/man1/knife.1 +332 -332
- data/distro/common/man/man8/chef-apply.8 +86 -86
- data/distro/common/man/man8/chef-client.8 +398 -398
- data/distro/common/man/man8/chef-solo.8 +260 -260
- data/distro/common/markdown/README +3 -3
- data/distro/common/markdown/man1/chef-shell.mkd +195 -195
- data/distro/common/markdown/man1/knife-bootstrap.mkd +141 -141
- data/distro/common/markdown/man1/knife-client.mkd +103 -103
- data/distro/common/markdown/man1/knife-configure.mkd +71 -71
- data/distro/common/markdown/man1/knife-cookbook-site.mkd +123 -123
- data/distro/common/markdown/man1/knife-cookbook.mkd +263 -263
- data/distro/common/markdown/man1/knife-data-bag.mkd +121 -121
- data/distro/common/markdown/man1/knife-environment.mkd +151 -151
- data/distro/common/markdown/man1/knife-exec.mkd +42 -42
- data/distro/common/markdown/man1/knife-index.mkd +30 -30
- data/distro/common/markdown/man1/knife-node.mkd +130 -130
- data/distro/common/markdown/man1/knife-role.mkd +85 -85
- data/distro/common/markdown/man1/knife-search.mkd +180 -180
- data/distro/common/markdown/man1/knife-ssh.mkd +69 -69
- data/distro/common/markdown/man1/knife-status.mkd +36 -36
- data/distro/common/markdown/man1/knife-tag.mkd +39 -39
- data/distro/common/markdown/man1/knife.mkd +213 -213
- data/distro/common/markdown/man8/chef-client.mkd +75 -75
- data/distro/common/markdown/man8/chef-expander.mkd +81 -81
- data/distro/common/markdown/man8/chef-expanderctl.mkd +57 -57
- data/distro/common/markdown/man8/chef-server-webui.mkd +121 -121
- data/distro/common/markdown/man8/chef-server.mkd +120 -120
- data/distro/common/markdown/man8/chef-solo.mkd +107 -107
- data/distro/common/markdown/man8/chef-solr.mkd +89 -89
- data/distro/powershell/chef/chef.psm1 +442 -442
- data/ext/win32-eventlog/Rakefile +53 -53
- data/ext/win32-eventlog/chef-log.man +56 -56
- data/lib-backcompat/chef/chef_fs/file_system/acl_entry.rb +5 -5
- data/lib-backcompat/chef/chef_fs/file_system/already_exists_error.rb +20 -20
- data/lib-backcompat/chef/chef_fs/file_system/chef_repository_file_system_root_dir.rb +5 -5
- data/lib-backcompat/chef/chef_fs/file_system/chef_server_root_dir.rb +5 -5
- data/lib-backcompat/chef/chef_fs/file_system/cookbook_frozen_error.rb +20 -20
- data/lib-backcompat/chef/chef_fs/file_system/default_environment_cannot_be_modified_error.rb +20 -20
- data/lib-backcompat/chef/chef_fs/file_system/file_system_error.rb +20 -20
- data/lib-backcompat/chef/chef_fs/file_system/must_delete_recursively_error.rb +20 -20
- data/lib-backcompat/chef/chef_fs/file_system/not_found_error.rb +20 -20
- data/lib-backcompat/chef/chef_fs/file_system/operation_failed_error.rb +20 -20
- data/lib-backcompat/chef/chef_fs/file_system/operation_not_allowed_error.rb +20 -20
- data/lib-backcompat/chef/chef_fs/file_system/repository/chef_repository_file_system_acls_dir.rb +5 -5
- data/lib-backcompat/chef/chef_fs/file_system/repository/chef_repository_file_system_client_keys_dir.rb +5 -5
- data/lib-backcompat/chef/chef_fs/file_system/repository/chef_repository_file_system_entry.rb +6 -6
- data/lib-backcompat/chef/chef_fs/file_system/repository/chef_repository_file_system_policies_dir.rb +5 -5
- data/lib-backcompat/chef/chef_fs/file_system/repository/file_system_root_dir.rb +34 -34
- data/lib/chef.rb +35 -35
- data/lib/chef/api_client.rb +231 -231
- data/lib/chef/api_client/registration.rb +192 -192
- data/lib/chef/api_client_v1.rb +323 -323
- data/lib/chef/application.rb +378 -378
- data/lib/chef/application/apply.rb +219 -219
- data/lib/chef/application/client.rb +528 -528
- data/lib/chef/application/exit_code.rb +233 -233
- data/lib/chef/application/knife.rb +216 -216
- data/lib/chef/application/solo.rb +379 -379
- data/lib/chef/application/windows_service.rb +337 -337
- data/lib/chef/application/windows_service_manager.rb +204 -204
- data/lib/chef/applications.rb +4 -4
- data/lib/chef/audit/audit_event_proxy.rb +93 -93
- data/lib/chef/audit/audit_reporter.rb +176 -176
- data/lib/chef/audit/control_group_data.rb +139 -139
- data/lib/chef/audit/logger.rb +36 -36
- data/lib/chef/audit/rspec_formatter.rb +37 -37
- data/lib/chef/audit/runner.rb +196 -196
- data/lib/chef/chef_class.rb +240 -240
- data/lib/chef/chef_fs.rb +59 -59
- data/lib/chef/chef_fs/chef_fs_data_store.rb +870 -870
- data/lib/chef/chef_fs/command_line.rb +292 -292
- data/lib/chef/chef_fs/config.rb +284 -284
- data/lib/chef/chef_fs/data_handler/acl_data_handler.rb +26 -26
- data/lib/chef/chef_fs/data_handler/client_data_handler.rb +39 -39
- data/lib/chef/chef_fs/data_handler/client_key_data_handler.rb +11 -11
- data/lib/chef/chef_fs/data_handler/container_data_handler.rb +35 -35
- data/lib/chef/chef_fs/data_handler/cookbook_data_handler.rb +38 -38
- data/lib/chef/chef_fs/data_handler/data_bag_item_data_handler.rb +62 -62
- data/lib/chef/chef_fs/data_handler/data_handler_base.rb +205 -205
- data/lib/chef/chef_fs/data_handler/environment_data_handler.rb +40 -40
- data/lib/chef/chef_fs/data_handler/group_data_handler.rb +55 -55
- data/lib/chef/chef_fs/data_handler/node_data_handler.rb +36 -36
- data/lib/chef/chef_fs/data_handler/organization_data_handler.rb +36 -36
- data/lib/chef/chef_fs/data_handler/organization_invites_data_handler.rb +17 -17
- data/lib/chef/chef_fs/data_handler/organization_members_data_handler.rb +17 -17
- data/lib/chef/chef_fs/data_handler/policy_data_handler.rb +48 -48
- data/lib/chef/chef_fs/data_handler/policy_group_data_handler.rb +33 -33
- data/lib/chef/chef_fs/data_handler/role_data_handler.rb +40 -40
- data/lib/chef/chef_fs/data_handler/user_data_handler.rb +29 -29
- data/lib/chef/chef_fs/file_pattern.rb +301 -301
- data/lib/chef/chef_fs/file_system.rb +431 -431
- data/lib/chef/chef_fs/file_system/base_fs_dir.rb +47 -47
- data/lib/chef/chef_fs/file_system/base_fs_object.rb +187 -187
- data/lib/chef/chef_fs/file_system/chef_server/acl_dir.rb +65 -65
- data/lib/chef/chef_fs/file_system/chef_server/acl_entry.rb +67 -67
- data/lib/chef/chef_fs/file_system/chef_server/acls_dir.rb +75 -75
- data/lib/chef/chef_fs/file_system/chef_server/chef_server_root_dir.rb +196 -196
- data/lib/chef/chef_fs/file_system/chef_server/cookbook_artifact_dir.rb +38 -38
- data/lib/chef/chef_fs/file_system/chef_server/cookbook_artifacts_dir.rb +102 -102
- data/lib/chef/chef_fs/file_system/chef_server/cookbook_dir.rb +221 -221
- data/lib/chef/chef_fs/file_system/chef_server/cookbook_file.rb +78 -78
- data/lib/chef/chef_fs/file_system/chef_server/cookbook_subdir.rb +61 -61
- data/lib/chef/chef_fs/file_system/chef_server/cookbooks_acl_dir.rb +42 -42
- data/lib/chef/chef_fs/file_system/chef_server/cookbooks_dir.rb +101 -101
- data/lib/chef/chef_fs/file_system/chef_server/data_bag_dir.rb +76 -76
- data/lib/chef/chef_fs/file_system/chef_server/data_bag_entry.rb +19 -19
- data/lib/chef/chef_fs/file_system/chef_server/data_bags_dir.rb +67 -67
- data/lib/chef/chef_fs/file_system/chef_server/environments_dir.rb +56 -56
- data/lib/chef/chef_fs/file_system/chef_server/nodes_dir.rb +51 -51
- data/lib/chef/chef_fs/file_system/chef_server/org_entry.rb +35 -35
- data/lib/chef/chef_fs/file_system/chef_server/organization_invites_entry.rb +65 -65
- data/lib/chef/chef_fs/file_system/chef_server/organization_members_entry.rb +64 -64
- data/lib/chef/chef_fs/file_system/chef_server/policies_acl_dir.rb +41 -41
- data/lib/chef/chef_fs/file_system/chef_server/policies_dir.rb +158 -158
- data/lib/chef/chef_fs/file_system/chef_server/policy_group_entry.rb +135 -135
- data/lib/chef/chef_fs/file_system/chef_server/policy_groups_dir.rb +43 -43
- data/lib/chef/chef_fs/file_system/chef_server/policy_revision_entry.rb +38 -38
- data/lib/chef/chef_fs/file_system/chef_server/rest_list_dir.rb +176 -176
- data/lib/chef/chef_fs/file_system/chef_server/rest_list_entry.rb +198 -198
- data/lib/chef/chef_fs/file_system/chef_server/versioned_cookbook_dir.rb +45 -45
- data/lib/chef/chef_fs/file_system/chef_server/versioned_cookbooks_dir.rb +107 -107
- data/lib/chef/chef_fs/file_system/exceptions.rb +105 -105
- data/lib/chef/chef_fs/file_system/memory/memory_dir.rb +53 -53
- data/lib/chef/chef_fs/file_system/memory/memory_file.rb +20 -20
- data/lib/chef/chef_fs/file_system/memory/memory_root.rb +23 -23
- data/lib/chef/chef_fs/file_system/multiplexed_dir.rb +62 -62
- data/lib/chef/chef_fs/file_system/nonexistent_fs_object.rb +32 -32
- data/lib/chef/chef_fs/file_system/repository/acl.rb +45 -45
- data/lib/chef/chef_fs/file_system/repository/acls_dir.rb +50 -50
- data/lib/chef/chef_fs/file_system/repository/acls_sub_dir.rb +38 -38
- data/lib/chef/chef_fs/file_system/repository/base_file.rb +155 -155
- data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_artifact_dir.rb +41 -41
- data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_dir.rb +144 -144
- data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_entry.rb +177 -177
- data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_root_dir.rb +231 -231
- data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_versioned_cookbook_dir.rb +42 -42
- data/lib/chef/chef_fs/file_system/repository/client.rb +38 -38
- data/lib/chef/chef_fs/file_system/repository/client_key.rb +38 -38
- data/lib/chef/chef_fs/file_system/repository/client_keys_dir.rb +42 -42
- data/lib/chef/chef_fs/file_system/repository/client_keys_sub_dir.rb +38 -38
- data/lib/chef/chef_fs/file_system/repository/clients_dir.rb +37 -37
- data/lib/chef/chef_fs/file_system/repository/container.rb +38 -38
- data/lib/chef/chef_fs/file_system/repository/containers_dir.rb +37 -37
- data/lib/chef/chef_fs/file_system/repository/cookbook_artifacts_dir.rb +36 -36
- data/lib/chef/chef_fs/file_system/repository/cookbooks_dir.rb +51 -51
- data/lib/chef/chef_fs/file_system/repository/data_bag.rb +39 -39
- data/lib/chef/chef_fs/file_system/repository/data_bag_item.rb +38 -38
- data/lib/chef/chef_fs/file_system/repository/data_bags_dir.rb +39 -39
- data/lib/chef/chef_fs/file_system/repository/directory.rb +167 -167
- data/lib/chef/chef_fs/file_system/repository/environment.rb +38 -38
- data/lib/chef/chef_fs/file_system/repository/environments_dir.rb +37 -37
- data/lib/chef/chef_fs/file_system/repository/file_system_entry.rb +151 -151
- data/lib/chef/chef_fs/file_system/repository/group.rb +38 -38
- data/lib/chef/chef_fs/file_system/repository/groups_dir.rb +37 -37
- data/lib/chef/chef_fs/file_system/repository/node.rb +38 -38
- data/lib/chef/chef_fs/file_system/repository/nodes_dir.rb +59 -59
- data/lib/chef/chef_fs/file_system/repository/policies_dir.rb +42 -42
- data/lib/chef/chef_fs/file_system/repository/policy.rb +38 -38
- data/lib/chef/chef_fs/file_system/repository/policy_group.rb +38 -38
- data/lib/chef/chef_fs/file_system/repository/policy_groups_dir.rb +37 -37
- data/lib/chef/chef_fs/file_system/repository/role.rb +38 -38
- data/lib/chef/chef_fs/file_system/repository/roles_dir.rb +37 -37
- data/lib/chef/chef_fs/file_system/repository/user.rb +38 -38
- data/lib/chef/chef_fs/file_system/repository/users_dir.rb +37 -37
- data/lib/chef/chef_fs/file_system/repository/versioned_cookbooks_dir.rb +34 -34
- data/lib/chef/chef_fs/file_system_cache.rb +80 -80
- data/lib/chef/chef_fs/knife.rb +161 -161
- data/lib/chef/chef_fs/parallelizer.rb +103 -103
- data/lib/chef/chef_fs/parallelizer/flatten_enumerable.rb +35 -35
- data/lib/chef/chef_fs/parallelizer/parallel_enumerable.rb +277 -277
- data/lib/chef/chef_fs/path_utils.rb +127 -127
- data/lib/chef/client.rb +1023 -1023
- data/lib/chef/config.rb +85 -85
- data/lib/chef/config_fetcher.rb +72 -72
- data/lib/chef/constants.rb +28 -28
- data/lib/chef/cookbook/chefignore.rb +74 -74
- data/lib/chef/cookbook/cookbook_collection.rb +63 -63
- data/lib/chef/cookbook/cookbook_version_loader.rb +351 -351
- data/lib/chef/cookbook/file_system_file_vendor.rb +58 -58
- data/lib/chef/cookbook/file_vendor.rb +71 -71
- data/lib/chef/cookbook/gem_installer.rb +84 -84
- data/lib/chef/cookbook/metadata.rb +912 -912
- data/lib/chef/cookbook/remote_file_vendor.rb +87 -87
- data/lib/chef/cookbook/synchronizer.rb +298 -298
- data/lib/chef/cookbook/syntax_check.rb +260 -260
- data/lib/chef/cookbook_loader.rb +200 -200
- data/lib/chef/cookbook_manifest.rb +290 -290
- data/lib/chef/cookbook_site_streaming_uploader.rb +243 -243
- data/lib/chef/cookbook_uploader.rb +157 -157
- data/lib/chef/cookbook_version.rb +637 -637
- data/lib/chef/daemon.rb +131 -131
- data/lib/chef/data_bag.rb +176 -176
- data/lib/chef/data_bag_item.rb +218 -218
- data/lib/chef/data_collector.rb +489 -489
- data/lib/chef/data_collector/messages.rb +98 -98
- data/lib/chef/data_collector/messages/helpers.rb +161 -161
- data/lib/chef/data_collector/resource_report.rb +123 -123
- data/lib/chef/decorator.rb +81 -81
- data/lib/chef/decorator/lazy.rb +60 -60
- data/lib/chef/decorator/lazy_array.rb +59 -59
- data/lib/chef/decorator/unchain.rb +59 -59
- data/lib/chef/delayed_evaluator.rb +21 -21
- data/lib/chef/deprecated.rb +250 -250
- data/lib/chef/deprecation/mixin/template.rb +48 -48
- data/lib/chef/deprecation/provider/cookbook_file.rb +54 -54
- data/lib/chef/deprecation/provider/file.rb +198 -198
- data/lib/chef/deprecation/provider/remote_directory.rb +52 -52
- data/lib/chef/deprecation/provider/remote_file.rb +85 -85
- data/lib/chef/deprecation/provider/template.rb +63 -63
- data/lib/chef/deprecation/warnings.rb +36 -36
- data/lib/chef/digester.rb +74 -74
- data/lib/chef/dsl.rb +6 -6
- data/lib/chef/dsl/audit.rb +51 -51
- data/lib/chef/dsl/chef_provisioning.rb +57 -57
- data/lib/chef/dsl/cheffish.rb +65 -65
- data/lib/chef/dsl/core.rb +52 -52
- data/lib/chef/dsl/data_query.rb +89 -89
- data/lib/chef/dsl/declare_resource.rb +295 -295
- data/lib/chef/dsl/definitions.rb +43 -43
- data/lib/chef/dsl/include_attribute.rb +61 -61
- data/lib/chef/dsl/include_recipe.rb +44 -44
- data/lib/chef/dsl/method_missing.rb +75 -75
- data/lib/chef/dsl/platform_introspection.rb +268 -268
- data/lib/chef/dsl/powershell.rb +29 -29
- data/lib/chef/dsl/reboot_pending.rb +64 -64
- data/lib/chef/dsl/recipe.rb +95 -95
- data/lib/chef/dsl/registry_helper.rb +63 -63
- data/lib/chef/dsl/resources.rb +56 -56
- data/lib/chef/dsl/universal.rb +50 -50
- data/lib/chef/encrypted_data_bag_item.rb +155 -155
- data/lib/chef/encrypted_data_bag_item/assertions.rb +54 -54
- data/lib/chef/encrypted_data_bag_item/check_encrypted.rb +56 -56
- data/lib/chef/encrypted_data_bag_item/decryption_failure.rb +22 -22
- data/lib/chef/encrypted_data_bag_item/decryptor.rb +227 -227
- data/lib/chef/encrypted_data_bag_item/encrypted_data_bag_item_assertions.rb +37 -37
- data/lib/chef/encrypted_data_bag_item/encryption_failure.rb +22 -22
- data/lib/chef/encrypted_data_bag_item/encryptor.rb +225 -225
- data/lib/chef/encrypted_data_bag_item/unacceptable_encrypted_data_bag_item_format.rb +22 -22
- data/lib/chef/encrypted_data_bag_item/unsupported_cipher.rb +22 -22
- data/lib/chef/encrypted_data_bag_item/unsupported_encrypted_data_bag_item_format.rb +22 -22
- data/lib/chef/environment.rb +324 -324
- data/lib/chef/event_dispatch/base.rb +429 -429
- data/lib/chef/event_dispatch/dispatcher.rb +62 -62
- data/lib/chef/event_dispatch/dsl.rb +65 -65
- data/lib/chef/event_dispatch/events_output_stream.rb +37 -37
- data/lib/chef/event_loggers/base.rb +62 -62
- data/lib/chef/event_loggers/windows_eventlog.rb +101 -101
- data/lib/chef/exceptions.rb +532 -532
- data/lib/chef/file_access_control.rb +75 -75
- data/lib/chef/file_access_control/unix.rb +290 -290
- data/lib/chef/file_access_control/windows.rb +335 -335
- data/lib/chef/file_cache.rb +221 -221
- data/lib/chef/file_content_management/content_base.rb +56 -56
- data/lib/chef/file_content_management/deploy.rb +37 -37
- data/lib/chef/file_content_management/deploy/cp.rb +48 -48
- data/lib/chef/file_content_management/deploy/mv_unix.rb +76 -76
- data/lib/chef/file_content_management/deploy/mv_windows.rb +103 -103
- data/lib/chef/file_content_management/tempfile.rb +107 -107
- data/lib/chef/formatters/base.rb +247 -247
- data/lib/chef/formatters/doc.rb +447 -447
- data/lib/chef/formatters/error_description.rb +86 -86
- data/lib/chef/formatters/error_inspectors.rb +19 -19
- data/lib/chef/formatters/error_inspectors/api_error_formatting.rb +183 -183
- data/lib/chef/formatters/error_inspectors/compile_error_inspector.rb +154 -154
- data/lib/chef/formatters/error_inspectors/cookbook_resolve_error_inspector.rb +168 -168
- data/lib/chef/formatters/error_inspectors/cookbook_sync_error_inspector.rb +82 -82
- data/lib/chef/formatters/error_inspectors/node_load_error_inspector.rb +128 -128
- data/lib/chef/formatters/error_inspectors/registration_error_inspector.rb +147 -147
- data/lib/chef/formatters/error_inspectors/resource_failure_inspector.rb +124 -124
- data/lib/chef/formatters/error_inspectors/run_list_expansion_error_inspector.rb +121 -121
- data/lib/chef/formatters/error_mapper.rb +85 -85
- data/lib/chef/formatters/indentable_output_stream.rb +170 -170
- data/lib/chef/formatters/minimal.rb +233 -233
- data/lib/chef/guard_interpreter.rb +32 -32
- data/lib/chef/guard_interpreter/default_guard_interpreter.rb +43 -43
- data/lib/chef/guard_interpreter/resource_guard_interpreter.rb +138 -138
- data/lib/chef/handler.rb +268 -268
- data/lib/chef/handler/error_report.rb +33 -33
- data/lib/chef/handler/json_file.rb +63 -63
- data/lib/chef/http.rb +489 -489
- data/lib/chef/http/api_versions.rb +50 -50
- data/lib/chef/http/auth_credentials.rb +57 -57
- data/lib/chef/http/authenticator.rb +106 -106
- data/lib/chef/http/basic_client.rb +158 -158
- data/lib/chef/http/cookie_jar.rb +31 -31
- data/lib/chef/http/cookie_manager.rb +59 -59
- data/lib/chef/http/decompressor.rb +142 -142
- data/lib/chef/http/http_request.rb +186 -186
- data/lib/chef/http/json_input.rb +73 -73
- data/lib/chef/http/json_output.rb +78 -78
- data/lib/chef/http/json_to_model_output.rb +34 -34
- data/lib/chef/http/remote_request_id.rb +46 -46
- data/lib/chef/http/simple.rb +40 -40
- data/lib/chef/http/simple_json.rb +43 -43
- data/lib/chef/http/socketless_chef_zero_client.rb +208 -208
- data/lib/chef/http/ssl_policies.rb +130 -130
- data/lib/chef/http/validate_content_length.rb +114 -114
- data/lib/chef/json_compat.rb +160 -160
- data/lib/chef/key.rb +272 -272
- data/lib/chef/knife.rb +613 -613
- data/lib/chef/knife/bootstrap.rb +489 -489
- data/lib/chef/knife/bootstrap/chef_vault_handler.rb +159 -159
- data/lib/chef/knife/bootstrap/client_builder.rb +208 -208
- data/lib/chef/knife/bootstrap/templates/README.md +11 -11
- data/lib/chef/knife/bootstrap/templates/chef-full.erb +236 -236
- data/lib/chef/knife/client_bulk_delete.rb +104 -104
- data/lib/chef/knife/client_create.rb +111 -111
- data/lib/chef/knife/client_delete.rb +63 -63
- data/lib/chef/knife/client_edit.rb +53 -53
- data/lib/chef/knife/client_key_create.rb +67 -67
- data/lib/chef/knife/client_key_delete.rb +76 -76
- data/lib/chef/knife/client_key_edit.rb +79 -79
- data/lib/chef/knife/client_key_list.rb +69 -69
- data/lib/chef/knife/client_key_show.rb +76 -76
- data/lib/chef/knife/client_list.rb +42 -42
- data/lib/chef/knife/client_reregister.rb +59 -59
- data/lib/chef/knife/client_show.rb +49 -49
- data/lib/chef/knife/configure.rb +171 -171
- data/lib/chef/knife/configure_client.rb +50 -50
- data/lib/chef/knife/cookbook_bulk_delete.rb +71 -71
- data/lib/chef/knife/cookbook_create.rb +462 -462
- data/lib/chef/knife/cookbook_delete.rb +151 -151
- data/lib/chef/knife/cookbook_download.rb +143 -143
- data/lib/chef/knife/cookbook_list.rb +47 -47
- data/lib/chef/knife/cookbook_metadata.rb +107 -107
- data/lib/chef/knife/cookbook_metadata_from_file.rb +44 -44
- data/lib/chef/knife/cookbook_show.rb +94 -94
- data/lib/chef/knife/cookbook_site_download.rb +116 -116
- data/lib/chef/knife/cookbook_site_install.rb +196 -196
- data/lib/chef/knife/cookbook_site_list.rb +65 -65
- data/lib/chef/knife/cookbook_site_search.rb +53 -53
- data/lib/chef/knife/cookbook_site_share.rb +170 -170
- data/lib/chef/knife/cookbook_site_show.rb +66 -66
- data/lib/chef/knife/cookbook_site_unshare.rb +63 -63
- data/lib/chef/knife/cookbook_site_vendor.rb +46 -46
- data/lib/chef/knife/cookbook_test.rb +95 -95
- data/lib/chef/knife/cookbook_upload.rb +308 -308
- data/lib/chef/knife/core/bootstrap_context.rb +267 -267
- data/lib/chef/knife/core/cookbook_scm_repo.rb +159 -159
- data/lib/chef/knife/core/custom_manifest_loader.rb +69 -69
- data/lib/chef/knife/core/gem_glob_loader.rb +138 -138
- data/lib/chef/knife/core/generic_presenter.rb +232 -232
- data/lib/chef/knife/core/hashed_command_loader.rb +99 -99
- data/lib/chef/knife/core/node_editor.rb +130 -130
- data/lib/chef/knife/core/node_presenter.rb +159 -159
- data/lib/chef/knife/core/object_loader.rb +115 -115
- data/lib/chef/knife/core/status_presenter.rb +157 -157
- data/lib/chef/knife/core/subcommand_loader.rb +212 -212
- data/lib/chef/knife/core/text_formatter.rb +85 -85
- data/lib/chef/knife/core/ui.rb +278 -278
- data/lib/chef/knife/data_bag_create.rb +80 -80
- data/lib/chef/knife/data_bag_delete.rb +49 -49
- data/lib/chef/knife/data_bag_edit.rb +74 -74
- data/lib/chef/knife/data_bag_from_file.rb +114 -114
- data/lib/chef/knife/data_bag_list.rb +42 -42
- data/lib/chef/knife/data_bag_secret_options.rb +142 -142
- data/lib/chef/knife/data_bag_show.rb +69 -69
- data/lib/chef/knife/delete.rb +107 -107
- data/lib/chef/knife/deps.rb +138 -138
- data/lib/chef/knife/diff.rb +68 -68
- data/lib/chef/knife/download.rb +68 -68
- data/lib/chef/knife/edit.rb +72 -72
- data/lib/chef/knife/environment_compare.rb +127 -127
- data/lib/chef/knife/environment_create.rb +53 -53
- data/lib/chef/knife/environment_delete.rb +45 -45
- data/lib/chef/knife/environment_edit.rb +45 -45
- data/lib/chef/knife/environment_from_file.rb +82 -82
- data/lib/chef/knife/environment_list.rb +42 -42
- data/lib/chef/knife/environment_show.rb +48 -48
- data/lib/chef/knife/exec.rb +87 -87
- data/lib/chef/knife/help.rb +101 -101
- data/lib/chef/knife/help_topics.rb +4 -4
- data/lib/chef/knife/index_rebuild.rb +133 -133
- data/lib/chef/knife/key_create.rb +112 -112
- data/lib/chef/knife/key_create_base.rb +50 -50
- data/lib/chef/knife/key_delete.rb +55 -55
- data/lib/chef/knife/key_edit.rb +118 -118
- data/lib/chef/knife/key_edit_base.rb +55 -55
- data/lib/chef/knife/key_list.rb +88 -88
- data/lib/chef/knife/key_list_base.rb +45 -45
- data/lib/chef/knife/key_show.rb +53 -53
- data/lib/chef/knife/list.rb +156 -156
- data/lib/chef/knife/node_bulk_delete.rb +74 -74
- data/lib/chef/knife/node_create.rb +47 -47
- data/lib/chef/knife/node_delete.rb +46 -46
- data/lib/chef/knife/node_edit.rb +70 -70
- data/lib/chef/knife/node_environment_set.rb +54 -54
- data/lib/chef/knife/node_from_file.rb +51 -51
- data/lib/chef/knife/node_list.rb +44 -44
- data/lib/chef/knife/node_run_list_add.rb +104 -104
- data/lib/chef/knife/node_run_list_remove.rb +67 -67
- data/lib/chef/knife/node_run_list_set.rb +66 -66
- data/lib/chef/knife/node_show.rb +61 -61
- data/lib/chef/knife/null.rb +10 -10
- data/lib/chef/knife/osc_user_create.rb +97 -97
- data/lib/chef/knife/osc_user_delete.rb +51 -51
- data/lib/chef/knife/osc_user_edit.rb +58 -58
- data/lib/chef/knife/osc_user_list.rb +47 -47
- data/lib/chef/knife/osc_user_reregister.rb +64 -64
- data/lib/chef/knife/osc_user_show.rb +53 -53
- data/lib/chef/knife/raw.rb +103 -103
- data/lib/chef/knife/recipe_list.rb +32 -32
- data/lib/chef/knife/rehash.rb +65 -65
- data/lib/chef/knife/role_bulk_delete.rb +65 -65
- data/lib/chef/knife/role_create.rb +53 -53
- data/lib/chef/knife/role_delete.rb +46 -46
- data/lib/chef/knife/role_edit.rb +45 -45
- data/lib/chef/knife/role_env_run_list_add.rb +86 -86
- data/lib/chef/knife/role_env_run_list_clear.rb +55 -55
- data/lib/chef/knife/role_env_run_list_remove.rb +57 -57
- data/lib/chef/knife/role_env_run_list_replace.rb +59 -59
- data/lib/chef/knife/role_env_run_list_set.rb +70 -70
- data/lib/chef/knife/role_from_file.rb +51 -51
- data/lib/chef/knife/role_list.rb +42 -42
- data/lib/chef/knife/role_run_list_add.rb +86 -86
- data/lib/chef/knife/role_run_list_clear.rb +55 -55
- data/lib/chef/knife/role_run_list_remove.rb +57 -57
- data/lib/chef/knife/role_run_list_replace.rb +59 -59
- data/lib/chef/knife/role_run_list_set.rb +70 -70
- data/lib/chef/knife/role_show.rb +49 -49
- data/lib/chef/knife/search.rb +201 -201
- data/lib/chef/knife/serve.rb +48 -48
- data/lib/chef/knife/show.rb +56 -56
- data/lib/chef/knife/ssh.rb +591 -591
- data/lib/chef/knife/ssl_check.rb +283 -283
- data/lib/chef/knife/ssl_fetch.rb +161 -161
- data/lib/chef/knife/status.rb +110 -110
- data/lib/chef/knife/supermarket_download.rb +33 -33
- data/lib/chef/knife/supermarket_install.rb +33 -33
- data/lib/chef/knife/supermarket_list.rb +33 -33
- data/lib/chef/knife/supermarket_search.rb +33 -33
- data/lib/chef/knife/supermarket_share.rb +33 -33
- data/lib/chef/knife/supermarket_show.rb +33 -33
- data/lib/chef/knife/supermarket_unshare.rb +33 -33
- data/lib/chef/knife/tag_create.rb +52 -52
- data/lib/chef/knife/tag_delete.rb +60 -60
- data/lib/chef/knife/tag_list.rb +47 -47
- data/lib/chef/knife/upload.rb +70 -70
- data/lib/chef/knife/user_create.rb +150 -150
- data/lib/chef/knife/user_delete.rb +95 -95
- data/lib/chef/knife/user_edit.rb +81 -81
- data/lib/chef/knife/user_key_create.rb +69 -69
- data/lib/chef/knife/user_key_delete.rb +76 -76
- data/lib/chef/knife/user_key_edit.rb +79 -79
- data/lib/chef/knife/user_key_list.rb +69 -69
- data/lib/chef/knife/user_key_show.rb +76 -76
- data/lib/chef/knife/user_list.rb +45 -45
- data/lib/chef/knife/user_reregister.rb +89 -89
- data/lib/chef/knife/user_show.rb +78 -78
- data/lib/chef/knife/xargs.rb +266 -266
- data/lib/chef/local_mode.rb +128 -128
- data/lib/chef/log.rb +68 -68
- data/lib/chef/log/syslog.rb +45 -45
- data/lib/chef/log/winevt.rb +99 -99
- data/lib/chef/mash.rb +232 -232
- data/lib/chef/mixin/api_version_request_handling.rb +66 -66
- data/lib/chef/mixin/checksum.rb +37 -37
- data/lib/chef/mixin/command.rb +194 -194
- data/lib/chef/mixin/command/unix.rb +220 -220
- data/lib/chef/mixin/command/windows.rb +71 -71
- data/lib/chef/mixin/convert_to_class_name.rb +126 -126
- data/lib/chef/mixin/create_path.rb +71 -71
- data/lib/chef/mixin/deep_merge.rb +140 -140
- data/lib/chef/mixin/deprecation.rb +117 -117
- data/lib/chef/mixin/descendants_tracker.rb +81 -81
- data/lib/chef/mixin/enforce_ownership_and_permissions.rb +39 -39
- data/lib/chef/mixin/file_class.rb +35 -35
- data/lib/chef/mixin/from_file.rb +50 -50
- data/lib/chef/mixin/get_source_from_package.rb +47 -47
- data/lib/chef/mixin/homebrew_user.rb +68 -68
- data/lib/chef/mixin/language.rb +48 -48
- data/lib/chef/mixin/language_include_attribute.rb +34 -34
- data/lib/chef/mixin/language_include_recipe.rb +31 -31
- data/lib/chef/mixin/lazy_module_include.rb +77 -77
- data/lib/chef/mixin/notifying_block.rb +51 -51
- data/lib/chef/mixin/params_validate.rb +489 -489
- data/lib/chef/mixin/path_sanity.rb +68 -68
- data/lib/chef/mixin/powershell_out.rb +98 -98
- data/lib/chef/mixin/powershell_type_coercions.rb +84 -84
- data/lib/chef/mixin/properties.rb +306 -306
- data/lib/chef/mixin/provides.rb +28 -28
- data/lib/chef/mixin/proxified_socket.rb +42 -42
- data/lib/chef/mixin/recipe_definition_dsl_core.rb +35 -35
- data/lib/chef/mixin/securable.rb +196 -196
- data/lib/chef/mixin/shell_out.rb +211 -211
- data/lib/chef/mixin/subclass_directive.rb +37 -37
- data/lib/chef/mixin/template.rb +262 -262
- data/lib/chef/mixin/unformatter.rb +32 -32
- data/lib/chef/mixin/uris.rb +42 -42
- data/lib/chef/mixin/versioned_api.rb +69 -69
- data/lib/chef/mixin/which.rb +50 -50
- data/lib/chef/mixin/why_run.rb +331 -331
- data/lib/chef/mixin/wide_string.rb +72 -72
- data/lib/chef/mixin/windows_architecture_helper.rb +113 -113
- data/lib/chef/mixin/windows_env_helper.rb +67 -67
- data/lib/chef/mixin/xml_escape.rb +138 -138
- data/lib/chef/mixins.rb +13 -13
- data/lib/chef/monkey_patches/net_http.rb +60 -60
- data/lib/chef/monkey_patches/webrick-utils.rb +51 -51
- data/lib/chef/monkey_patches/win32/registry.rb +86 -86
- data/lib/chef/monologger.rb +88 -88
- data/lib/chef/nil_argument.rb +3 -3
- data/lib/chef/node.rb +677 -677
- data/lib/chef/node/attribute.rb +673 -673
- data/lib/chef/node/attribute_collections.rb +231 -231
- data/lib/chef/node/common_api.rb +121 -121
- data/lib/chef/node/immutable_collections.rb +180 -180
- data/lib/chef/node/mixin/deep_merge_cache.rb +61 -61
- data/lib/chef/node/mixin/immutablize_array.rb +67 -67
- data/lib/chef/node/mixin/immutablize_hash.rb +54 -54
- data/lib/chef/node/mixin/state_tracking.rb +96 -96
- data/lib/chef/node_map.rb +238 -238
- data/lib/chef/null_logger.rb +72 -72
- data/lib/chef/org.rb +147 -147
- data/lib/chef/platform.rb +30 -30
- data/lib/chef/platform/priority_map.rb +41 -41
- data/lib/chef/platform/provider_handler_map.rb +29 -29
- data/lib/chef/platform/provider_mapping.rb +222 -222
- data/lib/chef/platform/provider_priority_map.rb +11 -11
- data/lib/chef/platform/query_helpers.rb +112 -112
- data/lib/chef/platform/rebooter.rb +67 -67
- data/lib/chef/platform/resource_handler_map.rb +29 -29
- data/lib/chef/platform/resource_priority_map.rb +11 -11
- data/lib/chef/platform/service_helpers.rb +122 -122
- data/lib/chef/policy_builder.rb +42 -42
- data/lib/chef/policy_builder/dynamic.rb +185 -185
- data/lib/chef/policy_builder/expand_node_object.rb +278 -278
- data/lib/chef/policy_builder/policyfile.rb +550 -550
- data/lib/chef/property.rb +731 -731
- data/lib/chef/provider.rb +458 -458
- data/lib/chef/provider/apt_repository.rb +258 -258
- data/lib/chef/provider/apt_update.rb +87 -87
- data/lib/chef/provider/batch.rb +45 -45
- data/lib/chef/provider/breakpoint.rb +38 -38
- data/lib/chef/provider/cookbook_file.rb +53 -53
- data/lib/chef/provider/cookbook_file/content.rb +49 -49
- data/lib/chef/provider/cron.rb +262 -262
- data/lib/chef/provider/cron/aix.rb +50 -50
- data/lib/chef/provider/cron/solaris.rb +22 -22
- data/lib/chef/provider/cron/unix.rb +83 -83
- data/lib/chef/provider/deploy.rb +476 -476
- data/lib/chef/provider/deploy/revision.rb +107 -107
- data/lib/chef/provider/deploy/timestamped.rb +34 -34
- data/lib/chef/provider/directory.rb +168 -168
- data/lib/chef/provider/dsc_resource.rb +213 -213
- data/lib/chef/provider/dsc_script.rb +189 -189
- data/lib/chef/provider/env.rb +169 -169
- data/lib/chef/provider/env/windows.rb +72 -72
- data/lib/chef/provider/erl_call.rb +108 -108
- data/lib/chef/provider/execute.rb +128 -128
- data/lib/chef/provider/file.rb +488 -488
- data/lib/chef/provider/file/content.rb +39 -39
- data/lib/chef/provider/git.rb +334 -334
- data/lib/chef/provider/group.rb +185 -185
- data/lib/chef/provider/group/aix.rb +79 -79
- data/lib/chef/provider/group/dscl.rb +173 -173
- data/lib/chef/provider/group/gpasswd.rb +58 -58
- data/lib/chef/provider/group/groupadd.rb +133 -133
- data/lib/chef/provider/group/groupmod.rb +123 -123
- data/lib/chef/provider/group/pw.rb +137 -137
- data/lib/chef/provider/group/suse.rb +83 -83
- data/lib/chef/provider/group/usermod.rb +90 -90
- data/lib/chef/provider/group/windows.rb +109 -109
- data/lib/chef/provider/http_request.rb +122 -122
- data/lib/chef/provider/ifconfig.rb +283 -283
- data/lib/chef/provider/ifconfig/aix.rb +94 -94
- data/lib/chef/provider/ifconfig/debian.rb +85 -85
- data/lib/chef/provider/ifconfig/redhat.rb +48 -48
- data/lib/chef/provider/launchd.rb +208 -208
- data/lib/chef/provider/link.rb +172 -172
- data/lib/chef/provider/log.rb +57 -57
- data/lib/chef/provider/lwrp_base.rb +98 -98
- data/lib/chef/provider/mdadm.rb +93 -93
- data/lib/chef/provider/mount.rb +171 -171
- data/lib/chef/provider/mount/aix.rb +180 -180
- data/lib/chef/provider/mount/mount.rb +270 -270
- data/lib/chef/provider/mount/solaris.rb +271 -271
- data/lib/chef/provider/mount/windows.rb +92 -92
- data/lib/chef/provider/noop.rb +37 -37
- data/lib/chef/provider/ohai.rb +51 -51
- data/lib/chef/provider/osx_profile.rb +257 -257
- data/lib/chef/provider/package.rb +656 -656
- data/lib/chef/provider/package/aix.rb +143 -143
- data/lib/chef/provider/package/apt.rb +201 -201
- data/lib/chef/provider/package/cab.rb +179 -179
- data/lib/chef/provider/package/chocolatey.rb +275 -275
- data/lib/chef/provider/package/dnf.rb +192 -192
- data/lib/chef/provider/package/dnf/dnf_helper.py +91 -91
- data/lib/chef/provider/package/dnf/python_helper.rb +157 -157
- data/lib/chef/provider/package/dnf/version.rb +56 -56
- data/lib/chef/provider/package/dpkg.rb +225 -225
- data/lib/chef/provider/package/easy_install.rb +135 -135
- data/lib/chef/provider/package/freebsd/base.rb +89 -89
- data/lib/chef/provider/package/freebsd/pkg.rb +114 -114
- data/lib/chef/provider/package/freebsd/pkgng.rb +76 -76
- data/lib/chef/provider/package/freebsd/port.rb +60 -60
- data/lib/chef/provider/package/homebrew.rb +138 -138
- data/lib/chef/provider/package/ips.rb +86 -86
- data/lib/chef/provider/package/macports.rb +101 -101
- data/lib/chef/provider/package/msu.rb +162 -162
- data/lib/chef/provider/package/openbsd.rb +139 -139
- data/lib/chef/provider/package/pacman.rb +104 -104
- data/lib/chef/provider/package/paludis.rb +85 -85
- data/lib/chef/provider/package/portage.rb +140 -140
- data/lib/chef/provider/package/powershell.rb +114 -114
- data/lib/chef/provider/package/rpm.rb +123 -123
- data/lib/chef/provider/package/rubygems.rb +591 -591
- data/lib/chef/provider/package/smartos.rb +92 -92
- data/lib/chef/provider/package/solaris.rb +138 -138
- data/lib/chef/provider/package/windows.rb +271 -271
- data/lib/chef/provider/package/windows/exe.rb +115 -115
- data/lib/chef/provider/package/windows/msi.rb +94 -94
- data/lib/chef/provider/package/windows/registry_uninstall_entry.rb +87 -87
- data/lib/chef/provider/package/yum.rb +536 -536
- data/lib/chef/provider/package/yum/rpm_utils.rb +642 -642
- data/lib/chef/provider/package/yum/yum-dump.py +307 -307
- data/lib/chef/provider/package/yum/yum_cache.rb +376 -376
- data/lib/chef/provider/package/zypper.rb +163 -163
- data/lib/chef/provider/powershell_script.rb +223 -223
- data/lib/chef/provider/reboot.rb +70 -70
- data/lib/chef/provider/registry_key.rb +182 -182
- data/lib/chef/provider/remote_directory.rb +283 -283
- data/lib/chef/provider/remote_file.rb +53 -53
- data/lib/chef/provider/remote_file/cache_control_data.rb +195 -195
- data/lib/chef/provider/remote_file/content.rb +81 -81
- data/lib/chef/provider/remote_file/fetcher.rb +57 -57
- data/lib/chef/provider/remote_file/ftp.rb +172 -172
- data/lib/chef/provider/remote_file/http.rb +135 -135
- data/lib/chef/provider/remote_file/local_file.rb +60 -60
- data/lib/chef/provider/remote_file/network_file.rb +48 -48
- data/lib/chef/provider/remote_file/sftp.rb +105 -105
- data/lib/chef/provider/resource_update.rb +52 -52
- data/lib/chef/provider/route.rb +231 -231
- data/lib/chef/provider/ruby_block.rb +44 -44
- data/lib/chef/provider/script.rb +121 -121
- data/lib/chef/provider/service.rb +259 -259
- data/lib/chef/provider/service/aix.rb +129 -129
- data/lib/chef/provider/service/aixinit.rb +117 -117
- data/lib/chef/provider/service/arch.rb +118 -118
- data/lib/chef/provider/service/debian.rb +182 -182
- data/lib/chef/provider/service/freebsd.rb +195 -195
- data/lib/chef/provider/service/gentoo.rb +71 -71
- data/lib/chef/provider/service/init.rb +94 -94
- data/lib/chef/provider/service/insserv.rb +59 -59
- data/lib/chef/provider/service/invokercd.rb +41 -41
- data/lib/chef/provider/service/macosx.rb +250 -250
- data/lib/chef/provider/service/openbsd.rb +217 -217
- data/lib/chef/provider/service/redhat.rb +126 -126
- data/lib/chef/provider/service/simple.rb +176 -176
- data/lib/chef/provider/service/solaris.rb +122 -122
- data/lib/chef/provider/service/systemd.rb +188 -188
- data/lib/chef/provider/service/upstart.rb +261 -261
- data/lib/chef/provider/service/windows.rb +313 -313
- data/lib/chef/provider/subversion.rb +233 -233
- data/lib/chef/provider/support/yum_repo.erb +132 -132
- data/lib/chef/provider/systemd_unit.rb +240 -240
- data/lib/chef/provider/template.rb +65 -65
- data/lib/chef/provider/template/content.rb +70 -70
- data/lib/chef/provider/template_finder.rb +62 -62
- data/lib/chef/provider/user.rb +220 -220
- data/lib/chef/provider/user/aix.rb +99 -99
- data/lib/chef/provider/user/dscl.rb +719 -719
- data/lib/chef/provider/user/linux.rb +125 -125
- data/lib/chef/provider/user/pw.rb +111 -111
- data/lib/chef/provider/user/solaris.rb +129 -129
- data/lib/chef/provider/user/useradd.rb +158 -158
- data/lib/chef/provider/user/windows.rb +125 -125
- data/lib/chef/provider/whyrun_safe_ruby_block.rb +32 -32
- data/lib/chef/provider/windows_script.rb +75 -75
- data/lib/chef/provider/yum_repository.rb +120 -120
- data/lib/chef/provider_resolver.rb +172 -172
- data/lib/chef/providers.rb +152 -152
- data/lib/chef/recipe.rb +108 -108
- data/lib/chef/request_id.rb +37 -37
- data/lib/chef/reserved_names.rb +9 -9
- data/lib/chef/resource.rb +1626 -1626
- data/lib/chef/resource/action_class.rb +94 -94
- data/lib/chef/resource/apt_package.rb +32 -32
- data/lib/chef/resource/apt_repository.rb +46 -46
- data/lib/chef/resource/apt_update.rb +33 -33
- data/lib/chef/resource/bash.rb +33 -33
- data/lib/chef/resource/batch.rb +33 -33
- data/lib/chef/resource/bff_package.rb +27 -27
- data/lib/chef/resource/breakpoint.rb +32 -32
- data/lib/chef/resource/cab_package.rb +44 -44
- data/lib/chef/resource/chef_gem.rb +50 -50
- data/lib/chef/resource/chocolatey_package.rb +40 -40
- data/lib/chef/resource/conditional.rb +135 -135
- data/lib/chef/resource/conditional_action_not_nothing.rb +48 -48
- data/lib/chef/resource/cookbook_file.rb +49 -49
- data/lib/chef/resource/cron.rb +216 -216
- data/lib/chef/resource/csh.rb +33 -33
- data/lib/chef/resource/deploy.rb +443 -443
- data/lib/chef/resource/deploy_revision.rb +31 -31
- data/lib/chef/resource/directory.rb +62 -62
- data/lib/chef/resource/dnf_package.rb +74 -74
- data/lib/chef/resource/dpkg_package.rb +30 -30
- data/lib/chef/resource/dsc_resource.rb +129 -129
- data/lib/chef/resource/dsc_script.rb +140 -140
- data/lib/chef/resource/easy_install_package.rb +32 -32
- data/lib/chef/resource/env.rb +65 -65
- data/lib/chef/resource/erl_call.rb +85 -85
- data/lib/chef/resource/execute.rb +236 -236
- data/lib/chef/resource/file.rb +88 -88
- data/lib/chef/resource/file/verification.rb +130 -130
- data/lib/chef/resource/file/verification/systemd_unit.rb +67 -67
- data/lib/chef/resource/freebsd_package.rb +62 -62
- data/lib/chef/resource/gem_package.rb +41 -41
- data/lib/chef/resource/git.rb +44 -44
- data/lib/chef/resource/group.rb +102 -102
- data/lib/chef/resource/homebrew_package.rb +34 -34
- data/lib/chef/resource/http_request.rb +66 -66
- data/lib/chef/resource/ifconfig.rb +147 -147
- data/lib/chef/resource/ips_package.rb +34 -34
- data/lib/chef/resource/ksh.rb +32 -32
- data/lib/chef/resource/launchd.rb +156 -156
- data/lib/chef/resource/link.rb +107 -107
- data/lib/chef/resource/log.rb +76 -76
- data/lib/chef/resource/lwrp_base.rb +124 -124
- data/lib/chef/resource/macosx_service.rb +58 -58
- data/lib/chef/resource/macports_package.rb +27 -27
- data/lib/chef/resource/mdadm.rb +112 -112
- data/lib/chef/resource/mount.rb +187 -187
- data/lib/chef/resource/msu_package.rb +47 -47
- data/lib/chef/resource/ohai.rb +33 -33
- data/lib/chef/resource/openbsd_package.rb +35 -35
- data/lib/chef/resource/osx_profile.rb +74 -74
- data/lib/chef/resource/package.rb +47 -47
- data/lib/chef/resource/pacman_package.rb +28 -28
- data/lib/chef/resource/paludis_package.rb +33 -33
- data/lib/chef/resource/perl.rb +32 -32
- data/lib/chef/resource/portage_package.rb +32 -32
- data/lib/chef/resource/powershell_package.rb +41 -41
- data/lib/chef/resource/powershell_script.rb +50 -50
- data/lib/chef/resource/python.rb +31 -31
- data/lib/chef/resource/reboot.rb +48 -48
- data/lib/chef/resource/registry_key.rb +144 -144
- data/lib/chef/resource/remote_directory.rb +122 -122
- data/lib/chef/resource/remote_file.rb +158 -158
- data/lib/chef/resource/resource_notification.rb +122 -122
- data/lib/chef/resource/route.rb +137 -137
- data/lib/chef/resource/rpm_package.rb +32 -32
- data/lib/chef/resource/ruby.rb +31 -31
- data/lib/chef/resource/ruby_block.rb +53 -53
- data/lib/chef/resource/scm.rb +179 -179
- data/lib/chef/resource/script.rb +74 -74
- data/lib/chef/resource/service.rb +217 -217
- data/lib/chef/resource/smartos_package.rb +29 -29
- data/lib/chef/resource/solaris_package.rb +31 -31
- data/lib/chef/resource/subversion.rb +44 -44
- data/lib/chef/resource/systemd_unit.rb +63 -63
- data/lib/chef/resource/template.rb +215 -215
- data/lib/chef/resource/timestamped_deploy.rb +26 -26
- data/lib/chef/resource/user.rb +174 -174
- data/lib/chef/resource/user/aix_user.rb +31 -31
- data/lib/chef/resource/user/dscl_user.rb +31 -31
- data/lib/chef/resource/user/linux_user.rb +41 -41
- data/lib/chef/resource/user/pw_user.rb +31 -31
- data/lib/chef/resource/user/solaris_user.rb +31 -31
- data/lib/chef/resource/user/windows_user.rb +31 -31
- data/lib/chef/resource/whyrun_safe_ruby_block.rb +24 -24
- data/lib/chef/resource/windows_package.rb +55 -55
- data/lib/chef/resource/windows_script.rb +65 -65
- data/lib/chef/resource/windows_service.rb +71 -71
- data/lib/chef/resource/yum_package.rb +61 -61
- data/lib/chef/resource/yum_repository.rb +78 -78
- data/lib/chef/resource/zypper_package.rb +28 -28
- data/lib/chef/resource_builder.rb +156 -156
- data/lib/chef/resource_collection.rb +136 -136
- data/lib/chef/resource_collection/resource_collection_serialization.rb +59 -59
- data/lib/chef/resource_collection/resource_list.rb +100 -100
- data/lib/chef/resource_collection/resource_set.rb +173 -173
- data/lib/chef/resource_collection/stepable_iterator.rb +122 -122
- data/lib/chef/resource_definition.rb +68 -68
- data/lib/chef/resource_definition_list.rb +38 -38
- data/lib/chef/resource_reporter.rb +338 -338
- data/lib/chef/resource_resolver.rb +184 -184
- data/lib/chef/resources.rb +101 -101
- data/lib/chef/rest.rb +210 -210
- data/lib/chef/role.rb +280 -280
- data/lib/chef/run_context.rb +681 -681
- data/lib/chef/run_context/cookbook_compiler.rb +291 -291
- data/lib/chef/run_list.rb +168 -168
- data/lib/chef/run_list/run_list_expansion.rb +234 -234
- data/lib/chef/run_list/run_list_item.rb +98 -98
- data/lib/chef/run_list/versioned_recipe_list.rb +102 -102
- data/lib/chef/run_lock.rb +197 -197
- data/lib/chef/run_status.rb +125 -125
- data/lib/chef/runner.rb +143 -143
- data/lib/chef/sandbox.rb +20 -20
- data/lib/chef/scan_access_control.rb +138 -138
- data/lib/chef/search/query.rb +183 -183
- data/lib/chef/server_api.rb +80 -80
- data/lib/chef/server_api_versions.rb +40 -40
- data/lib/chef/shell.rb +327 -327
- data/lib/chef/shell/ext.rb +593 -593
- data/lib/chef/shell/model_wrapper.rb +120 -120
- data/lib/chef/shell/shell_session.rb +299 -299
- data/lib/chef/shell_out.rb +13 -13
- data/lib/chef/tasks/chef_repo.rake +200 -200
- data/lib/chef/user.rb +197 -197
- data/lib/chef/user_v1.rb +328 -328
- data/lib/chef/util/backup.rb +94 -94
- data/lib/chef/util/diff.rb +184 -184
- data/lib/chef/util/dsc/configuration_generator.rb +139 -139
- data/lib/chef/util/dsc/lcm_output_parser.rb +192 -192
- data/lib/chef/util/dsc/local_configuration_manager.rb +151 -151
- data/lib/chef/util/dsc/resource_info.rb +26 -26
- data/lib/chef/util/dsc/resource_store.rb +109 -109
- data/lib/chef/util/editor.rb +91 -91
- data/lib/chef/util/file_edit.rb +100 -100
- data/lib/chef/util/path_helper.rb +25 -25
- data/lib/chef/util/powershell/cmdlet.rb +173 -173
- data/lib/chef/util/powershell/cmdlet_result.rb +61 -61
- data/lib/chef/util/powershell/ps_credential.rb +41 -41
- data/lib/chef/util/selinux.rb +92 -92
- data/lib/chef/util/threaded_job_queue.rb +61 -61
- data/lib/chef/util/windows.rb +24 -24
- data/lib/chef/util/windows/net_group.rb +72 -72
- data/lib/chef/util/windows/net_use.rb +81 -81
- data/lib/chef/util/windows/net_user.rb +164 -164
- data/lib/chef/util/windows/volume.rb +53 -53
- data/lib/chef/version.rb +34 -34
- data/lib/chef/version/platform.rb +44 -44
- data/lib/chef/version_class.rb +75 -75
- data/lib/chef/version_constraint.rb +118 -118
- data/lib/chef/version_constraint/platform.rb +26 -26
- data/lib/chef/whitelist.rb +86 -86
- data/lib/chef/win32/api.rb +372 -372
- data/lib/chef/win32/api/crypto.rb +63 -63
- data/lib/chef/win32/api/error.rb +953 -953
- data/lib/chef/win32/api/file.rb +619 -619
- data/lib/chef/win32/api/installer.rb +165 -165
- data/lib/chef/win32/api/memory.rb +105 -105
- data/lib/chef/win32/api/net.rb +312 -312
- data/lib/chef/win32/api/process.rb +42 -42
- data/lib/chef/win32/api/psapi.rb +51 -51
- data/lib/chef/win32/api/registry.rb +51 -51
- data/lib/chef/win32/api/security.rb +460 -460
- data/lib/chef/win32/api/synchronization.rb +89 -89
- data/lib/chef/win32/api/system.rb +238 -238
- data/lib/chef/win32/api/unicode.rb +135 -135
- data/lib/chef/win32/crypto.rb +50 -50
- data/lib/chef/win32/error.rb +86 -86
- data/lib/chef/win32/eventlog.rb +31 -31
- data/lib/chef/win32/file.rb +216 -216
- data/lib/chef/win32/file/info.rb +99 -99
- data/lib/chef/win32/file/version_info.rb +93 -93
- data/lib/chef/win32/handle.rb +55 -55
- data/lib/chef/win32/memory.rb +101 -101
- data/lib/chef/win32/mutex.rb +116 -116
- data/lib/chef/win32/net.rb +311 -311
- data/lib/chef/win32/process.rb +97 -97
- data/lib/chef/win32/registry.rb +374 -374
- data/lib/chef/win32/security.rb +665 -665
- data/lib/chef/win32/security/ace.rb +123 -123
- data/lib/chef/win32/security/acl.rb +103 -103
- data/lib/chef/win32/security/securable_object.rb +109 -109
- data/lib/chef/win32/security/security_descriptor.rb +93 -93
- data/lib/chef/win32/security/sid.rb +304 -304
- data/lib/chef/win32/security/token.rb +72 -72
- data/lib/chef/win32/system.rb +62 -62
- data/lib/chef/win32/unicode.rb +60 -60
- data/lib/chef/win32/version.rb +158 -158
- data/lib/chef/workstation_config_loader.rb +23 -23
- data/spec/data/apt/chef-integration-test-1.0/debian/changelog +5 -5
- data/spec/data/apt/chef-integration-test-1.0/debian/compat +1 -1
- data/spec/data/apt/chef-integration-test-1.0/debian/control +13 -13
- data/spec/data/apt/chef-integration-test-1.0/debian/copyright +34 -34
- data/spec/data/apt/chef-integration-test-1.0/debian/files +1 -1
- data/spec/data/apt/chef-integration-test-1.0/debian/rules +13 -13
- data/spec/data/apt/chef-integration-test-1.0/debian/source/format +1 -1
- data/spec/data/apt/chef-integration-test-1.1/debian/changelog +11 -11
- data/spec/data/apt/chef-integration-test-1.1/debian/compat +1 -1
- data/spec/data/apt/chef-integration-test-1.1/debian/control +13 -13
- data/spec/data/apt/chef-integration-test-1.1/debian/copyright +34 -34
- data/spec/data/apt/chef-integration-test-1.1/debian/files +1 -1
- data/spec/data/apt/chef-integration-test-1.1/debian/rules +13 -13
- data/spec/data/apt/chef-integration-test-1.1/debian/source/format +1 -1
- data/spec/data/apt/chef-integration-test2-1.0/debian/changelog +5 -5
- data/spec/data/apt/chef-integration-test2-1.0/debian/chef-integration-test2.debhelper.log +45 -45
- data/spec/data/apt/chef-integration-test2-1.0/debian/chef-integration-test2.substvars +1 -1
- data/spec/data/apt/chef-integration-test2-1.0/debian/chef-integration-test2/DEBIAN/conffiles +1 -1
- data/spec/data/apt/chef-integration-test2-1.0/debian/chef-integration-test2/DEBIAN/control +10 -10
- data/spec/data/apt/chef-integration-test2-1.0/debian/chef-integration-test2/DEBIAN/md5sums +1 -1
- data/spec/data/apt/chef-integration-test2-1.0/debian/compat +1 -1
- data/spec/data/apt/chef-integration-test2-1.0/debian/conffiles +1 -1
- data/spec/data/apt/chef-integration-test2-1.0/debian/control +13 -13
- data/spec/data/apt/chef-integration-test2-1.0/debian/copyright +34 -34
- data/spec/data/apt/chef-integration-test2-1.0/debian/files +1 -1
- data/spec/data/apt/chef-integration-test2-1.0/debian/rules +13 -13
- data/spec/data/apt/chef-integration-test2-1.0/debian/source/format +1 -1
- data/spec/data/apt/chef-integration-test2_1.0-1.dsc +18 -18
- data/spec/data/apt/chef-integration-test2_1.0-1_amd64.build +91 -91
- data/spec/data/apt/chef-integration-test2_1.0-1_amd64.changes +31 -31
- data/spec/data/apt/chef-integration-test_1.0-1_amd64.changes +22 -22
- data/spec/data/apt/chef-integration-test_1.1-1_amd64.changes +22 -22
- data/spec/data/apt/var/www/apt/conf/distributions +7 -7
- data/spec/data/apt/var/www/apt/conf/incoming +4 -4
- data/spec/data/apt/var/www/apt/conf/pulls +3 -3
- data/spec/data/apt/var/www/apt/db/version +4 -4
- data/spec/data/apt/var/www/apt/dists/sid/Release +19 -19
- data/spec/data/apt/var/www/apt/dists/sid/main/binary-amd64/Packages +16 -16
- data/spec/data/apt/var/www/apt/dists/sid/main/binary-amd64/Release +5 -5
- data/spec/data/bootstrap/encrypted_data_bag_secret +1 -1
- data/spec/data/bootstrap/no_proxy.erb +2 -2
- data/spec/data/bootstrap/secret.erb +9 -9
- data/spec/data/bootstrap/test-hints.erb +12 -12
- data/spec/data/bootstrap/test.erb +1 -1
- data/spec/data/cb_version_cookbooks/tatft/README.rdoc +2 -2
- data/spec/data/cb_version_cookbooks/tatft/attributes/default.rb +1 -1
- data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-600hhz-0 +1 -1
- data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ahd2gq-0 +1 -1
- data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-api8ux-0 +1 -1
- data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-b0r1m1-0 +1 -1
- data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-bfygsi-0 +1 -1
- data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-el14l6-0 +1 -1
- data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ivrl3y-0 +1 -1
- data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-kkbs85-0 +1 -1
- data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ory1ux-0 +1 -1
- data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-pgsq76-0 +1 -1
- data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ra8uim-0 +1 -1
- data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-t7k1g-0 +1 -1
- data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-t8g0sv-0 +1 -1
- data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ufy6g3-0 +1 -1
- data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-x2d6j9-0 +1 -1
- data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-xi0l6h-0 +1 -1
- data/spec/data/client.d_00/00-foo.rb +2 -2
- data/spec/data/client.d_00/01-bar.rb +1 -1
- data/spec/data/client.d_00/bar +1 -1
- data/spec/data/client.d_01/foo/bar.rb +1 -1
- data/spec/data/client.d_02/foo.rb/foo.txt +1 -1
- data/spec/data/config.rb +6 -6
- data/spec/data/cookbooks/angrybash/metadata.rb +2 -2
- data/spec/data/cookbooks/angrybash/recipes/default.rb +8 -8
- data/spec/data/cookbooks/apache2/files/default/apache2_module_conf_generate.pl +2 -2
- data/spec/data/cookbooks/apache2/metadata.rb +2 -2
- data/spec/data/cookbooks/apache2/recipes/default.rb +2 -2
- data/spec/data/cookbooks/borken/metadata.rb +2 -2
- data/spec/data/cookbooks/borken/recipes/default.rb +1 -1
- data/spec/data/cookbooks/borken/templates/default/borken.erb +1 -1
- data/spec/data/cookbooks/chefignore +8 -8
- data/spec/data/cookbooks/ignorken/files/default/not_me.rb +2 -2
- data/spec/data/cookbooks/ignorken/metadata.rb +2 -2
- data/spec/data/cookbooks/ignorken/recipes/ignoreme.rb +1 -1
- data/spec/data/cookbooks/ignorken/templates/ubuntu-12.10/not_me.rb +2 -2
- data/spec/data/cookbooks/java/files/default/java.response +1 -1
- data/spec/data/cookbooks/java/metadata.rb +2 -2
- data/spec/data/cookbooks/name-mismatch-versionnumber/README.md +4 -4
- data/spec/data/cookbooks/name-mismatch-versionnumber/metadata.rb +8 -8
- data/spec/data/cookbooks/name-mismatch-versionnumber/recipes/default.rb +8 -8
- data/spec/data/cookbooks/openldap/attributes/default.rb +16 -16
- data/spec/data/cookbooks/openldap/attributes/smokey.rb +1 -1
- data/spec/data/cookbooks/openldap/definitions/client.rb +5 -5
- data/spec/data/cookbooks/openldap/definitions/server.rb +5 -5
- data/spec/data/cookbooks/openldap/files/default/.dotfile +1 -1
- data/spec/data/cookbooks/openldap/files/default/remotedir/.a_dotdir/.a_dotfile_in_a_dotdir +1 -1
- data/spec/data/cookbooks/openldap/files/default/remotedir/not_a_template.erb +2 -2
- data/spec/data/cookbooks/openldap/files/default/remotedir/remote_dir_file1.txt +2 -2
- data/spec/data/cookbooks/openldap/files/default/remotedir/remote_dir_file2.txt +2 -2
- data/spec/data/cookbooks/openldap/files/default/remotedir/remotesubdir/.a_dotfile +1 -1
- data/spec/data/cookbooks/openldap/files/default/remotedir/remotesubdir/remote_subdir_file1.txt +2 -2
- data/spec/data/cookbooks/openldap/files/default/remotedir/remotesubdir/remote_subdir_file2.txt +2 -2
- data/spec/data/cookbooks/openldap/files/default/remotedir/subdir_with_no_file_just_a_subsubdir/the_subsubdir/some_file.txt +3 -3
- data/spec/data/cookbooks/openldap/libraries/openldap.rb +4 -4
- data/spec/data/cookbooks/openldap/libraries/openldap/version.rb +3 -3
- data/spec/data/cookbooks/openldap/metadata.rb +8 -8
- data/spec/data/cookbooks/openldap/recipes/default.rb +4 -4
- data/spec/data/cookbooks/openldap/recipes/gigantor.rb +3 -3
- data/spec/data/cookbooks/openldap/recipes/one.rb +15 -15
- data/spec/data/cookbooks/openldap/recipes/return.rb +2 -2
- data/spec/data/cookbooks/openldap/templates/default/helper_test.erb +1 -1
- data/spec/data/cookbooks/openldap/templates/default/helpers.erb +14 -14
- data/spec/data/cookbooks/openldap/templates/default/helpers_via_partial_test.erb +1 -1
- data/spec/data/cookbooks/openldap/templates/default/nested_openldap_partials.erb +1 -1
- data/spec/data/cookbooks/openldap/templates/default/nested_partial.erb +1 -1
- data/spec/data/cookbooks/openldap/templates/default/no_windows_line_endings.erb +4 -4
- data/spec/data/cookbooks/openldap/templates/default/openldap_variable_stuff.conf.erb +1 -1
- data/spec/data/cookbooks/openldap/templates/default/test.erb +1 -1
- data/spec/data/cookbooks/preseed/files/default/preseed-file.seed +1 -1
- data/spec/data/cookbooks/preseed/files/default/preseed-template.seed +4 -4
- data/spec/data/cookbooks/preseed/metadata.rb +2 -2
- data/spec/data/cookbooks/preseed/templates/default/preseed-template-variables.seed +1 -1
- data/spec/data/cookbooks/preseed/templates/default/preseed-template.seed +1 -1
- data/spec/data/cookbooks/supports-platform-constraints/metadata.rb +5 -5
- data/spec/data/definitions/test.rb +4 -4
- data/spec/data/environment-config.rb +4 -4
- data/spec/data/file-providers-method-snapshot-chef-11-4.json +127 -127
- data/spec/data/fileedit/hosts +4 -4
- data/spec/data/incomplete-metadata-chef-repo/incomplete-metadata/README.md +4 -4
- data/spec/data/incomplete-metadata-chef-repo/incomplete-metadata/metadata.rb +13 -13
- data/spec/data/incomplete-metadata-chef-repo/incomplete-metadata/recipes/default.rb +8 -8
- data/spec/data/invalid-metadata-chef-repo/invalid-metadata/README.md +4 -4
- data/spec/data/invalid-metadata-chef-repo/invalid-metadata/metadata.rb +9 -9
- data/spec/data/invalid-metadata-chef-repo/invalid-metadata/recipes/default.rb +8 -8
- data/spec/data/kitchen/chefignore +6 -6
- data/spec/data/kitchen/openldap/attributes/default.rb +3 -3
- data/spec/data/kitchen/openldap/attributes/robinson.rb +2 -2
- data/spec/data/kitchen/openldap/definitions/client.rb +3 -3
- data/spec/data/kitchen/openldap/definitions/drewbarrymore.rb +2 -2
- data/spec/data/kitchen/openldap/recipes/gigantor.rb +2 -2
- data/spec/data/kitchen/openldap/recipes/ignoreme.rb +2 -2
- data/spec/data/kitchen/openldap/recipes/woot.rb +3 -3
- data/spec/data/knife_subcommand/test_explicit_category.rb +6 -6
- data/spec/data/knife_subcommand/test_name_mapping.rb +4 -4
- data/spec/data/knife_subcommand/test_yourself.rb +21 -21
- data/spec/data/lwrp/providers/buck_passer.rb +28 -28
- data/spec/data/lwrp/providers/buck_passer_2.rb +26 -26
- data/spec/data/lwrp/providers/embedded_resource_accesses_providers_scope.rb +28 -28
- data/spec/data/lwrp/providers/inline_compiler.rb +26 -26
- data/spec/data/lwrp/providers/monkey_name_printer.rb +5 -5
- data/spec/data/lwrp/providers/paint_drying_watcher.rb +7 -7
- data/spec/data/lwrp/providers/thumb_twiddler.rb +7 -7
- data/spec/data/lwrp/resources/bar.rb +2 -2
- data/spec/data/lwrp/resources/foo.rb +4 -4
- data/spec/data/lwrp/resources_with_default_attributes/nodeattr.rb +1 -1
- data/spec/data/lwrp_override/providers/buck_passer.rb +5 -5
- data/spec/data/lwrp_override/resources/foo.rb +10 -10
- data/spec/data/mac_users/10.7-8.plist.xml +559 -559
- data/spec/data/mac_users/10.7-8.shadow.xml +11 -11
- data/spec/data/mac_users/10.7.plist.xml +559 -559
- data/spec/data/mac_users/10.7.shadow.xml +11 -11
- data/spec/data/mac_users/10.8.plist.xml +559 -559
- data/spec/data/mac_users/10.8.shadow.xml +21 -21
- data/spec/data/mac_users/10.9.plist.xml +560 -560
- data/spec/data/mac_users/10.9.shadow.xml +21 -21
- data/spec/data/metadata/quick_start/metadata.rb +19 -19
- data/spec/data/nested.json +2 -2
- data/spec/data/nodes/default.rb +15 -15
- data/spec/data/nodes/test.example.com.rb +17 -17
- data/spec/data/nodes/test.rb +15 -15
- data/spec/data/null_config.rb +1 -1
- data/spec/data/object_loader/environments/test.json +7 -7
- data/spec/data/object_loader/environments/test.rb +2 -2
- data/spec/data/object_loader/environments/test_json_class.json +8 -8
- data/spec/data/object_loader/nodes/test.json +7 -7
- data/spec/data/object_loader/nodes/test.rb +2 -2
- data/spec/data/object_loader/nodes/test_json_class.json +8 -8
- data/spec/data/object_loader/roles/test.json +7 -7
- data/spec/data/object_loader/roles/test.rb +2 -2
- data/spec/data/object_loader/roles/test_json_class.json +8 -8
- data/spec/data/partial_one.erb +1 -1
- data/spec/data/prefer_metadata_json/metadata.json +51 -51
- data/spec/data/prefer_metadata_json/metadata.rb +6 -6
- data/spec/data/recipes/test.rb +7 -7
- data/spec/data/run_context/cookbooks/circular-dep1/attributes/default.rb +2 -2
- data/spec/data/run_context/cookbooks/circular-dep1/definitions/circular_dep1_res.rb +1 -1
- data/spec/data/run_context/cookbooks/circular-dep1/libraries/lib.rb +2 -2
- data/spec/data/run_context/cookbooks/circular-dep1/metadata.rb +2 -2
- data/spec/data/run_context/cookbooks/circular-dep1/providers/provider.rb +1 -1
- data/spec/data/run_context/cookbooks/circular-dep1/resources/resource.rb +1 -1
- data/spec/data/run_context/cookbooks/circular-dep2/attributes/default.rb +2 -2
- data/spec/data/run_context/cookbooks/circular-dep2/definitions/circular_dep2_res.rb +1 -1
- data/spec/data/run_context/cookbooks/circular-dep2/libraries/lib.rb +2 -2
- data/spec/data/run_context/cookbooks/circular-dep2/metadata.rb +2 -2
- data/spec/data/run_context/cookbooks/circular-dep2/providers/provider.rb +1 -1
- data/spec/data/run_context/cookbooks/circular-dep2/resources/resource.rb +1 -1
- data/spec/data/run_context/cookbooks/dependency1/attributes/aa_first.rb +2 -2
- data/spec/data/run_context/cookbooks/dependency1/attributes/default.rb +2 -2
- data/spec/data/run_context/cookbooks/dependency1/attributes/zz_last.rb +2 -2
- data/spec/data/run_context/cookbooks/dependency1/definitions/dependency1_res.rb +1 -1
- data/spec/data/run_context/cookbooks/dependency1/libraries/lib.rb +2 -2
- data/spec/data/run_context/cookbooks/dependency1/providers/provider.rb +1 -1
- data/spec/data/run_context/cookbooks/dependency1/resources/resource.rb +1 -1
- data/spec/data/run_context/cookbooks/dependency2/attributes/default.rb +2 -2
- data/spec/data/run_context/cookbooks/dependency2/definitions/dependency2_res.rb +1 -1
- data/spec/data/run_context/cookbooks/dependency2/libraries/lib.rb +2 -2
- data/spec/data/run_context/cookbooks/dependency2/providers/provider.rb +1 -1
- data/spec/data/run_context/cookbooks/dependency2/resources/resource.rb +1 -1
- data/spec/data/run_context/cookbooks/include/recipes/default.rb +24 -24
- data/spec/data/run_context/cookbooks/include/recipes/includee.rb +3 -3
- data/spec/data/run_context/cookbooks/no-default-attr/attributes/server.rb +2 -2
- data/spec/data/run_context/cookbooks/no-default-attr/definitions/no_default-attr_res.rb +1 -1
- data/spec/data/run_context/cookbooks/no-default-attr/providers/provider.rb +1 -1
- data/spec/data/run_context/cookbooks/no-default-attr/resources/resource.rb +1 -1
- data/spec/data/run_context/cookbooks/test-with-circular-deps/attributes/default.rb +2 -2
- data/spec/data/run_context/cookbooks/test-with-circular-deps/definitions/test_with-circular-deps_res.rb +1 -1
- data/spec/data/run_context/cookbooks/test-with-circular-deps/libraries/lib.rb +2 -2
- data/spec/data/run_context/cookbooks/test-with-circular-deps/metadata.rb +2 -2
- data/spec/data/run_context/cookbooks/test-with-circular-deps/providers/provider.rb +1 -1
- data/spec/data/run_context/cookbooks/test-with-circular-deps/resources/resource.rb +1 -1
- data/spec/data/run_context/cookbooks/test-with-deps/attributes/default.rb +2 -2
- data/spec/data/run_context/cookbooks/test-with-deps/definitions/test_with-deps_res.rb +1 -1
- data/spec/data/run_context/cookbooks/test-with-deps/libraries/lib.rb +1 -1
- data/spec/data/run_context/cookbooks/test-with-deps/metadata.rb +3 -3
- data/spec/data/run_context/cookbooks/test-with-deps/providers/provider.rb +1 -1
- data/spec/data/run_context/cookbooks/test-with-deps/resources/resource.rb +1 -1
- data/spec/data/run_context/cookbooks/test/attributes/george.rb +1 -1
- data/spec/data/run_context/cookbooks/test/definitions/new_animals.rb +9 -9
- data/spec/data/run_context/cookbooks/test/definitions/new_cat.rb +5 -5
- data/spec/data/run_context/cookbooks/test/definitions/test_res.rb +1 -1
- data/spec/data/run_context/cookbooks/test/providers/provider.rb +1 -1
- data/spec/data/run_context/cookbooks/test/recipes/default.rb +5 -5
- data/spec/data/run_context/cookbooks/test/recipes/one.rb +7 -7
- data/spec/data/run_context/cookbooks/test/recipes/two.rb +7 -7
- data/spec/data/run_context/cookbooks/test/resources/resource.rb +1 -1
- data/spec/data/run_context/nodes/run_context.rb +5 -5
- data/spec/data/sample_msu1.xml +10 -10
- data/spec/data/sample_msu2.xml +14 -14
- data/spec/data/sample_msu3.xml +16 -16
- data/spec/data/search_queries_to_transform.txt +98 -98
- data/spec/data/shef-config.rb +10 -10
- data/spec/data/ssl/5e707473.0 +18 -18
- data/spec/data/ssl/chef-rspec.cert +27 -27
- data/spec/data/ssl/chef-rspec.key +27 -27
- data/spec/data/ssl/key.pem +15 -15
- data/spec/data/ssl/private_key.pem +27 -27
- data/spec/data/ssl/private_key_with_whitespace.pem +32 -32
- data/spec/data/standalone_cookbook/chefignore +9 -9
- data/spec/data/standalone_cookbook/recipes/default.rb +2 -2
- data/spec/data/trusted_certs/example.crt +22 -22
- data/spec/data/trusted_certs/example_no_cn.crt +36 -36
- data/spec/data/trusted_certs/intermediate.pem +27 -27
- data/spec/data/trusted_certs/opscode.pem +57 -57
- data/spec/data/trusted_certs/root.pem +22 -22
- data/spec/functional/application_spec.rb +58 -58
- data/spec/functional/assets/chefinittest +36 -34
- data/spec/functional/assets/testchefsubsys +10 -10
- data/spec/functional/assets/yumrepo/repodata/repomd.xml +55 -55
- data/spec/functional/audit/rspec_formatter_spec.rb +54 -54
- data/spec/functional/audit/runner_spec.rb +121 -121
- data/spec/functional/dsl/reboot_pending_spec.rb +106 -106
- data/spec/functional/dsl/registry_helper_spec.rb +61 -61
- data/spec/functional/event_loggers/windows_eventlog_spec.rb +104 -104
- data/spec/functional/file_content_management/deploy_strategies_spec.rb +229 -229
- data/spec/functional/http/simple_spec.rb +140 -140
- data/spec/functional/knife/configure_spec.rb +33 -33
- data/spec/functional/knife/cookbook_delete_spec.rb +156 -156
- data/spec/functional/knife/exec_spec.rb +55 -55
- data/spec/functional/knife/rehash_spec.rb +39 -39
- data/spec/functional/knife/smoke_test.rb +42 -42
- data/spec/functional/knife/ssh_spec.rb +284 -284
- data/spec/functional/mixin/powershell_out_spec.rb +43 -59
- data/spec/functional/mixin/shell_out_spec.rb +48 -48
- data/spec/functional/notifications_spec.rb +238 -238
- data/spec/functional/provider/remote_file/cache_control_data_spec.rb +100 -100
- data/spec/functional/provider/whyrun_safe_ruby_block_spec.rb +51 -51
- data/spec/functional/rebooter_spec.rb +105 -105
- data/spec/functional/resource/aix_service_spec.rb +138 -138
- data/spec/functional/resource/aixinit_service_spec.rb +211 -211
- data/spec/functional/resource/base.rb +28 -28
- data/spec/functional/resource/bash_spec.rb +88 -88
- data/spec/functional/resource/batch_spec.rb +34 -34
- data/spec/functional/resource/bff_spec.rb +120 -120
- data/spec/functional/resource/chocolatey_package_spec.rb +125 -125
- data/spec/functional/resource/cookbook_file_spec.rb +81 -81
- data/spec/functional/resource/cron_spec.rb +179 -179
- data/spec/functional/resource/deploy_revision_spec.rb +881 -881
- data/spec/functional/resource/directory_spec.rb +43 -43
- data/spec/functional/resource/dnf_package_spec.rb +686 -686
- data/spec/functional/resource/dpkg_package_spec.rb +339 -339
- data/spec/functional/resource/dsc_resource_spec.rb +90 -90
- data/spec/functional/resource/dsc_script_spec.rb +484 -484
- data/spec/functional/resource/env_spec.rb +192 -192
- data/spec/functional/resource/execute_spec.rb +171 -171
- data/spec/functional/resource/file_spec.rb +167 -167
- data/spec/functional/resource/git_spec.rb +257 -257
- data/spec/functional/resource/group_spec.rb +488 -488
- data/spec/functional/resource/ifconfig_spec.rb +171 -171
- data/spec/functional/resource/link_spec.rb +703 -703
- data/spec/functional/resource/mount_spec.rb +207 -207
- data/spec/functional/resource/msu_package_spec.rb +84 -84
- data/spec/functional/resource/ohai_spec.rb +62 -62
- data/spec/functional/resource/package_spec.rb +386 -386
- data/spec/functional/resource/powershell_script_spec.rb +601 -601
- data/spec/functional/resource/reboot_spec.rb +103 -103
- data/spec/functional/resource/registry_spec.rb +676 -676
- data/spec/functional/resource/remote_directory_spec.rb +220 -220
- data/spec/functional/resource/remote_file_spec.rb +249 -249
- data/spec/functional/resource/rpm_spec.rb +120 -120
- data/spec/functional/resource/template_spec.rb +212 -212
- data/spec/functional/resource/user/dscl_spec.rb +196 -196
- data/spec/functional/resource/user/useradd_spec.rb +709 -709
- data/spec/functional/resource/user/windows_spec.rb +133 -133
- data/spec/functional/resource/windows_package_spec.rb +168 -168
- data/spec/functional/resource/windows_service_spec.rb +102 -102
- data/spec/functional/rest_spec.rb +95 -95
- data/spec/functional/run_lock_spec.rb +473 -473
- data/spec/functional/shell_spec.rb +148 -148
- data/spec/functional/tiny_server_spec.rb +79 -79
- data/spec/functional/util/path_helper_spec.rb +37 -37
- data/spec/functional/util/powershell/cmdlet_spec.rb +111 -111
- data/spec/functional/version_spec.rb +35 -35
- data/spec/functional/win32/crypto_spec.rb +54 -54
- data/spec/functional/win32/registry_spec.rb +624 -624
- data/spec/functional/win32/security_spec.rb +100 -100
- data/spec/functional/win32/service_manager_spec.rb +220 -220
- data/spec/functional/win32/sid_spec.rb +55 -55
- data/spec/functional/win32/version_info_spec.rb +50 -50
- data/spec/functional/win32/versions_spec.rb +117 -117
- data/spec/integration/client/client_spec.rb +535 -535
- data/spec/integration/client/exit_code_spec.rb +245 -245
- data/spec/integration/client/ipv6_spec.rb +134 -134
- data/spec/integration/knife/chef_fs_data_store_spec.rb +556 -556
- data/spec/integration/knife/chef_repo_path_spec.rb +959 -959
- data/spec/integration/knife/chef_repository_file_system_spec.rb +296 -296
- data/spec/integration/knife/chefignore_spec.rb +300 -300
- data/spec/integration/knife/client_bulk_delete_spec.rb +130 -130
- data/spec/integration/knife/client_create_spec.rb +69 -69
- data/spec/integration/knife/client_delete_spec.rb +63 -63
- data/spec/integration/knife/client_key_create_spec.rb +65 -65
- data/spec/integration/knife/client_key_delete_spec.rb +42 -42
- data/spec/integration/knife/client_key_list_spec.rb +60 -60
- data/spec/integration/knife/client_key_show_spec.rb +44 -44
- data/spec/integration/knife/client_list_spec.rb +48 -48
- data/spec/integration/knife/client_show_spec.rb +36 -36
- data/spec/integration/knife/common_options_spec.rb +155 -155
- data/spec/integration/knife/cookbook_api_ipv6_spec.rb +112 -112
- data/spec/integration/knife/cookbook_bulk_delete_spec.rb +64 -64
- data/spec/integration/knife/cookbook_download_spec.rb +95 -95
- data/spec/integration/knife/cookbook_list_spec.rb +54 -54
- data/spec/integration/knife/cookbook_show_spec.rb +159 -159
- data/spec/integration/knife/cookbook_upload_spec.rb +90 -90
- data/spec/integration/knife/data_bag_create_spec.rb +55 -55
- data/spec/integration/knife/data_bag_delete_spec.rb +58 -58
- data/spec/integration/knife/data_bag_from_file_spec.rb +115 -115
- data/spec/integration/knife/data_bag_list_spec.rb +43 -43
- data/spec/integration/knife/data_bag_show_spec.rb +53 -53
- data/spec/integration/knife/delete_spec.rb +1017 -1017
- data/spec/integration/knife/deps_spec.rb +706 -706
- data/spec/integration/knife/diff_spec.rb +602 -602
- data/spec/integration/knife/download_spec.rb +1333 -1333
- data/spec/integration/knife/environment_compare_spec.rb +74 -74
- data/spec/integration/knife/environment_create_spec.rb +40 -40
- data/spec/integration/knife/environment_delete_spec.rb +36 -36
- data/spec/integration/knife/environment_from_file_spec.rb +115 -115
- data/spec/integration/knife/environment_list_spec.rb +41 -41
- data/spec/integration/knife/environment_show_spec.rb +76 -76
- data/spec/integration/knife/list_spec.rb +1059 -1059
- data/spec/integration/knife/node_bulk_delete_spec.rb +51 -51
- data/spec/integration/knife/node_create_spec.rb +46 -46
- data/spec/integration/knife/node_delete_spec.rb +47 -47
- data/spec/integration/knife/node_environment_set_spec.rb +45 -45
- data/spec/integration/knife/node_from_file_spec.rb +58 -58
- data/spec/integration/knife/node_list_spec.rb +44 -44
- data/spec/integration/knife/node_run_list_add_spec.rb +53 -53
- data/spec/integration/knife/node_run_list_remove_spec.rb +35 -35
- data/spec/integration/knife/node_run_list_set_spec.rb +40 -40
- data/spec/integration/knife/node_show_spec.rb +35 -35
- data/spec/integration/knife/raw_spec.rb +244 -244
- data/spec/integration/knife/redirection_spec.rb +52 -52
- data/spec/integration/knife/role_bulk_delete_spec.rb +51 -51
- data/spec/integration/knife/role_create_spec.rb +40 -40
- data/spec/integration/knife/role_delete_spec.rb +47 -47
- data/spec/integration/knife/role_from_file_spec.rb +95 -95
- data/spec/integration/knife/role_list_spec.rb +44 -44
- data/spec/integration/knife/role_show_spec.rb +50 -50
- data/spec/integration/knife/serve_spec.rb +57 -57
- data/spec/integration/knife/show_spec.rb +167 -167
- data/spec/integration/knife/upload_spec.rb +1548 -1548
- data/spec/integration/recipes/accumulator_spec.rb +232 -232
- data/spec/integration/recipes/lwrp_inline_resources_spec.rb +175 -175
- data/spec/integration/recipes/lwrp_spec.rb +53 -53
- data/spec/integration/recipes/noop_resource_spec.rb +24 -24
- data/spec/integration/recipes/notifies_spec.rb +334 -334
- data/spec/integration/recipes/notifying_block_spec.rb +111 -111
- data/spec/integration/recipes/provider_choice.rb +37 -37
- data/spec/integration/recipes/recipe_dsl_spec.rb +1523 -1523
- data/spec/integration/recipes/remote_directory.rb +74 -74
- data/spec/integration/recipes/resource_action_spec.rb +581 -581
- data/spec/integration/recipes/resource_converge_if_changed_spec.rb +496 -496
- data/spec/integration/recipes/resource_load_spec.rb +208 -208
- data/spec/integration/solo/solo_spec.rb +217 -217
- data/spec/rcov.opts +2 -2
- data/spec/scripts/ssl-serve.rb +47 -47
- data/spec/spec_helper.rb +288 -270
- data/spec/stress/win32/file_spec.rb +37 -37
- data/spec/stress/win32/memory_spec.rb +22 -22
- data/spec/stress/win32/security_spec.rb +69 -69
- data/spec/support/chef_helpers.rb +115 -115
- data/spec/support/key_helpers.rb +104 -104
- data/spec/support/lib/chef/provider/easy.rb +35 -35
- data/spec/support/lib/chef/provider/openldap_includer.rb +29 -29
- data/spec/support/lib/chef/provider/snakeoil.rb +42 -42
- data/spec/support/lib/chef/resource/cat.rb +39 -39
- data/spec/support/lib/chef/resource/one_two_three_four.rb +38 -38
- data/spec/support/lib/chef/resource/openldap_includer.rb +28 -28
- data/spec/support/lib/chef/resource/with_state.rb +30 -30
- data/spec/support/lib/chef/resource/zen_follower.rb +35 -35
- data/spec/support/lib/chef/resource/zen_master.rb +42 -42
- data/spec/support/lib/library_load_order.rb +20 -20
- data/spec/support/matchers/leak.rb +98 -98
- data/spec/support/mock/constant.rb +52 -52
- data/spec/support/mock/platform.rb +25 -25
- data/spec/support/platform_helpers.rb +237 -237
- data/spec/support/platforms/prof/gc.rb +51 -51
- data/spec/support/platforms/prof/win32.rb +45 -45
- data/spec/support/platforms/win32/spec_service.rb +59 -59
- data/spec/support/shared/context/client.rb +302 -302
- data/spec/support/shared/context/config.rb +21 -21
- data/spec/support/shared/context/win32.rb +34 -34
- data/spec/support/shared/examples/client.rb +53 -53
- data/spec/support/shared/functional/diff_disabled.rb +10 -10
- data/spec/support/shared/functional/directory_resource.rb +176 -176
- data/spec/support/shared/functional/execute_resource.rb +150 -150
- data/spec/support/shared/functional/file_resource.rb +1050 -1050
- data/spec/support/shared/functional/http.rb +248 -248
- data/spec/support/shared/functional/knife.rb +37 -37
- data/spec/support/shared/functional/securable_resource.rb +547 -547
- data/spec/support/shared/functional/securable_resource_with_reporting.rb +394 -394
- data/spec/support/shared/functional/win32_service.rb +57 -57
- data/spec/support/shared/functional/windows_script.rb +272 -272
- data/spec/support/shared/integration/app_server_support.rb +40 -40
- data/spec/support/shared/integration/integration_helper.rb +154 -154
- data/spec/support/shared/integration/knife_support.rb +185 -185
- data/spec/support/shared/matchers/exit_with_code.rb +32 -32
- data/spec/support/shared/matchers/match_environment_variable.rb +17 -17
- data/spec/support/shared/shared_examples.rb +14 -14
- data/spec/support/shared/unit/api_error_inspector.rb +190 -190
- data/spec/support/shared/unit/api_versioning.rb +77 -77
- data/spec/support/shared/unit/application_dot_d.rb +73 -73
- data/spec/support/shared/unit/execute_resource.rb +170 -170
- data/spec/support/shared/unit/file_system_support.rb +69 -69
- data/spec/support/shared/unit/knife_shared.rb +39 -39
- data/spec/support/shared/unit/mock_shellout.rb +49 -49
- data/spec/support/shared/unit/platform_introspector.rb +189 -189
- data/spec/support/shared/unit/provider/file.rb +845 -845
- data/spec/support/shared/unit/provider/useradd_based_user_provider.rb +402 -402
- data/spec/support/shared/unit/resource/static_provider_resolution.rb +63 -63
- data/spec/support/shared/unit/script_resource.rb +98 -98
- data/spec/support/shared/unit/user_and_client_shared.rb +114 -114
- data/spec/support/shared/unit/windows_script_resource.rb +80 -80
- data/spec/tiny_server.rb +192 -192
- data/spec/unit/api_client/registration_spec.rb +278 -278
- data/spec/unit/api_client_spec.rb +341 -341
- data/spec/unit/api_client_v1_spec.rb +455 -455
- data/spec/unit/application/apply_spec.rb +113 -113
- data/spec/unit/application/client_spec.rb +530 -530
- data/spec/unit/application/exit_code_spec.rb +229 -229
- data/spec/unit/application/knife_spec.rb +229 -229
- data/spec/unit/application/solo_spec.rb +232 -232
- data/spec/unit/application_spec.rb +411 -411
- data/spec/unit/audit/audit_event_proxy_spec.rb +318 -318
- data/spec/unit/audit/audit_reporter_spec.rb +439 -439
- data/spec/unit/audit/control_group_data_spec.rb +482 -482
- data/spec/unit/audit/logger_spec.rb +42 -42
- data/spec/unit/audit/rspec_formatter_spec.rb +29 -29
- data/spec/unit/audit/runner_spec.rb +144 -144
- data/spec/unit/chef_class_spec.rb +110 -110
- data/spec/unit/chef_fs/config_spec.rb +235 -235
- data/spec/unit/chef_fs/data_handler/group_handler_spec.rb +63 -63
- data/spec/unit/chef_fs/diff_spec.rb +328 -328
- data/spec/unit/chef_fs/file_pattern_spec.rb +512 -512
- data/spec/unit/chef_fs/file_system/cookbook_subdir_spec.rb +34 -34
- data/spec/unit/chef_fs/file_system/operation_failed_error_spec.rb +47 -47
- data/spec/unit/chef_fs/file_system/repository/base_file_spec.rb +126 -126
- data/spec/unit/chef_fs/file_system/repository/directory_spec.rb +175 -175
- data/spec/unit/chef_fs/file_system_spec.rb +148 -148
- data/spec/unit/chef_fs/parallelizer.rb +477 -477
- data/spec/unit/chef_fs/path_util_spec.rb +108 -108
- data/spec/unit/chef_spec.rb +25 -25
- data/spec/unit/client_spec.rb +604 -604
- data/spec/unit/config_fetcher_spec.rb +125 -125
- data/spec/unit/config_spec.rb +31 -31
- data/spec/unit/cookbook/chefignore_spec.rb +49 -49
- data/spec/unit/cookbook/cookbook_version_loader_spec.rb +207 -207
- data/spec/unit/cookbook/file_vendor_spec.rb +112 -112
- data/spec/unit/cookbook/metadata_spec.rb +971 -971
- data/spec/unit/cookbook/synchronizer_spec.rb +539 -539
- data/spec/unit/cookbook/syntax_check_spec.rb +225 -225
- data/spec/unit/cookbook_loader_spec.rb +299 -299
- data/spec/unit/cookbook_manifest_spec.rb +243 -243
- data/spec/unit/cookbook_site_streaming_uploader_spec.rb +203 -203
- data/spec/unit/cookbook_spec.rb +66 -66
- data/spec/unit/cookbook_uploader_spec.rb +199 -199
- data/spec/unit/cookbook_version_file_specificity_spec.rb +576 -576
- data/spec/unit/cookbook_version_spec.rb +359 -359
- data/spec/unit/daemon_spec.rb +183 -174
- data/spec/unit/data_bag_item_spec.rb +388 -388
- data/spec/unit/data_bag_spec.rb +260 -260
- data/spec/unit/data_collector/messages/helpers_spec.rb +193 -193
- data/spec/unit/data_collector/messages_spec.rb +192 -192
- data/spec/unit/data_collector/resource_report_spec.rb +145 -145
- data/spec/unit/data_collector_spec.rb +741 -741
- data/spec/unit/decorator/lazy_array_spec.rb +58 -58
- data/spec/unit/decorator/lazy_spec.rb +39 -39
- data/spec/unit/decorator_spec.rb +142 -142
- data/spec/unit/deprecated_spec.rb +59 -59
- data/spec/unit/deprecation_spec.rb +143 -143
- data/spec/unit/digester_spec.rb +49 -49
- data/spec/unit/dsl/audit_spec.rb +43 -43
- data/spec/unit/dsl/data_query_spec.rb +107 -107
- data/spec/unit/dsl/declare_resource_spec.rb +365 -365
- data/spec/unit/dsl/platform_introspection_spec.rb +129 -129
- data/spec/unit/dsl/reboot_pending_spec.rb +100 -100
- data/spec/unit/dsl/recipe_spec.rb +93 -93
- data/spec/unit/dsl/registry_helper_spec.rb +52 -52
- data/spec/unit/dsl/resources_spec.rb +85 -85
- data/spec/unit/encrypted_data_bag_item/check_encrypted_spec.rb +96 -96
- data/spec/unit/encrypted_data_bag_item_spec.rb +438 -438
- data/spec/unit/environment_spec.rb +470 -470
- data/spec/unit/event_dispatch/dispatcher_spec.rb +122 -122
- data/spec/unit/event_dispatch/dsl_spec.rb +83 -83
- data/spec/unit/exceptions_spec.rb +132 -132
- data/spec/unit/file_access_control_spec.rb +308 -308
- data/spec/unit/file_cache_spec.rb +114 -114
- data/spec/unit/file_content_management/deploy/cp_spec.rb +44 -44
- data/spec/unit/file_content_management/deploy/mv_unix_spec.rb +101 -101
- data/spec/unit/file_content_management/deploy/mv_windows_spec.rb +232 -232
- data/spec/unit/file_content_management/tempfile_spec.rb +115 -115
- data/spec/unit/formatters/base_spec.rb +71 -71
- data/spec/unit/formatters/doc_spec.rb +92 -92
- data/spec/unit/formatters/error_description_spec.rb +141 -141
- data/spec/unit/formatters/error_inspectors/api_error_formatting_spec.rb +76 -76
- data/spec/unit/formatters/error_inspectors/compile_error_inspector_spec.rb +265 -265
- data/spec/unit/formatters/error_inspectors/cookbook_resolve_error_inspector_spec.rb +126 -126
- data/spec/unit/formatters/error_inspectors/cookbook_sync_error_inspector_spec.rb +43 -43
- data/spec/unit/formatters/error_inspectors/node_load_error_inspector_spec.rb +26 -26
- data/spec/unit/formatters/error_inspectors/registration_error_inspector_spec.rb +26 -26
- data/spec/unit/formatters/error_inspectors/resource_failure_inspector_spec.rb +191 -191
- data/spec/unit/formatters/error_inspectors/run_list_expansion_error_inspector_spec.rb +91 -91
- data/spec/unit/guard_interpreter/resource_guard_interpreter_spec.rb +155 -155
- data/spec/unit/guard_interpreter_spec.rb +41 -41
- data/spec/unit/handler/json_file_spec.rb +63 -63
- data/spec/unit/handler_spec.rb +302 -302
- data/spec/unit/http/api_versions_spec.rb +69 -69
- data/spec/unit/http/authenticator_spec.rb +80 -80
- data/spec/unit/http/basic_client_spec.rb +72 -72
- data/spec/unit/http/http_request_spec.rb +91 -91
- data/spec/unit/http/json_input_spec.rb +128 -128
- data/spec/unit/http/simple_spec.rb +32 -32
- data/spec/unit/http/socketless_chef_zero_client_spec.rb +173 -173
- data/spec/unit/http/ssl_policies_spec.rb +169 -169
- data/spec/unit/http/validate_content_length_spec.rb +207 -207
- data/spec/unit/http_spec.rb +220 -220
- data/spec/unit/json_compat_spec.rb +105 -105
- data/spec/unit/key_spec.rb +631 -631
- data/spec/unit/knife/bootstrap/chef_vault_handler_spec.rb +152 -152
- data/spec/unit/knife/bootstrap/client_builder_spec.rb +207 -207
- data/spec/unit/knife/bootstrap_spec.rb +824 -824
- data/spec/unit/knife/client_bulk_delete_spec.rb +166 -166
- data/spec/unit/knife/client_create_spec.rb +186 -186
- data/spec/unit/knife/client_delete_spec.rb +99 -99
- data/spec/unit/knife/client_edit_spec.rb +53 -53
- data/spec/unit/knife/client_list_spec.rb +34 -34
- data/spec/unit/knife/client_reregister_spec.rb +62 -62
- data/spec/unit/knife/client_show_spec.rb +52 -52
- data/spec/unit/knife/configure_client_spec.rb +83 -83
- data/spec/unit/knife/configure_spec.rb +241 -241
- data/spec/unit/knife/cookbook_bulk_delete_spec.rb +87 -87
- data/spec/unit/knife/cookbook_create_spec.rb +261 -261
- data/spec/unit/knife/cookbook_delete_spec.rb +239 -239
- data/spec/unit/knife/cookbook_download_spec.rb +237 -237
- data/spec/unit/knife/cookbook_list_spec.rb +88 -88
- data/spec/unit/knife/cookbook_metadata_from_file_spec.rb +65 -65
- data/spec/unit/knife/cookbook_metadata_spec.rb +182 -182
- data/spec/unit/knife/cookbook_show_spec.rb +221 -221
- data/spec/unit/knife/cookbook_site_download_spec.rb +150 -150
- data/spec/unit/knife/cookbook_site_install_spec.rb +200 -200
- data/spec/unit/knife/cookbook_site_share_spec.rb +209 -209
- data/spec/unit/knife/cookbook_site_unshare_spec.rb +77 -77
- data/spec/unit/knife/cookbook_test_spec.rb +84 -84
- data/spec/unit/knife/cookbook_upload_spec.rb +331 -331
- data/spec/unit/knife/core/bootstrap_context_spec.rb +307 -307
- data/spec/unit/knife/core/cookbook_scm_repo_spec.rb +187 -187
- data/spec/unit/knife/core/custom_manifest_loader_spec.rb +41 -41
- data/spec/unit/knife/core/gem_glob_loader_spec.rb +209 -209
- data/spec/unit/knife/core/hashed_command_loader_spec.rb +110 -110
- data/spec/unit/knife/core/node_editor_spec.rb +211 -211
- data/spec/unit/knife/core/object_loader_spec.rb +81 -81
- data/spec/unit/knife/core/subcommand_loader_spec.rb +70 -70
- data/spec/unit/knife/core/ui_spec.rb +629 -629
- data/spec/unit/knife/data_bag_create_spec.rb +129 -129
- data/spec/unit/knife/data_bag_edit_spec.rb +127 -127
- data/spec/unit/knife/data_bag_from_file_spec.rb +173 -173
- data/spec/unit/knife/data_bag_secret_options_spec.rb +165 -165
- data/spec/unit/knife/data_bag_show_spec.rb +124 -124
- data/spec/unit/knife/environment_compare_spec.rb +112 -112
- data/spec/unit/knife/environment_create_spec.rb +91 -91
- data/spec/unit/knife/environment_delete_spec.rb +71 -71
- data/spec/unit/knife/environment_edit_spec.rb +79 -79
- data/spec/unit/knife/environment_from_file_spec.rb +90 -90
- data/spec/unit/knife/environment_list_spec.rb +54 -54
- data/spec/unit/knife/environment_show_spec.rb +52 -52
- data/spec/unit/knife/index_rebuild_spec.rb +125 -125
- data/spec/unit/knife/key_create_spec.rb +223 -223
- data/spec/unit/knife/key_delete_spec.rb +133 -133
- data/spec/unit/knife/key_edit_spec.rb +264 -264
- data/spec/unit/knife/key_helper.rb +74 -74
- data/spec/unit/knife/key_list_spec.rb +216 -216
- data/spec/unit/knife/key_show_spec.rb +126 -126
- data/spec/unit/knife/knife_help.rb +92 -92
- data/spec/unit/knife/node_bulk_delete_spec.rb +94 -94
- data/spec/unit/knife/node_delete_spec.rb +77 -77
- data/spec/unit/knife/node_edit_spec.rb +114 -114
- data/spec/unit/knife/node_environment_set_spec.rb +56 -56
- data/spec/unit/knife/node_from_file_spec.rb +59 -59
- data/spec/unit/knife/node_list_spec.rb +62 -62
- data/spec/unit/knife/node_run_list_add_spec.rb +145 -145
- data/spec/unit/knife/node_run_list_remove_spec.rb +106 -106
- data/spec/unit/knife/node_run_list_set_spec.rb +115 -115
- data/spec/unit/knife/node_show_spec.rb +65 -65
- data/spec/unit/knife/osc_user_create_spec.rb +93 -93
- data/spec/unit/knife/osc_user_delete_spec.rb +44 -44
- data/spec/unit/knife/osc_user_edit_spec.rb +52 -52
- data/spec/unit/knife/osc_user_list_spec.rb +37 -37
- data/spec/unit/knife/osc_user_reregister_spec.rb +58 -58
- data/spec/unit/knife/osc_user_show_spec.rb +46 -46
- data/spec/unit/knife/raw_spec.rb +43 -43
- data/spec/unit/knife/role_bulk_delete_spec.rb +80 -80
- data/spec/unit/knife/role_create_spec.rb +80 -80
- data/spec/unit/knife/role_delete_spec.rb +67 -67
- data/spec/unit/knife/role_edit_spec.rb +77 -77
- data/spec/unit/knife/role_env_run_list_add_spec.rb +217 -217
- data/spec/unit/knife/role_env_run_list_clear_spec.rb +94 -94
- data/spec/unit/knife/role_env_run_list_remove_spec.rb +102 -102
- data/spec/unit/knife/role_env_run_list_replace_spec.rb +105 -105
- data/spec/unit/knife/role_env_run_list_set_spec.rb +99 -99
- data/spec/unit/knife/role_from_file_spec.rb +69 -69
- data/spec/unit/knife/role_list_spec.rb +54 -54
- data/spec/unit/knife/role_run_list_add_spec.rb +179 -179
- data/spec/unit/knife/role_run_list_clear_spec.rb +84 -84
- data/spec/unit/knife/role_run_list_remove_spec.rb +92 -92
- data/spec/unit/knife/role_run_list_replace_spec.rb +98 -98
- data/spec/unit/knife/role_run_list_set_spec.rb +89 -89
- data/spec/unit/knife/role_show_spec.rb +59 -59
- data/spec/unit/knife/ssh_spec.rb +426 -426
- data/spec/unit/knife/ssl_check_spec.rb +256 -256
- data/spec/unit/knife/ssl_fetch_spec.rb +222 -222
- data/spec/unit/knife/status_spec.rb +109 -109
- data/spec/unit/knife/tag_create_spec.rb +23 -23
- data/spec/unit/knife/tag_delete_spec.rb +25 -25
- data/spec/unit/knife/tag_list_spec.rb +23 -23
- data/spec/unit/knife/user_create_spec.rb +214 -214
- data/spec/unit/knife/user_delete_spec.rb +65 -65
- data/spec/unit/knife/user_edit_spec.rb +66 -66
- data/spec/unit/knife/user_list_spec.rb +36 -36
- data/spec/unit/knife/user_reregister_spec.rb +74 -74
- data/spec/unit/knife/user_show_spec.rb +65 -65
- data/spec/unit/knife_spec.rb +561 -561
- data/spec/unit/lib_backcompat_spec.rb +34 -34
- data/spec/unit/log/syslog_spec.rb +53 -53
- data/spec/unit/log/winevt_spec.rb +55 -55
- data/spec/unit/log_spec.rb +24 -24
- data/spec/unit/lwrp_spec.rb +777 -777
- data/spec/unit/mash_spec.rb +51 -51
- data/spec/unit/mixin/api_version_request_handling_spec.rb +126 -126
- data/spec/unit/mixin/checksum_spec.rb +54 -54
- data/spec/unit/mixin/command_spec.rb +107 -107
- data/spec/unit/mixin/convert_to_class_name_spec.rb +54 -54
- data/spec/unit/mixin/deep_merge_spec.rb +342 -342
- data/spec/unit/mixin/deprecation_spec.rb +57 -57
- data/spec/unit/mixin/enforce_ownership_and_permissions_spec.rb +96 -96
- data/spec/unit/mixin/homebrew_user_spec.rb +100 -100
- data/spec/unit/mixin/lazy_module_include.rb +71 -71
- data/spec/unit/mixin/params_validate_spec.rb +410 -410
- data/spec/unit/mixin/path_sanity_spec.rb +92 -92
- data/spec/unit/mixin/powershell_out_spec.rb +94 -94
- data/spec/unit/mixin/powershell_type_coercions_spec.rb +83 -83
- data/spec/unit/mixin/properties_spec.rb +97 -97
- data/spec/unit/mixin/proxified_socket_spec.rb +97 -97
- data/spec/unit/mixin/securable_spec.rb +314 -314
- data/spec/unit/mixin/shell_out_spec.rb +302 -302
- data/spec/unit/mixin/subclass_directive_spec.rb +45 -45
- data/spec/unit/mixin/template_spec.rb +276 -276
- data/spec/unit/mixin/unformatter_spec.rb +61 -61
- data/spec/unit/mixin/uris_spec.rb +57 -57
- data/spec/unit/mixin/versioned_api_spec.rb +107 -107
- data/spec/unit/mixin/which.rb +160 -160
- data/spec/unit/mixin/windows_architecture_helper_spec.rb +85 -85
- data/spec/unit/mixin/xml_escape_spec.rb +54 -54
- data/spec/unit/monkey_patches/uri_spec.rb +34 -34
- data/spec/unit/monologger_spec.rb +45 -45
- data/spec/unit/node/attribute_spec.rb +1244 -1244
- data/spec/unit/node/immutable_collections_spec.rb +214 -214
- data/spec/unit/node/vivid_mash_spec.rb +353 -353
- data/spec/unit/node_map_spec.rb +170 -170
- data/spec/unit/node_spec.rb +1836 -1836
- data/spec/unit/org_spec.rb +196 -196
- data/spec/unit/platform/query_helpers_spec.rb +220 -220
- data/spec/unit/platform_spec.rb +269 -269
- data/spec/unit/policy_builder/dynamic_spec.rb +273 -273
- data/spec/unit/policy_builder/expand_node_object_spec.rb +336 -336
- data/spec/unit/policy_builder/policyfile_spec.rb +795 -795
- data/spec/unit/policy_builder_spec.rb +26 -26
- data/spec/unit/property/state_spec.rb +508 -508
- data/spec/unit/property/validation_spec.rb +720 -720
- data/spec/unit/property_spec.rb +1227 -1227
- data/spec/unit/provider/apt_repository_spec.rb +189 -189
- data/spec/unit/provider/apt_update_spec.rb +114 -114
- data/spec/unit/provider/breakpoint_spec.rb +53 -53
- data/spec/unit/provider/cookbook_file/content_spec.rb +39 -39
- data/spec/unit/provider/cookbook_file_spec.rb +58 -58
- data/spec/unit/provider/cron/unix_spec.rb +139 -139
- data/spec/unit/provider/cron_spec.rb +1010 -1010
- data/spec/unit/provider/deploy/revision_spec.rb +110 -110
- data/spec/unit/provider/deploy/timestamped_spec.rb +40 -40
- data/spec/unit/provider/deploy_spec.rb +641 -641
- data/spec/unit/provider/directory_spec.rb +300 -300
- data/spec/unit/provider/dsc_resource_spec.rb +343 -343
- data/spec/unit/provider/dsc_script_spec.rb +173 -173
- data/spec/unit/provider/env/windows_spec.rb +103 -103
- data/spec/unit/provider/env_spec.rb +310 -310
- data/spec/unit/provider/erl_call_spec.rb +85 -85
- data/spec/unit/provider/execute_spec.rb +242 -242
- data/spec/unit/provider/file/content_spec.rb +114 -114
- data/spec/unit/provider/file_spec.rb +56 -56
- data/spec/unit/provider/git_spec.rb +727 -727
- data/spec/unit/provider/group/dscl_spec.rb +331 -331
- data/spec/unit/provider/group/gpasswd_spec.rb +116 -116
- data/spec/unit/provider/group/groupadd_spec.rb +194 -194
- data/spec/unit/provider/group/groupmod_spec.rb +133 -133
- data/spec/unit/provider/group/pw_spec.rb +138 -138
- data/spec/unit/provider/group/suse_spec.rb +90 -90
- data/spec/unit/provider/group/usermod_spec.rb +115 -115
- data/spec/unit/provider/group/windows_spec.rb +109 -109
- data/spec/unit/provider/group_spec.rb +286 -286
- data/spec/unit/provider/http_request_spec.rb +159 -159
- data/spec/unit/provider/ifconfig/aix_spec.rb +180 -180
- data/spec/unit/provider/ifconfig/debian_spec.rb +332 -332
- data/spec/unit/provider/ifconfig/redhat_spec.rb +73 -73
- data/spec/unit/provider/ifconfig_spec.rb +194 -194
- data/spec/unit/provider/launchd_spec.rb +268 -268
- data/spec/unit/provider/link_spec.rb +407 -407
- data/spec/unit/provider/log_spec.rb +89 -89
- data/spec/unit/provider/mdadm_spec.rb +140 -140
- data/spec/unit/provider/mount/aix_spec.rb +237 -237
- data/spec/unit/provider/mount/mount_spec.rb +474 -474
- data/spec/unit/provider/mount/solaris_spec.rb +822 -822
- data/spec/unit/provider/mount/windows_spec.rb +149 -149
- data/spec/unit/provider/mount_spec.rb +191 -191
- data/spec/unit/provider/ohai_spec.rb +84 -84
- data/spec/unit/provider/osx_profile_spec.rb +255 -255
- data/spec/unit/provider/package/aix_spec.rb +185 -185
- data/spec/unit/provider/package/apt_spec.rb +481 -481
- data/spec/unit/provider/package/cab_spec.rb +272 -272
- data/spec/unit/provider/package/chocolatey_spec.rb +489 -489
- data/spec/unit/provider/package/dnf/python_helper_spec.rb +29 -29
- data/spec/unit/provider/package/dpkg_spec.rb +287 -287
- data/spec/unit/provider/package/easy_install_spec.rb +114 -114
- data/spec/unit/provider/package/freebsd/pkg_spec.rb +274 -274
- data/spec/unit/provider/package/freebsd/pkgng_spec.rb +148 -148
- data/spec/unit/provider/package/freebsd/port_spec.rb +163 -163
- data/spec/unit/provider/package/homebrew_spec.rb +292 -292
- data/spec/unit/provider/package/ips_spec.rb +233 -233
- data/spec/unit/provider/package/macports_spec.rb +203 -203
- data/spec/unit/provider/package/msu_spec.rb +283 -283
- data/spec/unit/provider/package/openbsd_spec.rb +132 -132
- data/spec/unit/provider/package/pacman_spec.rb +194 -194
- data/spec/unit/provider/package/paludis_spec.rb +134 -134
- data/spec/unit/provider/package/portage_spec.rb +315 -315
- data/spec/unit/provider/package/powershell_spec.rb +337 -337
- data/spec/unit/provider/package/rpm_spec.rb +429 -429
- data/spec/unit/provider/package/rubygems_spec.rb +824 -824
- data/spec/unit/provider/package/smartos_spec.rb +110 -110
- data/spec/unit/provider/package/solaris_spec.rb +167 -167
- data/spec/unit/provider/package/windows/exe_spec.rb +201 -201
- data/spec/unit/provider/package/windows/msi_spec.rb +168 -168
- data/spec/unit/provider/package/windows_spec.rb +443 -443
- data/spec/unit/provider/package/yum/yum_cache_spec.rb +27 -27
- data/spec/unit/provider/package/yum_spec.rb +2294 -2294
- data/spec/unit/provider/package/zypper_spec.rb +348 -348
- data/spec/unit/provider/package_spec.rb +949 -949
- data/spec/unit/provider/powershell_script_spec.rb +106 -106
- data/spec/unit/provider/registry_key_spec.rb +407 -407
- data/spec/unit/provider/remote_directory_spec.rb +236 -236
- data/spec/unit/provider/remote_file/cache_control_data_spec.rb +245 -245
- data/spec/unit/provider/remote_file/content_spec.rb +253 -253
- data/spec/unit/provider/remote_file/fetcher_spec.rb +94 -94
- data/spec/unit/provider/remote_file/ftp_spec.rb +217 -217
- data/spec/unit/provider/remote_file/http_spec.rb +322 -322
- data/spec/unit/provider/remote_file/local_file_spec.rb +105 -105
- data/spec/unit/provider/remote_file/network_file_spec.rb +45 -45
- data/spec/unit/provider/remote_file/sftp_spec.rb +150 -150
- data/spec/unit/provider/remote_file_spec.rb +61 -61
- data/spec/unit/provider/route_spec.rb +248 -248
- data/spec/unit/provider/ruby_block_spec.rb +45 -45
- data/spec/unit/provider/script_spec.rb +157 -157
- data/spec/unit/provider/service/aix_service_spec.rb +195 -195
- data/spec/unit/provider/service/aixinit_service_spec.rb +272 -272
- data/spec/unit/provider/service/arch_service_spec.rb +324 -324
- data/spec/unit/provider/service/debian_service_spec.rb +375 -375
- data/spec/unit/provider/service/freebsd_service_spec.rb +617 -617
- data/spec/unit/provider/service/gentoo_service_spec.rb +144 -144
- data/spec/unit/provider/service/init_service_spec.rb +235 -235
- data/spec/unit/provider/service/insserv_service_spec.rb +75 -75
- data/spec/unit/provider/service/invokercd_service_spec.rb +211 -211
- data/spec/unit/provider/service/macosx_spec.rb +335 -335
- data/spec/unit/provider/service/openbsd_service_spec.rb +549 -549
- data/spec/unit/provider/service/redhat_spec.rb +250 -250
- data/spec/unit/provider/service/simple_service_spec.rb +169 -169
- data/spec/unit/provider/service/solaris_smf_service_spec.rb +255 -255
- data/spec/unit/provider/service/systemd_service_spec.rb +370 -370
- data/spec/unit/provider/service/upstart_service_spec.rb +364 -364
- data/spec/unit/provider/service/windows_spec.rb +463 -463
- data/spec/unit/provider/service_spec.rb +168 -168
- data/spec/unit/provider/subversion_spec.rb +361 -361
- data/spec/unit/provider/systemd_unit_spec.rb +885 -885
- data/spec/unit/provider/template/content_spec.rb +169 -169
- data/spec/unit/provider/template_spec.rb +89 -89
- data/spec/unit/provider/user/dscl_spec.rb +902 -902
- data/spec/unit/provider/user/linux_spec.rb +112 -112
- data/spec/unit/provider/user/pw_spec.rb +255 -255
- data/spec/unit/provider/user/solaris_spec.rb +178 -178
- data/spec/unit/provider/user/windows_spec.rb +185 -185
- data/spec/unit/provider/user_spec.rb +478 -478
- data/spec/unit/provider/whyrun_safe_ruby_block_spec.rb +46 -46
- data/spec/unit/provider/yum_repository_spec.rb +35 -35
- data/spec/unit/provider_resolver_spec.rb +939 -939
- data/spec/unit/provider_spec.rb +198 -198
- data/spec/unit/pure_application_spec.rb +32 -32
- data/spec/unit/recipe_spec.rb +758 -758
- data/spec/unit/resource/apt_package_spec.rb +38 -38
- data/spec/unit/resource/apt_repository_spec.rb +50 -50
- data/spec/unit/resource/apt_update_spec.rb +50 -50
- data/spec/unit/resource/bash_spec.rb +40 -40
- data/spec/unit/resource/batch_spec.rb +49 -49
- data/spec/unit/resource/breakpoint_spec.rb +47 -47
- data/spec/unit/resource/cab_package_spec.rb +38 -38
- data/spec/unit/resource/chef_gem_spec.rb +157 -157
- data/spec/unit/resource/chocolatey_package_spec.rb +79 -79
- data/spec/unit/resource/conditional_action_not_nothing_spec.rb +45 -45
- data/spec/unit/resource/conditional_spec.rb +254 -254
- data/spec/unit/resource/cookbook_file_spec.rb +88 -88
- data/spec/unit/resource/cron_spec.rb +186 -186
- data/spec/unit/resource/csh_spec.rb +40 -40
- data/spec/unit/resource/deploy_revision_spec.rb +42 -42
- data/spec/unit/resource/deploy_spec.rb +283 -283
- data/spec/unit/resource/directory_spec.rb +82 -82
- data/spec/unit/resource/dnf_package_spec.rb +99 -99
- data/spec/unit/resource/dpkg_package_spec.rb +32 -32
- data/spec/unit/resource/dsc_resource_spec.rb +102 -102
- data/spec/unit/resource/dsc_script_spec.rb +134 -134
- data/spec/unit/resource/easy_install_package_spec.rb +39 -39
- data/spec/unit/resource/env_spec.rb +85 -85
- data/spec/unit/resource/erl_call_spec.rb +81 -81
- data/spec/unit/resource/execute_spec.rb +249 -249
- data/spec/unit/resource/file/verification/systemd_unit_spec.rb +103 -103
- data/spec/unit/resource/file/verification_spec.rb +139 -139
- data/spec/unit/resource/file_spec.rb +130 -130
- data/spec/unit/resource/freebsd_package_spec.rb +87 -87
- data/spec/unit/resource/gem_package_spec.rb +42 -42
- data/spec/unit/resource/git_spec.rb +50 -50
- data/spec/unit/resource/group_spec.rb +162 -162
- data/spec/unit/resource/homebrew_package_spec.rb +50 -50
- data/spec/unit/resource/http_request_spec.rb +59 -59
- data/spec/unit/resource/ifconfig_spec.rb +109 -109
- data/spec/unit/resource/ips_package_spec.rb +40 -40
- data/spec/unit/resource/ksh_spec.rb +40 -40
- data/spec/unit/resource/launchd_spec.rb +32 -32
- data/spec/unit/resource/link_spec.rb +134 -134
- data/spec/unit/resource/log_spec.rb +73 -73
- data/spec/unit/resource/macports_package_spec.rb +32 -32
- data/spec/unit/resource/mdadm_spec.rb +107 -107
- data/spec/unit/resource/mount_spec.rb +215 -215
- data/spec/unit/resource/msu_package_spec.rb +49 -49
- data/spec/unit/resource/ohai_spec.rb +61 -61
- data/spec/unit/resource/openbsd_package_spec.rb +48 -48
- data/spec/unit/resource/osx_profile_spec.rb +62 -62
- data/spec/unit/resource/package_spec.rb +98 -98
- data/spec/unit/resource/pacman_package_spec.rb +32 -32
- data/spec/unit/resource/perl_spec.rb +40 -40
- data/spec/unit/resource/portage_package_spec.rb +38 -38
- data/spec/unit/resource/powershell_package_spec.rb +68 -68
- data/spec/unit/resource/powershell_script_spec.rb +136 -136
- data/spec/unit/resource/python_spec.rb +40 -40
- data/spec/unit/resource/registry_key_spec.rb +215 -215
- data/spec/unit/resource/remote_directory_spec.rb +97 -97
- data/spec/unit/resource/remote_file_spec.rb +207 -207
- data/spec/unit/resource/resource_notification_spec.rb +169 -169
- data/spec/unit/resource/route_spec.rb +107 -107
- data/spec/unit/resource/rpm_package_spec.rb +46 -46
- data/spec/unit/resource/ruby_block_spec.rb +61 -61
- data/spec/unit/resource/ruby_spec.rb +40 -40
- data/spec/unit/resource/scm_spec.rb +193 -193
- data/spec/unit/resource/script_spec.rb +44 -44
- data/spec/unit/resource/service_spec.rb +179 -179
- data/spec/unit/resource/smartos_package_spec.rb +33 -33
- data/spec/unit/resource/solaris_package_spec.rb +42 -42
- data/spec/unit/resource/subversion_spec.rb +71 -71
- data/spec/unit/resource/systemd_unit_spec.rb +133 -133
- data/spec/unit/resource/template_spec.rb +210 -210
- data/spec/unit/resource/timestamped_deploy_spec.rb +32 -32
- data/spec/unit/resource/user_spec.rb +133 -133
- data/spec/unit/resource/windows_package_spec.rb +95 -95
- data/spec/unit/resource/windows_service_spec.rb +49 -49
- data/spec/unit/resource/yum_package_spec.rb +150 -150
- data/spec/unit/resource/yum_repository_spec.rb +49 -49
- data/spec/unit/resource_builder_spec.rb +1 -1
- data/spec/unit/resource_collection/resource_list_spec.rb +137 -137
- data/spec/unit/resource_collection/resource_set_spec.rb +199 -199
- data/spec/unit/resource_collection/stepable_iterator_spec.rb +144 -144
- data/spec/unit/resource_collection_spec.rb +399 -399
- data/spec/unit/resource_definition_spec.rb +117 -117
- data/spec/unit/resource_reporter_spec.rb +782 -782
- data/spec/unit/resource_resolver_spec.rb +52 -52
- data/spec/unit/resource_spec.rb +1141 -1141
- data/spec/unit/rest/auth_credentials_spec.rb +292 -292
- data/spec/unit/rest_spec.rb +753 -753
- data/spec/unit/role_spec.rb +358 -358
- data/spec/unit/run_context/child_run_context_spec.rb +133 -133
- data/spec/unit/run_context/cookbook_compiler_spec.rb +226 -226
- data/spec/unit/run_context_spec.rb +241 -241
- data/spec/unit/run_list/run_list_expansion_spec.rb +144 -144
- data/spec/unit/run_list/run_list_item_spec.rb +117 -117
- data/spec/unit/run_list/versioned_recipe_list_spec.rb +194 -194
- data/spec/unit/run_list_spec.rb +312 -312
- data/spec/unit/run_lock_spec.rb +140 -140
- data/spec/unit/run_status_spec.rb +144 -144
- data/spec/unit/runner_spec.rb +412 -412
- data/spec/unit/scan_access_control_spec.rb +183 -183
- data/spec/unit/search/query_spec.rb +290 -290
- data/spec/unit/server_api_spec.rb +50 -50
- data/spec/unit/server_api_versions_spec.rb +44 -44
- data/spec/unit/shell/model_wrapper_spec.rb +96 -96
- data/spec/unit/shell/shell_ext_spec.rb +153 -153
- data/spec/unit/shell/shell_session_spec.rb +195 -195
- data/spec/unit/shell_out_spec.rb +18 -18
- data/spec/unit/shell_spec.rb +162 -162
- data/spec/unit/user_spec.rb +275 -275
- data/spec/unit/user_v1_spec.rb +583 -583
- data/spec/unit/util/backup_spec.rb +141 -141
- data/spec/unit/util/diff_spec.rb +576 -576
- data/spec/unit/util/dsc/configuration_generator_spec.rb +193 -193
- data/spec/unit/util/dsc/lcm_output_parser_spec.rb +248 -248
- data/spec/unit/util/dsc/local_configuration_manager_spec.rb +200 -200
- data/spec/unit/util/dsc/resource_store.rb +78 -78
- data/spec/unit/util/editor_spec.rb +152 -152
- data/spec/unit/util/file_edit_spec.rb +224 -224
- data/spec/unit/util/powershell/cmdlet_spec.rb +106 -106
- data/spec/unit/util/powershell/ps_credential_spec.rb +44 -44
- data/spec/unit/util/selinux_spec.rb +160 -160
- data/spec/unit/util/threaded_job_queue_spec.rb +51 -51
- data/spec/unit/version/platform_spec.rb +60 -60
- data/spec/unit/version_class_spec.rb +171 -171
- data/spec/unit/version_constraint/platform_spec.rb +45 -45
- data/spec/unit/version_constraint_spec.rb +179 -179
- data/spec/unit/win32/error_spec.rb +67 -67
- data/spec/unit/win32/registry_spec.rb +394 -394
- data/spec/unit/win32/security_spec.rb +66 -66
- data/spec/unit/windows_service_spec.rb +116 -116
- data/tasks/announce.rb +58 -58
- data/tasks/bin/bundle-platform +20 -20
- data/tasks/bin/bundle-platform.bat +2 -2
- data/tasks/bin/bundler_patch.rb +27 -27
- data/tasks/bin/create-override-gemfile +110 -110
- data/tasks/bin/gem-version-diff +37 -37
- data/tasks/bin/run_external_test +47 -47
- data/tasks/bundle.rb +97 -97
- data/tasks/bundle_util.rb +110 -110
- data/tasks/cbgb.rb +84 -84
- data/tasks/changelog.rb +31 -31
- data/tasks/dependencies.rb +151 -151
- data/tasks/gemfile_util.rb +390 -390
- data/tasks/maintainers.rb +211 -211
- data/tasks/rspec.rb +90 -90
- data/tasks/templates/prerelease.md.erb +26 -26
- data/tasks/templates/release.md.erb +26 -26
- metadata +4 -4
data/LICENSE
CHANGED
@@ -1,201 +1,201 @@
|
|
1
|
-
Apache License
|
2
|
-
Version 2.0, January 2004
|
3
|
-
http://www.apache.org/licenses/
|
4
|
-
|
5
|
-
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
6
|
-
|
7
|
-
1. Definitions.
|
8
|
-
|
9
|
-
"License" shall mean the terms and conditions for use, reproduction,
|
10
|
-
and distribution as defined by Sections 1 through 9 of this document.
|
11
|
-
|
12
|
-
"Licensor" shall mean the copyright owner or entity authorized by
|
13
|
-
the copyright owner that is granting the License.
|
14
|
-
|
15
|
-
"Legal Entity" shall mean the union of the acting entity and all
|
16
|
-
other entities that control, are controlled by, or are under common
|
17
|
-
control with that entity. For the purposes of this definition,
|
18
|
-
"control" means (i) the power, direct or indirect, to cause the
|
19
|
-
direction or management of such entity, whether by contract or
|
20
|
-
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
21
|
-
outstanding shares, or (iii) beneficial ownership of such entity.
|
22
|
-
|
23
|
-
"You" (or "Your") shall mean an individual or Legal Entity
|
24
|
-
exercising permissions granted by this License.
|
25
|
-
|
26
|
-
"Source" form shall mean the preferred form for making modifications,
|
27
|
-
including but not limited to software source code, documentation
|
28
|
-
source, and configuration files.
|
29
|
-
|
30
|
-
"Object" form shall mean any form resulting from mechanical
|
31
|
-
transformation or translation of a Source form, including but
|
32
|
-
not limited to compiled object code, generated documentation,
|
33
|
-
and conversions to other media types.
|
34
|
-
|
35
|
-
"Work" shall mean the work of authorship, whether in Source or
|
36
|
-
Object form, made available under the License, as indicated by a
|
37
|
-
copyright notice that is included in or attached to the work
|
38
|
-
(an example is provided in the Appendix below).
|
39
|
-
|
40
|
-
"Derivative Works" shall mean any work, whether in Source or Object
|
41
|
-
form, that is based on (or derived from) the Work and for which the
|
42
|
-
editorial revisions, annotations, elaborations, or other modifications
|
43
|
-
represent, as a whole, an original work of authorship. For the purposes
|
44
|
-
of this License, Derivative Works shall not include works that remain
|
45
|
-
separable from, or merely link (or bind by name) to the interfaces of,
|
46
|
-
the Work and Derivative Works thereof.
|
47
|
-
|
48
|
-
"Contribution" shall mean any work of authorship, including
|
49
|
-
the original version of the Work and any modifications or additions
|
50
|
-
to that Work or Derivative Works thereof, that is intentionally
|
51
|
-
submitted to Licensor for inclusion in the Work by the copyright owner
|
52
|
-
or by an individual or Legal Entity authorized to submit on behalf of
|
53
|
-
the copyright owner. For the purposes of this definition, "submitted"
|
54
|
-
means any form of electronic, verbal, or written communication sent
|
55
|
-
to the Licensor or its representatives, including but not limited to
|
56
|
-
communication on electronic mailing lists, source code control systems,
|
57
|
-
and issue tracking systems that are managed by, or on behalf of, the
|
58
|
-
Licensor for the purpose of discussing and improving the Work, but
|
59
|
-
excluding communication that is conspicuously marked or otherwise
|
60
|
-
designated in writing by the copyright owner as "Not a Contribution."
|
61
|
-
|
62
|
-
"Contributor" shall mean Licensor and any individual or Legal Entity
|
63
|
-
on behalf of whom a Contribution has been received by Licensor and
|
64
|
-
subsequently incorporated within the Work.
|
65
|
-
|
66
|
-
2. Grant of Copyright License. Subject to the terms and conditions of
|
67
|
-
this License, each Contributor hereby grants to You a perpetual,
|
68
|
-
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
69
|
-
copyright license to reproduce, prepare Derivative Works of,
|
70
|
-
publicly display, publicly perform, sublicense, and distribute the
|
71
|
-
Work and such Derivative Works in Source or Object form.
|
72
|
-
|
73
|
-
3. Grant of Patent License. Subject to the terms and conditions of
|
74
|
-
this License, each Contributor hereby grants to You a perpetual,
|
75
|
-
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
76
|
-
(except as stated in this section) patent license to make, have made,
|
77
|
-
use, offer to sell, sell, import, and otherwise transfer the Work,
|
78
|
-
where such license applies only to those patent claims licensable
|
79
|
-
by such Contributor that are necessarily infringed by their
|
80
|
-
Contribution(s) alone or by combination of their Contribution(s)
|
81
|
-
with the Work to which such Contribution(s) was submitted. If You
|
82
|
-
institute patent litigation against any entity (including a
|
83
|
-
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
84
|
-
or a Contribution incorporated within the Work constitutes direct
|
85
|
-
or contributory patent infringement, then any patent licenses
|
86
|
-
granted to You under this License for that Work shall terminate
|
87
|
-
as of the date such litigation is filed.
|
88
|
-
|
89
|
-
4. Redistribution. You may reproduce and distribute copies of the
|
90
|
-
Work or Derivative Works thereof in any medium, with or without
|
91
|
-
modifications, and in Source or Object form, provided that You
|
92
|
-
meet the following conditions:
|
93
|
-
|
94
|
-
(a) You must give any other recipients of the Work or
|
95
|
-
Derivative Works a copy of this License; and
|
96
|
-
|
97
|
-
(b) You must cause any modified files to carry prominent notices
|
98
|
-
stating that You changed the files; and
|
99
|
-
|
100
|
-
(c) You must retain, in the Source form of any Derivative Works
|
101
|
-
that You distribute, all copyright, patent, trademark, and
|
102
|
-
attribution notices from the Source form of the Work,
|
103
|
-
excluding those notices that do not pertain to any part of
|
104
|
-
the Derivative Works; and
|
105
|
-
|
106
|
-
(d) If the Work includes a "NOTICE" text file as part of its
|
107
|
-
distribution, then any Derivative Works that You distribute must
|
108
|
-
include a readable copy of the attribution notices contained
|
109
|
-
within such NOTICE file, excluding those notices that do not
|
110
|
-
pertain to any part of the Derivative Works, in at least one
|
111
|
-
of the following places: within a NOTICE text file distributed
|
112
|
-
as part of the Derivative Works; within the Source form or
|
113
|
-
documentation, if provided along with the Derivative Works; or,
|
114
|
-
within a display generated by the Derivative Works, if and
|
115
|
-
wherever such third-party notices normally appear. The contents
|
116
|
-
of the NOTICE file are for informational purposes only and
|
117
|
-
do not modify the License. You may add Your own attribution
|
118
|
-
notices within Derivative Works that You distribute, alongside
|
119
|
-
or as an addendum to the NOTICE text from the Work, provided
|
120
|
-
that such additional attribution notices cannot be construed
|
121
|
-
as modifying the License.
|
122
|
-
|
123
|
-
You may add Your own copyright statement to Your modifications and
|
124
|
-
may provide additional or different license terms and conditions
|
125
|
-
for use, reproduction, or distribution of Your modifications, or
|
126
|
-
for any such Derivative Works as a whole, provided Your use,
|
127
|
-
reproduction, and distribution of the Work otherwise complies with
|
128
|
-
the conditions stated in this License.
|
129
|
-
|
130
|
-
5. Submission of Contributions. Unless You explicitly state otherwise,
|
131
|
-
any Contribution intentionally submitted for inclusion in the Work
|
132
|
-
by You to the Licensor shall be under the terms and conditions of
|
133
|
-
this License, without any additional terms or conditions.
|
134
|
-
Notwithstanding the above, nothing herein shall supersede or modify
|
135
|
-
the terms of any separate license agreement you may have executed
|
136
|
-
with Licensor regarding such Contributions.
|
137
|
-
|
138
|
-
6. Trademarks. This License does not grant permission to use the trade
|
139
|
-
names, trademarks, service marks, or product names of the Licensor,
|
140
|
-
except as required for reasonable and customary use in describing the
|
141
|
-
origin of the Work and reproducing the content of the NOTICE file.
|
142
|
-
|
143
|
-
7. Disclaimer of Warranty. Unless required by applicable law or
|
144
|
-
agreed to in writing, Licensor provides the Work (and each
|
145
|
-
Contributor provides its Contributions) on an "AS IS" BASIS,
|
146
|
-
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
147
|
-
implied, including, without limitation, any warranties or conditions
|
148
|
-
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
149
|
-
PARTICULAR PURPOSE. You are solely responsible for determining the
|
150
|
-
appropriateness of using or redistributing the Work and assume any
|
151
|
-
risks associated with Your exercise of permissions under this License.
|
152
|
-
|
153
|
-
8. Limitation of Liability. In no event and under no legal theory,
|
154
|
-
whether in tort (including negligence), contract, or otherwise,
|
155
|
-
unless required by applicable law (such as deliberate and grossly
|
156
|
-
negligent acts) or agreed to in writing, shall any Contributor be
|
157
|
-
liable to You for damages, including any direct, indirect, special,
|
158
|
-
incidental, or consequential damages of any character arising as a
|
159
|
-
result of this License or out of the use or inability to use the
|
160
|
-
Work (including but not limited to damages for loss of goodwill,
|
161
|
-
work stoppage, computer failure or malfunction, or any and all
|
162
|
-
other commercial damages or losses), even if such Contributor
|
163
|
-
has been advised of the possibility of such damages.
|
164
|
-
|
165
|
-
9. Accepting Warranty or Additional Liability. While redistributing
|
166
|
-
the Work or Derivative Works thereof, You may choose to offer,
|
167
|
-
and charge a fee for, acceptance of support, warranty, indemnity,
|
168
|
-
or other liability obligations and/or rights consistent with this
|
169
|
-
License. However, in accepting such obligations, You may act only
|
170
|
-
on Your own behalf and on Your sole responsibility, not on behalf
|
171
|
-
of any other Contributor, and only if You agree to indemnify,
|
172
|
-
defend, and hold each Contributor harmless for any liability
|
173
|
-
incurred by, or claims asserted against, such Contributor by reason
|
174
|
-
of your accepting any such warranty or additional liability.
|
175
|
-
|
176
|
-
END OF TERMS AND CONDITIONS
|
177
|
-
|
178
|
-
APPENDIX: How to apply the Apache License to your work.
|
179
|
-
|
180
|
-
To apply the Apache License to your work, attach the following
|
181
|
-
boilerplate notice, with the fields enclosed by brackets "[]"
|
182
|
-
replaced with your own identifying information. (Don't include
|
183
|
-
the brackets!) The text should be enclosed in the appropriate
|
184
|
-
comment syntax for the file format. We also recommend that a
|
185
|
-
file or class name and description of purpose be included on the
|
186
|
-
same "printed page" as the copyright notice for easier
|
187
|
-
identification within third-party archives.
|
188
|
-
|
189
|
-
Copyright [yyyy] [name of copyright owner]
|
190
|
-
|
191
|
-
Licensed under the Apache License, Version 2.0 (the "License");
|
192
|
-
you may not use this file except in compliance with the License.
|
193
|
-
You may obtain a copy of the License at
|
194
|
-
|
195
|
-
http://www.apache.org/licenses/LICENSE-2.0
|
196
|
-
|
197
|
-
Unless required by applicable law or agreed to in writing, software
|
198
|
-
distributed under the License is distributed on an "AS IS" BASIS,
|
199
|
-
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
200
|
-
See the License for the specific language governing permissions and
|
201
|
-
limitations under the License.
|
1
|
+
Apache License
|
2
|
+
Version 2.0, January 2004
|
3
|
+
http://www.apache.org/licenses/
|
4
|
+
|
5
|
+
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
6
|
+
|
7
|
+
1. Definitions.
|
8
|
+
|
9
|
+
"License" shall mean the terms and conditions for use, reproduction,
|
10
|
+
and distribution as defined by Sections 1 through 9 of this document.
|
11
|
+
|
12
|
+
"Licensor" shall mean the copyright owner or entity authorized by
|
13
|
+
the copyright owner that is granting the License.
|
14
|
+
|
15
|
+
"Legal Entity" shall mean the union of the acting entity and all
|
16
|
+
other entities that control, are controlled by, or are under common
|
17
|
+
control with that entity. For the purposes of this definition,
|
18
|
+
"control" means (i) the power, direct or indirect, to cause the
|
19
|
+
direction or management of such entity, whether by contract or
|
20
|
+
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
21
|
+
outstanding shares, or (iii) beneficial ownership of such entity.
|
22
|
+
|
23
|
+
"You" (or "Your") shall mean an individual or Legal Entity
|
24
|
+
exercising permissions granted by this License.
|
25
|
+
|
26
|
+
"Source" form shall mean the preferred form for making modifications,
|
27
|
+
including but not limited to software source code, documentation
|
28
|
+
source, and configuration files.
|
29
|
+
|
30
|
+
"Object" form shall mean any form resulting from mechanical
|
31
|
+
transformation or translation of a Source form, including but
|
32
|
+
not limited to compiled object code, generated documentation,
|
33
|
+
and conversions to other media types.
|
34
|
+
|
35
|
+
"Work" shall mean the work of authorship, whether in Source or
|
36
|
+
Object form, made available under the License, as indicated by a
|
37
|
+
copyright notice that is included in or attached to the work
|
38
|
+
(an example is provided in the Appendix below).
|
39
|
+
|
40
|
+
"Derivative Works" shall mean any work, whether in Source or Object
|
41
|
+
form, that is based on (or derived from) the Work and for which the
|
42
|
+
editorial revisions, annotations, elaborations, or other modifications
|
43
|
+
represent, as a whole, an original work of authorship. For the purposes
|
44
|
+
of this License, Derivative Works shall not include works that remain
|
45
|
+
separable from, or merely link (or bind by name) to the interfaces of,
|
46
|
+
the Work and Derivative Works thereof.
|
47
|
+
|
48
|
+
"Contribution" shall mean any work of authorship, including
|
49
|
+
the original version of the Work and any modifications or additions
|
50
|
+
to that Work or Derivative Works thereof, that is intentionally
|
51
|
+
submitted to Licensor for inclusion in the Work by the copyright owner
|
52
|
+
or by an individual or Legal Entity authorized to submit on behalf of
|
53
|
+
the copyright owner. For the purposes of this definition, "submitted"
|
54
|
+
means any form of electronic, verbal, or written communication sent
|
55
|
+
to the Licensor or its representatives, including but not limited to
|
56
|
+
communication on electronic mailing lists, source code control systems,
|
57
|
+
and issue tracking systems that are managed by, or on behalf of, the
|
58
|
+
Licensor for the purpose of discussing and improving the Work, but
|
59
|
+
excluding communication that is conspicuously marked or otherwise
|
60
|
+
designated in writing by the copyright owner as "Not a Contribution."
|
61
|
+
|
62
|
+
"Contributor" shall mean Licensor and any individual or Legal Entity
|
63
|
+
on behalf of whom a Contribution has been received by Licensor and
|
64
|
+
subsequently incorporated within the Work.
|
65
|
+
|
66
|
+
2. Grant of Copyright License. Subject to the terms and conditions of
|
67
|
+
this License, each Contributor hereby grants to You a perpetual,
|
68
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
69
|
+
copyright license to reproduce, prepare Derivative Works of,
|
70
|
+
publicly display, publicly perform, sublicense, and distribute the
|
71
|
+
Work and such Derivative Works in Source or Object form.
|
72
|
+
|
73
|
+
3. Grant of Patent License. Subject to the terms and conditions of
|
74
|
+
this License, each Contributor hereby grants to You a perpetual,
|
75
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
76
|
+
(except as stated in this section) patent license to make, have made,
|
77
|
+
use, offer to sell, sell, import, and otherwise transfer the Work,
|
78
|
+
where such license applies only to those patent claims licensable
|
79
|
+
by such Contributor that are necessarily infringed by their
|
80
|
+
Contribution(s) alone or by combination of their Contribution(s)
|
81
|
+
with the Work to which such Contribution(s) was submitted. If You
|
82
|
+
institute patent litigation against any entity (including a
|
83
|
+
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
84
|
+
or a Contribution incorporated within the Work constitutes direct
|
85
|
+
or contributory patent infringement, then any patent licenses
|
86
|
+
granted to You under this License for that Work shall terminate
|
87
|
+
as of the date such litigation is filed.
|
88
|
+
|
89
|
+
4. Redistribution. You may reproduce and distribute copies of the
|
90
|
+
Work or Derivative Works thereof in any medium, with or without
|
91
|
+
modifications, and in Source or Object form, provided that You
|
92
|
+
meet the following conditions:
|
93
|
+
|
94
|
+
(a) You must give any other recipients of the Work or
|
95
|
+
Derivative Works a copy of this License; and
|
96
|
+
|
97
|
+
(b) You must cause any modified files to carry prominent notices
|
98
|
+
stating that You changed the files; and
|
99
|
+
|
100
|
+
(c) You must retain, in the Source form of any Derivative Works
|
101
|
+
that You distribute, all copyright, patent, trademark, and
|
102
|
+
attribution notices from the Source form of the Work,
|
103
|
+
excluding those notices that do not pertain to any part of
|
104
|
+
the Derivative Works; and
|
105
|
+
|
106
|
+
(d) If the Work includes a "NOTICE" text file as part of its
|
107
|
+
distribution, then any Derivative Works that You distribute must
|
108
|
+
include a readable copy of the attribution notices contained
|
109
|
+
within such NOTICE file, excluding those notices that do not
|
110
|
+
pertain to any part of the Derivative Works, in at least one
|
111
|
+
of the following places: within a NOTICE text file distributed
|
112
|
+
as part of the Derivative Works; within the Source form or
|
113
|
+
documentation, if provided along with the Derivative Works; or,
|
114
|
+
within a display generated by the Derivative Works, if and
|
115
|
+
wherever such third-party notices normally appear. The contents
|
116
|
+
of the NOTICE file are for informational purposes only and
|
117
|
+
do not modify the License. You may add Your own attribution
|
118
|
+
notices within Derivative Works that You distribute, alongside
|
119
|
+
or as an addendum to the NOTICE text from the Work, provided
|
120
|
+
that such additional attribution notices cannot be construed
|
121
|
+
as modifying the License.
|
122
|
+
|
123
|
+
You may add Your own copyright statement to Your modifications and
|
124
|
+
may provide additional or different license terms and conditions
|
125
|
+
for use, reproduction, or distribution of Your modifications, or
|
126
|
+
for any such Derivative Works as a whole, provided Your use,
|
127
|
+
reproduction, and distribution of the Work otherwise complies with
|
128
|
+
the conditions stated in this License.
|
129
|
+
|
130
|
+
5. Submission of Contributions. Unless You explicitly state otherwise,
|
131
|
+
any Contribution intentionally submitted for inclusion in the Work
|
132
|
+
by You to the Licensor shall be under the terms and conditions of
|
133
|
+
this License, without any additional terms or conditions.
|
134
|
+
Notwithstanding the above, nothing herein shall supersede or modify
|
135
|
+
the terms of any separate license agreement you may have executed
|
136
|
+
with Licensor regarding such Contributions.
|
137
|
+
|
138
|
+
6. Trademarks. This License does not grant permission to use the trade
|
139
|
+
names, trademarks, service marks, or product names of the Licensor,
|
140
|
+
except as required for reasonable and customary use in describing the
|
141
|
+
origin of the Work and reproducing the content of the NOTICE file.
|
142
|
+
|
143
|
+
7. Disclaimer of Warranty. Unless required by applicable law or
|
144
|
+
agreed to in writing, Licensor provides the Work (and each
|
145
|
+
Contributor provides its Contributions) on an "AS IS" BASIS,
|
146
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
147
|
+
implied, including, without limitation, any warranties or conditions
|
148
|
+
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
149
|
+
PARTICULAR PURPOSE. You are solely responsible for determining the
|
150
|
+
appropriateness of using or redistributing the Work and assume any
|
151
|
+
risks associated with Your exercise of permissions under this License.
|
152
|
+
|
153
|
+
8. Limitation of Liability. In no event and under no legal theory,
|
154
|
+
whether in tort (including negligence), contract, or otherwise,
|
155
|
+
unless required by applicable law (such as deliberate and grossly
|
156
|
+
negligent acts) or agreed to in writing, shall any Contributor be
|
157
|
+
liable to You for damages, including any direct, indirect, special,
|
158
|
+
incidental, or consequential damages of any character arising as a
|
159
|
+
result of this License or out of the use or inability to use the
|
160
|
+
Work (including but not limited to damages for loss of goodwill,
|
161
|
+
work stoppage, computer failure or malfunction, or any and all
|
162
|
+
other commercial damages or losses), even if such Contributor
|
163
|
+
has been advised of the possibility of such damages.
|
164
|
+
|
165
|
+
9. Accepting Warranty or Additional Liability. While redistributing
|
166
|
+
the Work or Derivative Works thereof, You may choose to offer,
|
167
|
+
and charge a fee for, acceptance of support, warranty, indemnity,
|
168
|
+
or other liability obligations and/or rights consistent with this
|
169
|
+
License. However, in accepting such obligations, You may act only
|
170
|
+
on Your own behalf and on Your sole responsibility, not on behalf
|
171
|
+
of any other Contributor, and only if You agree to indemnify,
|
172
|
+
defend, and hold each Contributor harmless for any liability
|
173
|
+
incurred by, or claims asserted against, such Contributor by reason
|
174
|
+
of your accepting any such warranty or additional liability.
|
175
|
+
|
176
|
+
END OF TERMS AND CONDITIONS
|
177
|
+
|
178
|
+
APPENDIX: How to apply the Apache License to your work.
|
179
|
+
|
180
|
+
To apply the Apache License to your work, attach the following
|
181
|
+
boilerplate notice, with the fields enclosed by brackets "[]"
|
182
|
+
replaced with your own identifying information. (Don't include
|
183
|
+
the brackets!) The text should be enclosed in the appropriate
|
184
|
+
comment syntax for the file format. We also recommend that a
|
185
|
+
file or class name and description of purpose be included on the
|
186
|
+
same "printed page" as the copyright notice for easier
|
187
|
+
identification within third-party archives.
|
188
|
+
|
189
|
+
Copyright [yyyy] [name of copyright owner]
|
190
|
+
|
191
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
192
|
+
you may not use this file except in compliance with the License.
|
193
|
+
You may obtain a copy of the License at
|
194
|
+
|
195
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
196
|
+
|
197
|
+
Unless required by applicable law or agreed to in writing, software
|
198
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
199
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
200
|
+
See the License for the specific language governing permissions and
|
201
|
+
limitations under the License.
|
data/README.md
CHANGED
@@ -1,309 +1,309 @@
|
|
1
|
-
# Chef
|
2
|
-
[![Code Climate](https://codeclimate.com/github/chef/chef.svg)](https://codeclimate.com/github/chef/chef)
|
3
|
-
[![Build Status Master](https://travis-ci.org/chef/chef.svg?branch=master)](https://travis-ci.org/chef/chef)
|
4
|
-
[![Build Status Master](https://ci.appveyor.com/api/projects/status/github/chef/chef?branch=master&svg=true&passingText=master%20-%20Ok&pendingText=master%20-%20Pending&failingText=master%20-%20Failing)](https://ci.appveyor.com/project/Chef/chef/branch/master)
|
5
|
-
[![Gem Version](https://badge.fury.io/rb/chef.svg)](https://badge.fury.io/rb/chef)
|
6
|
-
|
7
|
-
Want to try Chef? Get started with [learnchef](https://learn.chef.io)
|
8
|
-
|
9
|
-
- Documentation: <https://docs.chef.io>
|
10
|
-
- Source: <https://github.com/chef/chef/tree/master>
|
11
|
-
- Tickets/Issues: <https://github.com/chef/chef/issues>
|
12
|
-
- Slack: [Chef Community Slack](https://community-slack.chef.io/)
|
13
|
-
- Mailing list: <https://discourse.chef.io>
|
14
|
-
|
15
|
-
Chef is a configuration management tool designed to bring automation to your
|
16
|
-
entire infrastructure.
|
17
|
-
|
18
|
-
This README focuses on developers who want to modify Chef source code.
|
19
|
-
If you just want to use Chef, check out these resources:
|
20
|
-
|
21
|
-
- [learnchef](https://learn.chef.io): Getting started guide
|
22
|
-
- [docs.chef.io](https://docs.chef.io): Comprehensive User Docs
|
23
|
-
- [Installer Downloads](https://downloads.chef.io/chef/): Install Chef as a complete package
|
24
|
-
- [chef/chef](https://hub.docker.com/r/chef/chef): Docker image for use with [kitchen-dokken](https://github.com/someara/kitchen-dokken)
|
25
|
-
|
26
|
-
## Installing From Git
|
27
|
-
|
28
|
-
**NOTE:** Unless you have a specific reason to install from source (to
|
29
|
-
try a new feature, contribute a patch, or run chef on an OS for which no
|
30
|
-
package is available), you should head to the [downloads page](https://downloads.chef.io/chef/)
|
31
|
-
to get a prebuilt package.
|
32
|
-
|
33
|
-
### Prerequisites
|
34
|
-
|
35
|
-
Install these via your platform's preferred method (`apt`, `yum`, `ports`,
|
36
|
-
`emerge`, etc.):
|
37
|
-
|
38
|
-
* git
|
39
|
-
* C compiler, header files, etc. On Ubuntu/Debian, use the
|
40
|
-
`build-essential` package.
|
41
|
-
* ruby 2.2.2 or later
|
42
|
-
* rubygems
|
43
|
-
* bundler gem
|
44
|
-
|
45
|
-
### Chef Installation
|
46
|
-
|
47
|
-
Then get the source and install it:
|
48
|
-
|
49
|
-
```bash
|
50
|
-
# Clone this repo
|
51
|
-
git clone https://github.com/chef/chef.git
|
52
|
-
|
53
|
-
# cd into the source tree
|
54
|
-
cd chef
|
55
|
-
|
56
|
-
# Install dependencies with bundler
|
57
|
-
bundle install
|
58
|
-
|
59
|
-
# Build a gem
|
60
|
-
bundle exec rake gem
|
61
|
-
|
62
|
-
# Install the gem you just built
|
63
|
-
gem install pkg/chef-VERSION.gem
|
64
|
-
```
|
65
|
-
|
66
|
-
## Contributing/Development
|
67
|
-
|
68
|
-
Before working on the code, if you plan to contribute your changes, you need to
|
69
|
-
read the
|
70
|
-
[Chef Contributions document](https://docs.chef.io/community_contributions.html).
|
71
|
-
|
72
|
-
The general development process is:
|
73
|
-
|
74
|
-
1. Fork this repo and clone it to your workstation.
|
75
|
-
2. Create a feature branch for your change.
|
76
|
-
3. Write code and tests.
|
77
|
-
4. Push your feature branch to github and open a pull request against master.
|
78
|
-
|
79
|
-
Once your repository is set up, you can start working on the code. We do utilize
|
80
|
-
RSpec for test driven development, so you'll need to get a development
|
81
|
-
environment running. Follow the above procedure ("Installing from Git") to get
|
82
|
-
your local copy of the source running.
|
83
|
-
|
84
|
-
## Reporting Issues
|
85
|
-
|
86
|
-
Issues can be reported by using [GitHub Issues](https://github.com/chef/chef/issues).
|
87
|
-
|
88
|
-
Full details on how to report issues can be found in the [CONTRIBUTING](https://github.com/chef/chef/blob/master/CONTRIBUTING.md#-chef-issue-tracking) doc.
|
89
|
-
|
90
|
-
Note that this repository is primarily for reporting chef-client issues.
|
91
|
-
For reporting issues against other Chef projects, please look up the appropriate repository
|
92
|
-
to report issues against in the Chef docs in the
|
93
|
-
[community contributions section](https://docs.chef.io/community_contributions.html#issues-and-bug-reports).
|
94
|
-
If you can't determine the appropriate place to report an issue, then please open it
|
95
|
-
against the repository you think best fits and it will be directed to the appropriate project.
|
96
|
-
|
97
|
-
## Testing
|
98
|
-
|
99
|
-
We use RSpec for unit/spec tests. It is not necessary to start the development
|
100
|
-
environment to run the specs--they are completely standalone.
|
101
|
-
|
102
|
-
```bash
|
103
|
-
# Run All the Tests
|
104
|
-
bundle exec rake spec
|
105
|
-
|
106
|
-
# Run a Single Test File
|
107
|
-
bundle exec rspec spec/PATH/TO/FILE_spec.rb
|
108
|
-
|
109
|
-
# Run a Subset of Tests
|
110
|
-
bundle exec rspec spec/PATH/TO/DIR
|
111
|
-
```
|
112
|
-
|
113
|
-
When you submit a pull request, we will automatically run the functional and unit
|
114
|
-
tests in spec/functional/ and spec/unit/ respectively. These will be run on Ubuntu
|
115
|
-
through Travis CI, and on Windows through AppVeyor. The status of these runs will
|
116
|
-
be displayed with your pull request.
|
117
|
-
|
118
|
-
## Building the Full Package
|
119
|
-
|
120
|
-
To build chef as a standalone package (with ruby and all dependent libraries included in a .deb, .rpm, .pkg or .msi), we use the omnibus system. Go to the [omnibus README](omnibus/README.md) to find out how to build!
|
121
|
-
|
122
|
-
## Updating Dependencies
|
123
|
-
|
124
|
-
If you want to change our constraints (change which packages and versions we accept in the chef), there are several places to do so:
|
125
|
-
|
126
|
-
* To add or remove a gem from chef, or update a gem version, edit [Gemfile](Gemfile).
|
127
|
-
* To change the version of binary packages, edit [version_policy.rb](version_policy.rb).
|
128
|
-
* To add new packages to chef, edit [omnibus/config/projects/chef.rb](omnibus/config/projects/chef.rb).
|
129
|
-
|
130
|
-
Once you've made any changes you want, you have to update the lockfiles that actually drive the build:
|
131
|
-
* To update chef's gem dependencies to the very latest versions available, run `rake bundle:update`.
|
132
|
-
* To update chef's gem dependencies *conservatively* (changing as little as possible), run `rake bundle:install`.
|
133
|
-
* To update specific gems only, run `rake bundle:update[gem1 gem2 ...]`
|
134
|
-
* **`bundle update` and `bundle install` will *not* work, on purpose:** the rake task handles both the windows and non-windows lockfiles and updates them in sync.
|
135
|
-
|
136
|
-
To perform a full update of all dependencies in chef (including binary packages, tests and build system dependencies), run `rake dependencies`. This will update the `Gemfile.lock`, `omnibus/Gemfile.lock`, `acceptance/Gemfile.lock`, `omnibus/Berksfile.lock`, and `omnibus_overrides.rb`. It will also show you any outdated dependencies due to conflicting constraints. Some outdated dependencies are to be expected; it will inform you if any new ones appear that we don't know about, and tell you how to proceed.
|
137
|
-
|
138
|
-
# How Chef Builds and Versions
|
139
|
-
|
140
|
-
Chef is an amalgam of many components. These components update all the time, necessitating new builds. This is an overview of the process of versioning, building and releasing Chef.
|
141
|
-
|
142
|
-
## Chef Packages
|
143
|
-
|
144
|
-
Chef is distributed as packages for debian, rhel, ubuntu, windows, solaris, aix, and os x. It includes a large number of components from various sources, and these are versioned and maintained separately from chef project, which bundles them all together conveniently for the user.
|
145
|
-
|
146
|
-
These packages go through several milestones:
|
147
|
-
- `master`: When code is checked in to master, the patch version of chef is bumped (e.g. 0.9.10 -> 0.9.11) and a build is kicked off automatically to create and test the packages in Chef's Jenkins cluster.
|
148
|
-
- `unstable`: When a package is built, it enters the unstable channel. When all packages for all OS's have successfully built, the test phase is kicked off in Jenkins across all supported OS's. These builds are password-protected and generally only available to the test systems.
|
149
|
-
- `current`: If the packages pass all the tests on all supported OS's, it is promoted as a unit to `current`, and is available via Chef's artifactory by running `curl https://www.chef.io/chef/install.sh | sudo bash -s -- -c current -P chef`
|
150
|
-
- `stable`: Periodically, Chef will pick a release to "bless" for folks who would like a slower update schedule than "every time a build passes the tests." When this happens, it is manually promoted to stable and an announcement is sent to the list. It can be reached at https://downloads.chef.io or installed using the `curl` command without specifying `-c current`. Packages in `stable` are no longer available in `current`.
|
151
|
-
|
152
|
-
Additionally, periodically Chef will update the desired versions of chef components and check that in to `master`, triggering a new build with the updated components in it.
|
153
|
-
|
154
|
-
## Automated Version Bumping
|
155
|
-
|
156
|
-
Whenever a change is checked in to `master`, the patch version of `chef` is bumped. To do this, the `lita-versioner` bot listens to github for merged PRs, and when it finds one, takes these actions:
|
157
|
-
|
158
|
-
1. Bumps the patch version in `lib/chef/version.rb` (e.g. 0.9.14 -> 0.9.15).
|
159
|
-
2. Runs `rake bundle:install` to update the `Gemfile.lock` to include the new version.
|
160
|
-
3. Runs `rake changelog:update` to update the `CHANGELOG.md`.
|
161
|
-
4. Pushes to `master` and submits a new build to Chef's Jenkins cluster.
|
162
|
-
|
163
|
-
## Bumping the minor version of Chef
|
164
|
-
|
165
|
-
After each "official" stable release we need to bump the minor version. To do this:
|
166
|
-
|
167
|
-
1. Run `bundle exec rake version:bump_minor`
|
168
|
-
|
169
|
-
Submit a PR with the changes made by the above.
|
170
|
-
|
171
|
-
## Addressing a Regression
|
172
|
-
|
173
|
-
Sometimes, regressions split through the cracks. Since new functionality is always being added and the minor version is bumped immediately after release, we can't simply roll forward. In this scenario, we'll need to perform a special regression release process. In the example that follows, the stable release with a regression is `1.10.60` while master is currently sitting at `1.11.30`. *Note:* To perform this process, you must be a Chef employee.
|
174
|
-
|
175
|
-
1. If the regression has not already been addressed, open a Pull Request against master with the fix.
|
176
|
-
2. Wait until that Pull Request has been merged and `1.11.31` has passed all the necessary tests and is available in the current channel.
|
177
|
-
3. Inspect the Git history and find the `SHA` associated with the Merge Commit for the Pull Request above.
|
178
|
-
4. Apply the fix for the regression via a cherry-pick:
|
179
|
-
1. Check out the stable release tag: `git checkout v1.10.60`
|
180
|
-
2. Cherry Pick the SHA with the fix: `git cherry-pick SHA`
|
181
|
-
3. Address any conflicts (if necessary)
|
182
|
-
4. Tag the sha with the appropriate version: `git tag -a v1.10.61 -m "Release v1.10.61"`
|
183
|
-
5. Push the new tag to origin: `git push origin --tags`
|
184
|
-
5. Log in to Jenkins and trigger a `chef-trigger-release` job specifying the new tag as the `GIT_REF`.
|
185
|
-
|
186
|
-
## Component Versions
|
187
|
-
|
188
|
-
Chef has two sorts of component: ruby components like `berkshelf` and `test-kitchen`, and binary components like `openssl` and even `ruby` itself.
|
189
|
-
|
190
|
-
In general, you can find all chef desired versions in the [Gemfile](Gemfile) and [version_policy.rb](version_policy.rb) files. The [Gemfile.lock](Gemfile.lock) is the locked version of the Gemfile, and [omnibus_overrides](omnibus_overrides.rb) is the locked version of omnibus. [build](omnibus/Gemfile) and [test](acceptance/Gemfile) Gemfiles and [Berksfile](omnibus/Berksfile) version the toolset we use to build and test.
|
191
|
-
|
192
|
-
### Binary Components
|
193
|
-
|
194
|
-
The versions of binary components (as well as rubygems and bundler, which can't be versioned in a Gemfile) are stored in [version_policy.rb](version_policy.rb) (the `OMNIBUS_OVERRIDES` constant) and locked in [omnibus_overrides](omnibus_overrides.rb). `rake dependencies` will update the `bundler` version, and the rest are be updated manually by Chef every so often.
|
195
|
-
|
196
|
-
These have software definitions either in [omnibus/config/software](omnibus/config/software) or, more often, in the [omnibus-software](https://github.com/chef/omnibus-software/tree/master/config/software) project.
|
197
|
-
|
198
|
-
### Rubygems Components
|
199
|
-
|
200
|
-
Most of the actual front-facing software in chef is composed of ruby projects. berkshelf, test-kitchen and even chef itself are made of ruby gems. Chef uses the typical ruby way of controlling rubygems versions, the `Gemfile`. Specifically, the `Gemfile` at the top of chef repository governs the version of every single gem we install into chef package. It's a one-stop shop.
|
201
|
-
|
202
|
-
Our rubygems component versions are locked down with `Gemfile.lock`, and can be updated with `rake dependencies`.
|
203
|
-
|
204
|
-
There are three gems versioned outside the `Gemfile`: `rubygems`, `bundler` and `chef`. `rubygems` and `bundler` are in the `RUBYGEMS_AT_LATEST_VERSION` constant in [version_policy.rb](version-policy.rb) and locked in [omnibus_overrides](omnibus_overrides.rb). They are kept up to date by `rake dependencies`.
|
205
|
-
|
206
|
-
**Windows**: [Gemfile.lock](Gemfile.lock) is generated platform-agnostic, and then generated again for Windows. The one file has the solution for both Linux and Windows.
|
207
|
-
|
208
|
-
The tool we use to generate Windows-specific lockfiles on non-Windows machines is [tasks/bin/bundle-platform](bundle-platform), which takes the first argument and sets `Gem.platforms`, and then calls `bundle` with the remaining arguments.
|
209
|
-
|
210
|
-
### Build Tooling Versions
|
211
|
-
|
212
|
-
Of special mention is the software we use to build omnibus itself. There are two distinct bits of code that control the versions of compilers, make, git, and other tools we use to build.
|
213
|
-
|
214
|
-
First, the Jenkins machines that run the build are configured entirely by the [opscode-ci cookbook](https://github.com/chef-cookbooks/opscode-ci) cookbook. They install most of the tools we use via `build-essentials`, and standardize the build environment so we can tear down and bring up builders at will. These machines are kept alive long-running, are periodically updated by Chef to the latest opscode-ci, omnibus and build-essentials cookbooks.
|
215
|
-
|
216
|
-
Second, the version of omnibus we use to build chef is governed by `omnibus/Gemfile`. When software definitions or the omnibus framework is updated, this is the file that drives whether we pick it up.
|
217
|
-
|
218
|
-
The omnibus tooling versions are locked down with `omnibus/Gemfile.lock`, and can be updated by running `rake dependencies`.
|
219
|
-
|
220
|
-
### Test Versions
|
221
|
-
|
222
|
-
chef is tested by the [chef-acceptance framework](https://github.com/chef/chef-acceptance), which contains suites that are run on the Jenkins test machines. The definitions of the tests are in the `acceptance` directory. The version of chef-acceptance and test-kitchen, are governed by `acceptance/Gemfile`.
|
223
|
-
|
224
|
-
The test tooling versions are locked down with `acceptance/Gemfile.lock`, which can be updated by running `rake dependencies`.
|
225
|
-
|
226
|
-
## The Build Process
|
227
|
-
|
228
|
-
The actual Chef build process is done with Omnibus, and has several general steps:
|
229
|
-
|
230
|
-
1. `bundle install` from `chef/Gemfile.lock`
|
231
|
-
2. Reinstall any gems that came from git or path using `rake install`
|
232
|
-
3. appbundle chef, chef, test-kitchen and berkshelf
|
233
|
-
4. Put miscellaneous powershell scripts and cleanup
|
234
|
-
|
235
|
-
### Kicking Off The Build
|
236
|
-
|
237
|
-
The build is kicked off in Jenkins by running this on the machine (which is already the correct OS and already has the correct dependencies, loaded by the `omnibus` cookbook):
|
238
|
-
|
239
|
-
```
|
240
|
-
load-omnibus-toolchain.bat
|
241
|
-
cd chef/omnibus
|
242
|
-
bundle install
|
243
|
-
bundle exec omnibus build chef
|
244
|
-
```
|
245
|
-
|
246
|
-
This causes the [chef project definition](omnibus/config/projects/chef.rb) to load, which runs the [chef-complete](omnibus/config/software/chef-complete.rb) software definition, the primary software definition driving the whole build process. The reason we embed it all in a software definition instead of the project is to take advantage of omnibus caching: omnibus will invalidate the entire project (and recompile ruby, openssl, and everything else) if you change anything at all in the project file. Not so with a software definition.
|
247
|
-
|
248
|
-
### Installing the Gems
|
249
|
-
|
250
|
-
The primary build definition that installs the many Chef rubygems is [`software/chef.rb`](omnibus/software/chef.rb). This has dependencies on any binary libraries, ruby, rubygems and bundler. It has a lot of steps, so it uses a [library](omnibus/files/chef/build-chef.rb) to help reuse code and make it manageable to look at.
|
251
|
-
|
252
|
-
What it does:
|
253
|
-
|
254
|
-
1. Depends on software defs for pre-cached gems (see "Gems and Caching" below).
|
255
|
-
2. Installs all gems from the bundle:
|
256
|
-
- Sets up a `.bundle/config` ([code](omnibus/files/chef/build-chef.rb#L17-L39)) with --retries=4, --jobs=1, --without=development,no_<platform>, and `build.config.nokogiri` to pass.
|
257
|
-
- Sets up a common environment, standardizing the compilers and flags we use, in [`env`](omnibus/files/chef-gem/build-chef-gem.rb#L32-L54).
|
258
|
-
- [Runs](omnibus/config/software/chef.rb#L68) `bundle install --verbose`
|
259
|
-
3. Reinstalls any gems that were installed via path:
|
260
|
-
- [Runs](omnibus/files/chef/build-chef.rb#L80) `bundle list --paths` to get the installed directories of all gems.
|
261
|
-
- For each gem not installed in the main gem dir, [runs](omnibus/files/chef/build-chef.rb#L89) `rake install` from the installed gem directory.
|
262
|
-
- [Deletes](omnibus/files/chef/build-chef.rb#L139-L143) the bundler git cache and path- and git-installed gems from the build.
|
263
|
-
4. [Creates](omnibus/files/chef/build-chef.rb#L102-L152) `/opt/chef/Gemfile` and `/opt/chef/Gemfile.lock` with the gems that were installed in the build.
|
264
|
-
|
265
|
-
#### Gems and Caching
|
266
|
-
|
267
|
-
Some gems take a super long time to install (particularly native-compiled ones such as nokogiri and dep-selector-libgecode) and do not change version very often. In order to avoid doing this work every time, we take advantage of omnibus caching by separating out these gems into their own software definitions. [chef-gem-dep-selector-libgecode](omnibus/config/software/chef-gem-dep-selector-libgecode.rb) for example.
|
268
|
-
|
269
|
-
Each of these gems uses the `config/files/chef-gem/build-chef-gem` library to define itself. The name of the software definition itself indicates the .
|
270
|
-
|
271
|
-
We only create software definitions for long-running gems. Everything else is just installed in the [chef](omnibus/config/software/chef.rb) software definition in a big `bundle install` catchall.
|
272
|
-
|
273
|
-
Most gems we just install in the single `chef` software definition.
|
274
|
-
|
275
|
-
The first thing
|
276
|
-
|
277
|
-
### Appbundling
|
278
|
-
|
279
|
-
After the gems are installed, we *appbundle* them in [chef-appbundle](omnibus/config/software/chef-appbundle.rb). This creates binstubs that use the bundle to pin the software .
|
280
|
-
|
281
|
-
During the process of appbundling, we update the gem's `Gemfile` to include the locks in the top level `/opt/chef/Gemfile.lock`, so we can guarantee they will never pick up things outside the build. We then run `bundle lock` to update the gem's `Gemfile.lock`, and `bundle check` to ensure all the gems are actually installed. The appbundler then uses these pins.
|
282
|
-
|
283
|
-
### Other Cleanup
|
284
|
-
|
285
|
-
Finally, chef does several more steps including installing powershell scripts and shortcuts, and removing extra documentation to keep the build slim.
|
286
|
-
|
287
|
-
# License
|
288
|
-
|
289
|
-
Chef - A configuration management system
|
290
|
-
|
291
|
-
| | |
|
292
|
-
|:---------------------|:-----------------------------------------|
|
293
|
-
| **Author:** | Adam Jacob (<adam@chef.io>)
|
294
|
-
| **Copyright:** | Copyright 2008-2017, Chef Software, Inc.
|
295
|
-
| **License:** | Apache License, Version 2.0
|
296
|
-
|
297
|
-
```
|
298
|
-
Licensed under the Apache License, Version 2.0 (the "License");
|
299
|
-
you may not use this file except in compliance with the License.
|
300
|
-
You may obtain a copy of the License at
|
301
|
-
|
302
|
-
http://www.apache.org/licenses/LICENSE-2.0
|
303
|
-
|
304
|
-
Unless required by applicable law or agreed to in writing, software
|
305
|
-
distributed under the License is distributed on an "AS IS" BASIS,
|
306
|
-
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
307
|
-
See the License for the specific language governing permissions and
|
308
|
-
limitations under the License.
|
309
|
-
```
|
1
|
+
# Chef
|
2
|
+
[![Code Climate](https://codeclimate.com/github/chef/chef.svg)](https://codeclimate.com/github/chef/chef)
|
3
|
+
[![Build Status Master](https://travis-ci.org/chef/chef.svg?branch=master)](https://travis-ci.org/chef/chef)
|
4
|
+
[![Build Status Master](https://ci.appveyor.com/api/projects/status/github/chef/chef?branch=master&svg=true&passingText=master%20-%20Ok&pendingText=master%20-%20Pending&failingText=master%20-%20Failing)](https://ci.appveyor.com/project/Chef/chef/branch/master)
|
5
|
+
[![Gem Version](https://badge.fury.io/rb/chef.svg)](https://badge.fury.io/rb/chef)
|
6
|
+
|
7
|
+
Want to try Chef? Get started with [learnchef](https://learn.chef.io)
|
8
|
+
|
9
|
+
- Documentation: <https://docs.chef.io>
|
10
|
+
- Source: <https://github.com/chef/chef/tree/master>
|
11
|
+
- Tickets/Issues: <https://github.com/chef/chef/issues>
|
12
|
+
- Slack: [Chef Community Slack](https://community-slack.chef.io/)
|
13
|
+
- Mailing list: <https://discourse.chef.io>
|
14
|
+
|
15
|
+
Chef is a configuration management tool designed to bring automation to your
|
16
|
+
entire infrastructure.
|
17
|
+
|
18
|
+
This README focuses on developers who want to modify Chef source code.
|
19
|
+
If you just want to use Chef, check out these resources:
|
20
|
+
|
21
|
+
- [learnchef](https://learn.chef.io): Getting started guide
|
22
|
+
- [docs.chef.io](https://docs.chef.io): Comprehensive User Docs
|
23
|
+
- [Installer Downloads](https://downloads.chef.io/chef/): Install Chef as a complete package
|
24
|
+
- [chef/chef](https://hub.docker.com/r/chef/chef): Docker image for use with [kitchen-dokken](https://github.com/someara/kitchen-dokken)
|
25
|
+
|
26
|
+
## Installing From Git
|
27
|
+
|
28
|
+
**NOTE:** Unless you have a specific reason to install from source (to
|
29
|
+
try a new feature, contribute a patch, or run chef on an OS for which no
|
30
|
+
package is available), you should head to the [downloads page](https://downloads.chef.io/chef/)
|
31
|
+
to get a prebuilt package.
|
32
|
+
|
33
|
+
### Prerequisites
|
34
|
+
|
35
|
+
Install these via your platform's preferred method (`apt`, `yum`, `ports`,
|
36
|
+
`emerge`, etc.):
|
37
|
+
|
38
|
+
* git
|
39
|
+
* C compiler, header files, etc. On Ubuntu/Debian, use the
|
40
|
+
`build-essential` package.
|
41
|
+
* ruby 2.2.2 or later
|
42
|
+
* rubygems
|
43
|
+
* bundler gem
|
44
|
+
|
45
|
+
### Chef Installation
|
46
|
+
|
47
|
+
Then get the source and install it:
|
48
|
+
|
49
|
+
```bash
|
50
|
+
# Clone this repo
|
51
|
+
git clone https://github.com/chef/chef.git
|
52
|
+
|
53
|
+
# cd into the source tree
|
54
|
+
cd chef
|
55
|
+
|
56
|
+
# Install dependencies with bundler
|
57
|
+
bundle install
|
58
|
+
|
59
|
+
# Build a gem
|
60
|
+
bundle exec rake gem
|
61
|
+
|
62
|
+
# Install the gem you just built
|
63
|
+
gem install pkg/chef-VERSION.gem
|
64
|
+
```
|
65
|
+
|
66
|
+
## Contributing/Development
|
67
|
+
|
68
|
+
Before working on the code, if you plan to contribute your changes, you need to
|
69
|
+
read the
|
70
|
+
[Chef Contributions document](https://docs.chef.io/community_contributions.html).
|
71
|
+
|
72
|
+
The general development process is:
|
73
|
+
|
74
|
+
1. Fork this repo and clone it to your workstation.
|
75
|
+
2. Create a feature branch for your change.
|
76
|
+
3. Write code and tests.
|
77
|
+
4. Push your feature branch to github and open a pull request against master.
|
78
|
+
|
79
|
+
Once your repository is set up, you can start working on the code. We do utilize
|
80
|
+
RSpec for test driven development, so you'll need to get a development
|
81
|
+
environment running. Follow the above procedure ("Installing from Git") to get
|
82
|
+
your local copy of the source running.
|
83
|
+
|
84
|
+
## Reporting Issues
|
85
|
+
|
86
|
+
Issues can be reported by using [GitHub Issues](https://github.com/chef/chef/issues).
|
87
|
+
|
88
|
+
Full details on how to report issues can be found in the [CONTRIBUTING](https://github.com/chef/chef/blob/master/CONTRIBUTING.md#-chef-issue-tracking) doc.
|
89
|
+
|
90
|
+
Note that this repository is primarily for reporting chef-client issues.
|
91
|
+
For reporting issues against other Chef projects, please look up the appropriate repository
|
92
|
+
to report issues against in the Chef docs in the
|
93
|
+
[community contributions section](https://docs.chef.io/community_contributions.html#issues-and-bug-reports).
|
94
|
+
If you can't determine the appropriate place to report an issue, then please open it
|
95
|
+
against the repository you think best fits and it will be directed to the appropriate project.
|
96
|
+
|
97
|
+
## Testing
|
98
|
+
|
99
|
+
We use RSpec for unit/spec tests. It is not necessary to start the development
|
100
|
+
environment to run the specs--they are completely standalone.
|
101
|
+
|
102
|
+
```bash
|
103
|
+
# Run All the Tests
|
104
|
+
bundle exec rake spec
|
105
|
+
|
106
|
+
# Run a Single Test File
|
107
|
+
bundle exec rspec spec/PATH/TO/FILE_spec.rb
|
108
|
+
|
109
|
+
# Run a Subset of Tests
|
110
|
+
bundle exec rspec spec/PATH/TO/DIR
|
111
|
+
```
|
112
|
+
|
113
|
+
When you submit a pull request, we will automatically run the functional and unit
|
114
|
+
tests in spec/functional/ and spec/unit/ respectively. These will be run on Ubuntu
|
115
|
+
through Travis CI, and on Windows through AppVeyor. The status of these runs will
|
116
|
+
be displayed with your pull request.
|
117
|
+
|
118
|
+
## Building the Full Package
|
119
|
+
|
120
|
+
To build chef as a standalone package (with ruby and all dependent libraries included in a .deb, .rpm, .pkg or .msi), we use the omnibus system. Go to the [omnibus README](omnibus/README.md) to find out how to build!
|
121
|
+
|
122
|
+
## Updating Dependencies
|
123
|
+
|
124
|
+
If you want to change our constraints (change which packages and versions we accept in the chef), there are several places to do so:
|
125
|
+
|
126
|
+
* To add or remove a gem from chef, or update a gem version, edit [Gemfile](Gemfile).
|
127
|
+
* To change the version of binary packages, edit [version_policy.rb](version_policy.rb).
|
128
|
+
* To add new packages to chef, edit [omnibus/config/projects/chef.rb](omnibus/config/projects/chef.rb).
|
129
|
+
|
130
|
+
Once you've made any changes you want, you have to update the lockfiles that actually drive the build:
|
131
|
+
* To update chef's gem dependencies to the very latest versions available, run `rake bundle:update`.
|
132
|
+
* To update chef's gem dependencies *conservatively* (changing as little as possible), run `rake bundle:install`.
|
133
|
+
* To update specific gems only, run `rake bundle:update[gem1 gem2 ...]`
|
134
|
+
* **`bundle update` and `bundle install` will *not* work, on purpose:** the rake task handles both the windows and non-windows lockfiles and updates them in sync.
|
135
|
+
|
136
|
+
To perform a full update of all dependencies in chef (including binary packages, tests and build system dependencies), run `rake dependencies`. This will update the `Gemfile.lock`, `omnibus/Gemfile.lock`, `acceptance/Gemfile.lock`, `omnibus/Berksfile.lock`, and `omnibus_overrides.rb`. It will also show you any outdated dependencies due to conflicting constraints. Some outdated dependencies are to be expected; it will inform you if any new ones appear that we don't know about, and tell you how to proceed.
|
137
|
+
|
138
|
+
# How Chef Builds and Versions
|
139
|
+
|
140
|
+
Chef is an amalgam of many components. These components update all the time, necessitating new builds. This is an overview of the process of versioning, building and releasing Chef.
|
141
|
+
|
142
|
+
## Chef Packages
|
143
|
+
|
144
|
+
Chef is distributed as packages for debian, rhel, ubuntu, windows, solaris, aix, and os x. It includes a large number of components from various sources, and these are versioned and maintained separately from chef project, which bundles them all together conveniently for the user.
|
145
|
+
|
146
|
+
These packages go through several milestones:
|
147
|
+
- `master`: When code is checked in to master, the patch version of chef is bumped (e.g. 0.9.10 -> 0.9.11) and a build is kicked off automatically to create and test the packages in Chef's Jenkins cluster.
|
148
|
+
- `unstable`: When a package is built, it enters the unstable channel. When all packages for all OS's have successfully built, the test phase is kicked off in Jenkins across all supported OS's. These builds are password-protected and generally only available to the test systems.
|
149
|
+
- `current`: If the packages pass all the tests on all supported OS's, it is promoted as a unit to `current`, and is available via Chef's artifactory by running `curl https://www.chef.io/chef/install.sh | sudo bash -s -- -c current -P chef`
|
150
|
+
- `stable`: Periodically, Chef will pick a release to "bless" for folks who would like a slower update schedule than "every time a build passes the tests." When this happens, it is manually promoted to stable and an announcement is sent to the list. It can be reached at https://downloads.chef.io or installed using the `curl` command without specifying `-c current`. Packages in `stable` are no longer available in `current`.
|
151
|
+
|
152
|
+
Additionally, periodically Chef will update the desired versions of chef components and check that in to `master`, triggering a new build with the updated components in it.
|
153
|
+
|
154
|
+
## Automated Version Bumping
|
155
|
+
|
156
|
+
Whenever a change is checked in to `master`, the patch version of `chef` is bumped. To do this, the `lita-versioner` bot listens to github for merged PRs, and when it finds one, takes these actions:
|
157
|
+
|
158
|
+
1. Bumps the patch version in `lib/chef/version.rb` (e.g. 0.9.14 -> 0.9.15).
|
159
|
+
2. Runs `rake bundle:install` to update the `Gemfile.lock` to include the new version.
|
160
|
+
3. Runs `rake changelog:update` to update the `CHANGELOG.md`.
|
161
|
+
4. Pushes to `master` and submits a new build to Chef's Jenkins cluster.
|
162
|
+
|
163
|
+
## Bumping the minor version of Chef
|
164
|
+
|
165
|
+
After each "official" stable release we need to bump the minor version. To do this:
|
166
|
+
|
167
|
+
1. Run `bundle exec rake version:bump_minor`
|
168
|
+
|
169
|
+
Submit a PR with the changes made by the above.
|
170
|
+
|
171
|
+
## Addressing a Regression
|
172
|
+
|
173
|
+
Sometimes, regressions split through the cracks. Since new functionality is always being added and the minor version is bumped immediately after release, we can't simply roll forward. In this scenario, we'll need to perform a special regression release process. In the example that follows, the stable release with a regression is `1.10.60` while master is currently sitting at `1.11.30`. *Note:* To perform this process, you must be a Chef employee.
|
174
|
+
|
175
|
+
1. If the regression has not already been addressed, open a Pull Request against master with the fix.
|
176
|
+
2. Wait until that Pull Request has been merged and `1.11.31` has passed all the necessary tests and is available in the current channel.
|
177
|
+
3. Inspect the Git history and find the `SHA` associated with the Merge Commit for the Pull Request above.
|
178
|
+
4. Apply the fix for the regression via a cherry-pick:
|
179
|
+
1. Check out the stable release tag: `git checkout v1.10.60`
|
180
|
+
2. Cherry Pick the SHA with the fix: `git cherry-pick SHA`
|
181
|
+
3. Address any conflicts (if necessary)
|
182
|
+
4. Tag the sha with the appropriate version: `git tag -a v1.10.61 -m "Release v1.10.61"`
|
183
|
+
5. Push the new tag to origin: `git push origin --tags`
|
184
|
+
5. Log in to Jenkins and trigger a `chef-trigger-release` job specifying the new tag as the `GIT_REF`.
|
185
|
+
|
186
|
+
## Component Versions
|
187
|
+
|
188
|
+
Chef has two sorts of component: ruby components like `berkshelf` and `test-kitchen`, and binary components like `openssl` and even `ruby` itself.
|
189
|
+
|
190
|
+
In general, you can find all chef desired versions in the [Gemfile](Gemfile) and [version_policy.rb](version_policy.rb) files. The [Gemfile.lock](Gemfile.lock) is the locked version of the Gemfile, and [omnibus_overrides](omnibus_overrides.rb) is the locked version of omnibus. [build](omnibus/Gemfile) and [test](acceptance/Gemfile) Gemfiles and [Berksfile](omnibus/Berksfile) version the toolset we use to build and test.
|
191
|
+
|
192
|
+
### Binary Components
|
193
|
+
|
194
|
+
The versions of binary components (as well as rubygems and bundler, which can't be versioned in a Gemfile) are stored in [version_policy.rb](version_policy.rb) (the `OMNIBUS_OVERRIDES` constant) and locked in [omnibus_overrides](omnibus_overrides.rb). `rake dependencies` will update the `bundler` version, and the rest are be updated manually by Chef every so often.
|
195
|
+
|
196
|
+
These have software definitions either in [omnibus/config/software](omnibus/config/software) or, more often, in the [omnibus-software](https://github.com/chef/omnibus-software/tree/master/config/software) project.
|
197
|
+
|
198
|
+
### Rubygems Components
|
199
|
+
|
200
|
+
Most of the actual front-facing software in chef is composed of ruby projects. berkshelf, test-kitchen and even chef itself are made of ruby gems. Chef uses the typical ruby way of controlling rubygems versions, the `Gemfile`. Specifically, the `Gemfile` at the top of chef repository governs the version of every single gem we install into chef package. It's a one-stop shop.
|
201
|
+
|
202
|
+
Our rubygems component versions are locked down with `Gemfile.lock`, and can be updated with `rake dependencies`.
|
203
|
+
|
204
|
+
There are three gems versioned outside the `Gemfile`: `rubygems`, `bundler` and `chef`. `rubygems` and `bundler` are in the `RUBYGEMS_AT_LATEST_VERSION` constant in [version_policy.rb](version-policy.rb) and locked in [omnibus_overrides](omnibus_overrides.rb). They are kept up to date by `rake dependencies`.
|
205
|
+
|
206
|
+
**Windows**: [Gemfile.lock](Gemfile.lock) is generated platform-agnostic, and then generated again for Windows. The one file has the solution for both Linux and Windows.
|
207
|
+
|
208
|
+
The tool we use to generate Windows-specific lockfiles on non-Windows machines is [tasks/bin/bundle-platform](bundle-platform), which takes the first argument and sets `Gem.platforms`, and then calls `bundle` with the remaining arguments.
|
209
|
+
|
210
|
+
### Build Tooling Versions
|
211
|
+
|
212
|
+
Of special mention is the software we use to build omnibus itself. There are two distinct bits of code that control the versions of compilers, make, git, and other tools we use to build.
|
213
|
+
|
214
|
+
First, the Jenkins machines that run the build are configured entirely by the [opscode-ci cookbook](https://github.com/chef-cookbooks/opscode-ci) cookbook. They install most of the tools we use via `build-essentials`, and standardize the build environment so we can tear down and bring up builders at will. These machines are kept alive long-running, are periodically updated by Chef to the latest opscode-ci, omnibus and build-essentials cookbooks.
|
215
|
+
|
216
|
+
Second, the version of omnibus we use to build chef is governed by `omnibus/Gemfile`. When software definitions or the omnibus framework is updated, this is the file that drives whether we pick it up.
|
217
|
+
|
218
|
+
The omnibus tooling versions are locked down with `omnibus/Gemfile.lock`, and can be updated by running `rake dependencies`.
|
219
|
+
|
220
|
+
### Test Versions
|
221
|
+
|
222
|
+
chef is tested by the [chef-acceptance framework](https://github.com/chef/chef-acceptance), which contains suites that are run on the Jenkins test machines. The definitions of the tests are in the `acceptance` directory. The version of chef-acceptance and test-kitchen, are governed by `acceptance/Gemfile`.
|
223
|
+
|
224
|
+
The test tooling versions are locked down with `acceptance/Gemfile.lock`, which can be updated by running `rake dependencies`.
|
225
|
+
|
226
|
+
## The Build Process
|
227
|
+
|
228
|
+
The actual Chef build process is done with Omnibus, and has several general steps:
|
229
|
+
|
230
|
+
1. `bundle install` from `chef/Gemfile.lock`
|
231
|
+
2. Reinstall any gems that came from git or path using `rake install`
|
232
|
+
3. appbundle chef, chef, test-kitchen and berkshelf
|
233
|
+
4. Put miscellaneous powershell scripts and cleanup
|
234
|
+
|
235
|
+
### Kicking Off The Build
|
236
|
+
|
237
|
+
The build is kicked off in Jenkins by running this on the machine (which is already the correct OS and already has the correct dependencies, loaded by the `omnibus` cookbook):
|
238
|
+
|
239
|
+
```
|
240
|
+
load-omnibus-toolchain.bat
|
241
|
+
cd chef/omnibus
|
242
|
+
bundle install
|
243
|
+
bundle exec omnibus build chef
|
244
|
+
```
|
245
|
+
|
246
|
+
This causes the [chef project definition](omnibus/config/projects/chef.rb) to load, which runs the [chef-complete](omnibus/config/software/chef-complete.rb) software definition, the primary software definition driving the whole build process. The reason we embed it all in a software definition instead of the project is to take advantage of omnibus caching: omnibus will invalidate the entire project (and recompile ruby, openssl, and everything else) if you change anything at all in the project file. Not so with a software definition.
|
247
|
+
|
248
|
+
### Installing the Gems
|
249
|
+
|
250
|
+
The primary build definition that installs the many Chef rubygems is [`software/chef.rb`](omnibus/software/chef.rb). This has dependencies on any binary libraries, ruby, rubygems and bundler. It has a lot of steps, so it uses a [library](omnibus/files/chef/build-chef.rb) to help reuse code and make it manageable to look at.
|
251
|
+
|
252
|
+
What it does:
|
253
|
+
|
254
|
+
1. Depends on software defs for pre-cached gems (see "Gems and Caching" below).
|
255
|
+
2. Installs all gems from the bundle:
|
256
|
+
- Sets up a `.bundle/config` ([code](omnibus/files/chef/build-chef.rb#L17-L39)) with --retries=4, --jobs=1, --without=development,no_<platform>, and `build.config.nokogiri` to pass.
|
257
|
+
- Sets up a common environment, standardizing the compilers and flags we use, in [`env`](omnibus/files/chef-gem/build-chef-gem.rb#L32-L54).
|
258
|
+
- [Runs](omnibus/config/software/chef.rb#L68) `bundle install --verbose`
|
259
|
+
3. Reinstalls any gems that were installed via path:
|
260
|
+
- [Runs](omnibus/files/chef/build-chef.rb#L80) `bundle list --paths` to get the installed directories of all gems.
|
261
|
+
- For each gem not installed in the main gem dir, [runs](omnibus/files/chef/build-chef.rb#L89) `rake install` from the installed gem directory.
|
262
|
+
- [Deletes](omnibus/files/chef/build-chef.rb#L139-L143) the bundler git cache and path- and git-installed gems from the build.
|
263
|
+
4. [Creates](omnibus/files/chef/build-chef.rb#L102-L152) `/opt/chef/Gemfile` and `/opt/chef/Gemfile.lock` with the gems that were installed in the build.
|
264
|
+
|
265
|
+
#### Gems and Caching
|
266
|
+
|
267
|
+
Some gems take a super long time to install (particularly native-compiled ones such as nokogiri and dep-selector-libgecode) and do not change version very often. In order to avoid doing this work every time, we take advantage of omnibus caching by separating out these gems into their own software definitions. [chef-gem-dep-selector-libgecode](omnibus/config/software/chef-gem-dep-selector-libgecode.rb) for example.
|
268
|
+
|
269
|
+
Each of these gems uses the `config/files/chef-gem/build-chef-gem` library to define itself. The name of the software definition itself indicates the .
|
270
|
+
|
271
|
+
We only create software definitions for long-running gems. Everything else is just installed in the [chef](omnibus/config/software/chef.rb) software definition in a big `bundle install` catchall.
|
272
|
+
|
273
|
+
Most gems we just install in the single `chef` software definition.
|
274
|
+
|
275
|
+
The first thing
|
276
|
+
|
277
|
+
### Appbundling
|
278
|
+
|
279
|
+
After the gems are installed, we *appbundle* them in [chef-appbundle](omnibus/config/software/chef-appbundle.rb). This creates binstubs that use the bundle to pin the software .
|
280
|
+
|
281
|
+
During the process of appbundling, we update the gem's `Gemfile` to include the locks in the top level `/opt/chef/Gemfile.lock`, so we can guarantee they will never pick up things outside the build. We then run `bundle lock` to update the gem's `Gemfile.lock`, and `bundle check` to ensure all the gems are actually installed. The appbundler then uses these pins.
|
282
|
+
|
283
|
+
### Other Cleanup
|
284
|
+
|
285
|
+
Finally, chef does several more steps including installing powershell scripts and shortcuts, and removing extra documentation to keep the build slim.
|
286
|
+
|
287
|
+
# License
|
288
|
+
|
289
|
+
Chef - A configuration management system
|
290
|
+
|
291
|
+
| | |
|
292
|
+
|:---------------------|:-----------------------------------------|
|
293
|
+
| **Author:** | Adam Jacob (<adam@chef.io>)
|
294
|
+
| **Copyright:** | Copyright 2008-2017, Chef Software, Inc.
|
295
|
+
| **License:** | Apache License, Version 2.0
|
296
|
+
|
297
|
+
```
|
298
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
299
|
+
you may not use this file except in compliance with the License.
|
300
|
+
You may obtain a copy of the License at
|
301
|
+
|
302
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
303
|
+
|
304
|
+
Unless required by applicable law or agreed to in writing, software
|
305
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
306
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
307
|
+
See the License for the specific language governing permissions and
|
308
|
+
limitations under the License.
|
309
|
+
```
|