chef 15.1.36-universal-mingw32 → 15.2.20-universal-mingw32
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/knife +0 -0
- data/ext/win32-eventlog/Rakefile +1 -1
- data/lib/chef.rb +1 -2
- data/lib/chef/action_collection.rb +8 -0
- data/lib/chef/api_client.rb +2 -2
- data/lib/chef/api_client/registration.rb +8 -7
- data/lib/chef/api_client_v1.rb +2 -1
- data/lib/chef/application.rb +1 -0
- data/lib/chef/application/apply.rb +1 -1
- data/lib/chef/application/base.rb +440 -0
- data/lib/chef/application/client.rb +6 -389
- data/lib/chef/application/solo.rb +11 -258
- data/lib/chef/application/windows_service.rb +3 -3
- data/lib/chef/application/windows_service_manager.rb +3 -3
- data/lib/chef/blacklist.rb +1 -1
- data/lib/chef/chef_fs/chef_fs_data_store.rb +15 -7
- data/lib/chef/chef_fs/command_line.rb +6 -1
- data/lib/chef/chef_fs/config.rb +3 -2
- data/lib/chef/chef_fs/data_handler/container_data_handler.rb +1 -1
- data/lib/chef/chef_fs/data_handler/data_bag_item_data_handler.rb +1 -1
- data/lib/chef/chef_fs/data_handler/data_handler_base.rb +1 -1
- data/lib/chef/chef_fs/data_handler/organization_data_handler.rb +1 -1
- data/lib/chef/chef_fs/data_handler/policy_data_handler.rb +2 -2
- data/lib/chef/chef_fs/file_pattern.rb +13 -7
- data/lib/chef/chef_fs/file_system.rb +3 -2
- data/lib/chef/chef_fs/file_system/base_fs_object.rb +13 -6
- data/lib/chef/chef_fs/file_system/chef_server/chef_server_root_dir.rb +1 -1
- data/lib/chef/chef_fs/file_system/chef_server/cookbook_artifacts_dir.rb +1 -1
- data/lib/chef/chef_fs/file_system/chef_server/cookbook_dir.rb +8 -5
- data/lib/chef/chef_fs/file_system/chef_server/cookbook_file.rb +1 -1
- data/lib/chef/chef_fs/file_system/chef_server/cookbook_subdir.rb +1 -1
- data/lib/chef/chef_fs/file_system/chef_server/cookbooks_dir.rb +1 -1
- data/lib/chef/chef_fs/file_system/chef_server/data_bag_dir.rb +3 -2
- data/lib/chef/chef_fs/file_system/chef_server/environments_dir.rb +4 -2
- data/lib/chef/chef_fs/file_system/chef_server/policies_dir.rb +1 -0
- data/lib/chef/chef_fs/file_system/chef_server/rest_list_dir.rb +1 -0
- data/lib/chef/chef_fs/file_system/chef_server/versioned_cookbooks_dir.rb +1 -1
- data/lib/chef/chef_fs/file_system/memory/memory_dir.rb +1 -1
- data/lib/chef/chef_fs/file_system/repository/acl.rb +1 -1
- data/lib/chef/chef_fs/file_system/repository/base_file.rb +2 -1
- data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_dir.rb +6 -2
- data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_entry.rb +6 -4
- data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_root_dir.rb +6 -4
- data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_versioned_cookbook_dir.rb +1 -0
- data/lib/chef/chef_fs/file_system/repository/directory.rb +5 -1
- data/lib/chef/chef_fs/file_system/repository/file_system_entry.rb +4 -2
- data/lib/chef/chef_fs/file_system_cache.rb +1 -0
- data/lib/chef/chef_fs/parallelizer/parallel_enumerable.rb +2 -1
- data/lib/chef/chef_fs/path_utils.rb +3 -0
- data/lib/chef/client.rb +4 -2
- data/lib/chef/config.rb +1 -1
- data/lib/chef/cookbook/cookbook_version_loader.rb +6 -3
- data/lib/chef/cookbook/file_system_file_vendor.rb +1 -0
- data/lib/chef/cookbook/file_vendor.rb +1 -0
- data/lib/chef/cookbook/gem_installer.rb +1 -0
- data/lib/chef/cookbook/manifest_v0.rb +1 -0
- data/lib/chef/cookbook/metadata.rb +11 -9
- data/lib/chef/cookbook/remote_file_vendor.rb +3 -2
- data/lib/chef/cookbook/synchronizer.rb +6 -4
- data/lib/chef/cookbook/syntax_check.rb +4 -0
- data/lib/chef/cookbook_loader.rb +1 -0
- data/lib/chef/cookbook_manifest.rb +4 -2
- data/lib/chef/cookbook_site_streaming_uploader.rb +1 -1
- data/lib/chef/cookbook_uploader.rb +2 -2
- data/lib/chef/cookbook_version.rb +10 -9
- data/lib/chef/data_bag.rb +2 -1
- data/lib/chef/data_bag_item.rb +6 -3
- data/lib/chef/data_collector.rb +16 -8
- data/lib/chef/data_collector/run_end_message.rb +2 -0
- data/lib/chef/decorator.rb +5 -6
- data/lib/chef/deprecated.rb +1 -0
- data/lib/chef/dsl/data_query.rb +1 -1
- data/lib/chef/dsl/declare_resource.rb +2 -0
- data/lib/chef/dsl/platform_introspection.rb +3 -1
- data/lib/chef/encrypted_data_bag_item.rb +7 -4
- data/lib/chef/encrypted_data_bag_item/assertions.rb +1 -1
- data/lib/chef/encrypted_data_bag_item/check_encrypted.rb +1 -0
- data/lib/chef/encrypted_data_bag_item/decryptor.rb +4 -2
- data/lib/chef/encrypted_data_bag_item/encryptor.rb +1 -0
- data/lib/chef/environment.rb +7 -5
- data/lib/chef/event_dispatch/base.rb +86 -172
- data/lib/chef/event_dispatch/dispatcher.rb +2 -1
- data/lib/chef/event_loggers/base.rb +2 -1
- data/lib/chef/exceptions.rb +6 -7
- data/lib/chef/file_access_control/unix.rb +7 -4
- data/lib/chef/file_access_control/windows.rb +17 -8
- data/lib/chef/file_cache.rb +2 -1
- data/lib/chef/file_content_management/deploy.rb +2 -2
- data/lib/chef/formatters/base.rb +3 -4
- data/lib/chef/formatters/doc.rb +21 -33
- data/lib/chef/formatters/error_inspectors/cookbook_resolve_error_inspector.rb +3 -2
- data/lib/chef/formatters/error_inspectors/resource_failure_inspector.rb +3 -1
- data/lib/chef/formatters/indentable_output_stream.rb +3 -3
- data/lib/chef/formatters/minimal.rb +21 -42
- data/lib/chef/guard_interpreter/resource_guard_interpreter.rb +1 -1
- data/lib/chef/handler.rb +1 -2
- data/lib/chef/http.rb +23 -18
- data/lib/chef/http/api_versions.rb +1 -2
- data/lib/chef/http/auth_credentials.rb +1 -0
- data/lib/chef/http/basic_client.rb +1 -1
- data/lib/chef/http/decompressor.rb +1 -0
- data/lib/chef/http/json_output.rb +2 -1
- data/lib/chef/http/json_to_model_output.rb +1 -1
- data/lib/chef/http/remote_request_id.rb +1 -2
- data/lib/chef/http/socketless_chef_zero_client.rb +3 -2
- data/lib/chef/http/ssl_policies.rb +3 -0
- data/lib/chef/http/validate_content_length.rb +2 -2
- data/lib/chef/json_compat.rb +1 -1
- data/lib/chef/key.rb +8 -6
- data/lib/chef/knife.rb +6 -5
- data/lib/chef/knife/bootstrap.rb +19 -12
- data/lib/chef/knife/bootstrap/chef_vault_handler.rb +1 -0
- data/lib/chef/knife/bootstrap/client_builder.rb +1 -0
- data/lib/chef/knife/bootstrap/train_connector.rb +23 -17
- data/lib/chef/knife/client_bulk_delete.rb +4 -3
- data/lib/chef/knife/client_create.rb +13 -13
- data/lib/chef/knife/client_delete.rb +3 -3
- data/lib/chef/knife/config_get.rb +8 -8
- data/lib/chef/knife/config_list_profiles.rb +4 -4
- data/lib/chef/knife/cookbook_delete.rb +1 -1
- data/lib/chef/knife/cookbook_download.rb +12 -12
- data/lib/chef/knife/cookbook_show.rb +10 -10
- data/lib/chef/knife/cookbook_upload.rb +5 -5
- data/lib/chef/knife/core/bootstrap_context.rb +1 -1
- data/lib/chef/knife/core/cookbook_scm_repo.rb +1 -1
- data/lib/chef/knife/core/gem_glob_loader.rb +2 -2
- data/lib/chef/knife/core/generic_presenter.rb +4 -4
- data/lib/chef/knife/core/node_presenter.rb +17 -17
- data/lib/chef/knife/core/object_loader.rb +1 -1
- data/lib/chef/knife/core/status_presenter.rb +5 -5
- data/lib/chef/knife/core/subcommand_loader.rb +3 -2
- data/lib/chef/knife/core/text_formatter.rb +4 -4
- data/lib/chef/knife/core/ui.rb +9 -5
- data/lib/chef/knife/data_bag_create.rb +1 -0
- data/lib/chef/knife/data_bag_from_file.rb +1 -1
- data/lib/chef/knife/data_bag_secret_options.rb +13 -13
- data/lib/chef/knife/data_bag_show.rb +2 -2
- data/lib/chef/knife/deps.rb +6 -6
- data/lib/chef/knife/edit.rb +2 -2
- data/lib/chef/knife/environment_compare.rb +1 -0
- data/lib/chef/knife/environment_from_file.rb +3 -3
- data/lib/chef/knife/key_create_base.rb +12 -12
- data/lib/chef/knife/key_edit_base.rb +15 -15
- data/lib/chef/knife/key_list.rb +3 -1
- data/lib/chef/knife/key_list_base.rb +9 -9
- data/lib/chef/knife/list.rb +5 -5
- data/lib/chef/knife/node_bulk_delete.rb +1 -0
- data/lib/chef/knife/node_edit.rb +1 -1
- data/lib/chef/knife/node_environment_set.rb +1 -2
- data/lib/chef/knife/node_run_list_add.rb +2 -2
- data/lib/chef/knife/node_run_list_remove.rb +2 -2
- data/lib/chef/knife/node_run_list_set.rb +2 -2
- data/lib/chef/knife/null.rb +1 -2
- data/lib/chef/knife/role_bulk_delete.rb +1 -0
- data/lib/chef/knife/role_env_run_list_add.rb +2 -2
- data/lib/chef/knife/role_env_run_list_set.rb +2 -2
- data/lib/chef/knife/role_run_list_add.rb +2 -2
- data/lib/chef/knife/role_run_list_set.rb +2 -2
- data/lib/chef/knife/search.rb +4 -4
- data/lib/chef/knife/ssh.rb +13 -9
- data/lib/chef/knife/supermarket_download.rb +1 -1
- data/lib/chef/knife/supermarket_install.rb +5 -5
- data/lib/chef/knife/supermarket_list.rb +1 -1
- data/lib/chef/knife/supermarket_share.rb +3 -2
- data/lib/chef/knife/supermarket_show.rb +1 -1
- data/lib/chef/knife/supermarket_unshare.rb +1 -0
- data/lib/chef/knife/tag_delete.rb +1 -1
- data/lib/chef/knife/xargs.rb +2 -2
- data/lib/chef/log/syslog.rb +2 -2
- data/lib/chef/log/winevt.rb +1 -2
- data/lib/chef/mash.rb +2 -2
- data/lib/chef/mixin/api_version_request_handling.rb +1 -1
- data/lib/chef/mixin/checksum.rb +1 -0
- data/lib/chef/mixin/convert_to_class_name.rb +2 -1
- data/lib/chef/mixin/create_path.rb +2 -2
- data/lib/chef/mixin/deep_merge.rb +5 -5
- data/lib/chef/mixin/get_source_from_package.rb +1 -0
- data/lib/chef/mixin/homebrew_user.rb +2 -1
- data/lib/chef/mixin/openssl_helper.rb +10 -6
- data/lib/chef/mixin/params_validate.rb +21 -13
- data/lib/chef/mixin/powershell_out.rb +1 -1
- data/lib/chef/mixin/powershell_type_coercions.rb +2 -2
- data/lib/chef/mixin/properties.rb +13 -10
- data/lib/chef/mixin/securable.rb +3 -3
- data/lib/chef/mixin/shell_out.rb +1 -0
- data/lib/chef/mixin/template.rb +2 -1
- data/lib/chef/mixin/user_context.rb +1 -1
- data/lib/chef/mixin/which.rb +1 -0
- data/lib/chef/mixin/windows_architecture_helper.rb +4 -4
- data/lib/chef/mixin/windows_env_helper.rb +2 -2
- data/lib/chef/monkey_patches/net_http.rb +1 -1
- data/lib/chef/monkey_patches/webrick-utils.rb +6 -4
- data/lib/chef/node.rb +24 -17
- data/lib/chef/node/attribute.rb +122 -113
- data/lib/chef/node/attribute_collections.rb +1 -1
- data/lib/chef/node/common_api.rb +8 -2
- data/lib/chef/node/immutable_collections.rb +1 -1
- data/lib/chef/node/mixin/immutablize_array.rb +142 -142
- data/lib/chef/node/mixin/immutablize_hash.rb +131 -131
- data/lib/chef/node_map.rb +18 -3
- data/lib/chef/null_logger.rb +8 -16
- data/lib/chef/org.rb +4 -4
- data/lib/chef/platform/query_helpers.rb +3 -0
- data/lib/chef/platform/rebooter.rb +1 -1
- data/lib/chef/platform/service_helpers.rb +2 -2
- data/lib/chef/policy_builder/expand_node_object.rb +4 -4
- data/lib/chef/policy_builder/policyfile.rb +4 -4
- data/lib/chef/powershell.rb +2 -0
- data/lib/chef/property.rb +7 -4
- data/lib/chef/provider.rb +9 -12
- data/lib/chef/provider/apt_preference.rb +1 -2
- data/lib/chef/provider/apt_repository.rb +1 -2
- data/lib/chef/provider/apt_update.rb +2 -3
- data/lib/chef/provider/cookbook_file.rb +1 -0
- data/lib/chef/provider/cron.rb +6 -5
- data/lib/chef/provider/cron/unix.rb +1 -0
- data/lib/chef/provider/dsc_resource.rb +2 -3
- data/lib/chef/provider/dsc_script.rb +2 -2
- data/lib/chef/provider/execute.rb +1 -1
- data/lib/chef/provider/file.rb +5 -3
- data/lib/chef/provider/git.rb +4 -3
- data/lib/chef/provider/group.rb +7 -3
- data/lib/chef/provider/group/aix.rb +2 -0
- data/lib/chef/provider/group/dscl.rb +6 -3
- data/lib/chef/provider/group/groupadd.rb +1 -0
- data/lib/chef/provider/group/groupmod.rb +1 -1
- data/lib/chef/provider/group/pw.rb +3 -3
- data/lib/chef/provider/group/suse.rb +2 -2
- data/lib/chef/provider/group/usermod.rb +1 -0
- data/lib/chef/provider/group/windows.rb +1 -1
- data/lib/chef/provider/http_request.rb +1 -1
- data/lib/chef/provider/ifconfig.rb +12 -6
- data/lib/chef/provider/ifconfig/aix.rb +1 -0
- data/lib/chef/provider/ifconfig/debian.rb +1 -0
- data/lib/chef/provider/launchd.rb +16 -13
- data/lib/chef/provider/lwrp_base.rb +1 -2
- data/lib/chef/provider/mount.rb +1 -0
- data/lib/chef/provider/mount/aix.rb +6 -6
- data/lib/chef/provider/mount/mount.rb +5 -4
- data/lib/chef/provider/mount/solaris.rb +4 -4
- data/lib/chef/provider/package.rb +9 -6
- data/lib/chef/provider/package/apt.rb +4 -3
- data/lib/chef/provider/package/bff.rb +1 -0
- data/lib/chef/provider/package/cab.rb +4 -2
- data/lib/chef/provider/package/chocolatey.rb +5 -2
- data/lib/chef/provider/package/dnf.rb +1 -1
- data/lib/chef/provider/package/dnf/dnf_helper.py +15 -1
- data/lib/chef/provider/package/dnf/python_helper.rb +1 -0
- data/lib/chef/provider/package/dpkg.rb +4 -4
- data/lib/chef/provider/package/freebsd/base.rb +3 -2
- data/lib/chef/provider/package/freebsd/pkgng.rb +2 -2
- data/lib/chef/provider/package/homebrew.rb +1 -1
- data/lib/chef/provider/package/macports.rb +1 -0
- data/lib/chef/provider/package/msu.rb +3 -1
- data/lib/chef/provider/package/openbsd.rb +1 -1
- data/lib/chef/provider/package/paludis.rb +1 -0
- data/lib/chef/provider/package/portage.rb +2 -2
- data/lib/chef/provider/package/powershell.rb +3 -2
- data/lib/chef/provider/package/rpm.rb +1 -0
- data/lib/chef/provider/package/rubygems.rb +5 -3
- data/lib/chef/provider/package/smartos.rb +1 -0
- data/lib/chef/provider/package/snap.rb +5 -1
- data/lib/chef/provider/package/solaris.rb +2 -0
- data/lib/chef/provider/package/windows/exe.rb +5 -5
- data/lib/chef/provider/package/windows/msi.rb +8 -7
- data/lib/chef/provider/package/windows/registry_uninstall_entry.rb +1 -0
- data/lib/chef/provider/package/yum.rb +5 -2
- data/lib/chef/provider/package/yum/python_helper.rb +2 -1
- data/lib/chef/provider/package/zypper.rb +1 -1
- data/lib/chef/provider/reboot.rb +1 -1
- data/lib/chef/provider/registry_key.rb +2 -2
- data/lib/chef/provider/remote_directory.rb +1 -1
- data/lib/chef/provider/remote_file.rb +10 -9
- data/lib/chef/provider/remote_file/fetcher.rb +3 -2
- data/lib/chef/provider/remote_file/local_file.rb +1 -1
- data/lib/chef/provider/route.rb +4 -2
- data/lib/chef/provider/service/aixinit.rb +1 -1
- data/lib/chef/provider/service/arch.rb +2 -1
- data/lib/chef/provider/service/debian.rb +12 -11
- data/lib/chef/provider/service/freebsd.rb +1 -1
- data/lib/chef/provider/service/openbsd.rb +7 -7
- data/lib/chef/provider/service/redhat.rb +2 -2
- data/lib/chef/provider/service/simple.rb +2 -1
- data/lib/chef/provider/service/systemd.rb +2 -2
- data/lib/chef/provider/service/upstart.rb +3 -2
- data/lib/chef/provider/service/windows.rb +7 -6
- data/lib/chef/provider/subversion.rb +4 -1
- data/lib/chef/provider/template.rb +1 -0
- data/lib/chef/provider/user.rb +5 -1
- data/lib/chef/provider/user/aix.rb +3 -0
- data/lib/chef/provider/user/dscl.rb +8 -3
- data/lib/chef/provider/user/linux.rb +1 -0
- data/lib/chef/provider/user/pw.rb +1 -0
- data/lib/chef/provider/user/solaris.rb +2 -0
- data/lib/chef/provider/user/windows.rb +2 -1
- data/lib/chef/provider/windows_env.rb +3 -0
- data/lib/chef/provider/windows_script.rb +1 -1
- data/lib/chef/provider/windows_task.rb +4 -3
- data/lib/chef/provider/yum_repository.rb +1 -2
- data/lib/chef/provider/zypper_repository.rb +2 -3
- data/lib/chef/recipe.rb +2 -1
- data/lib/chef/resource.rb +24 -15
- data/lib/chef/resource/apt_package.rb +9 -9
- data/lib/chef/resource/apt_preference.rb +9 -9
- data/lib/chef/resource/apt_repository.rb +86 -23
- data/lib/chef/resource/apt_update.rb +2 -2
- data/lib/chef/resource/archive_file.rb +13 -13
- data/lib/chef/resource/build_essential.rb +5 -4
- data/lib/chef/resource/cab_package.rb +9 -9
- data/lib/chef/resource/chef_gem.rb +4 -4
- data/lib/chef/resource/chef_handler.rb +8 -7
- data/lib/chef/resource/chocolatey_config.rb +3 -3
- data/lib/chef/resource/chocolatey_feature.rb +2 -2
- data/lib/chef/resource/chocolatey_package.rb +8 -8
- data/lib/chef/resource/chocolatey_source.rb +3 -3
- data/lib/chef/resource/cookbook_file.rb +4 -4
- data/lib/chef/resource/cron.rb +12 -12
- data/lib/chef/resource/cron_access.rb +2 -2
- data/lib/chef/resource/cron_d.rb +45 -38
- data/lib/chef/resource/directory.rb +2 -2
- data/lib/chef/resource/dmg_package.rb +26 -26
- data/lib/chef/resource/dnf_package.rb +20 -20
- data/lib/chef/resource/dpkg_package.rb +5 -5
- data/lib/chef/resource/dsc_resource.rb +7 -7
- data/lib/chef/resource/dsc_script.rb +9 -4
- data/lib/chef/resource/execute.rb +14 -14
- data/lib/chef/resource/file.rb +4 -4
- data/lib/chef/resource/file/verification.rb +2 -0
- data/lib/chef/resource/file/verification/systemd_unit.rb +1 -0
- data/lib/chef/resource/gem_package.rb +7 -7
- data/lib/chef/resource/git.rb +2 -2
- data/lib/chef/resource/group.rb +5 -5
- data/lib/chef/resource/homebrew_cask.rb +17 -17
- data/lib/chef/resource/homebrew_package.rb +1 -1
- data/lib/chef/resource/homebrew_tap.rb +18 -18
- data/lib/chef/resource/hostname.rb +11 -11
- data/lib/chef/resource/http_request.rb +1 -1
- data/lib/chef/resource/ifconfig.rb +26 -26
- data/lib/chef/resource/ips_package.rb +2 -2
- data/lib/chef/resource/kernel_module.rb +25 -7
- data/lib/chef/resource/launchd.rb +105 -105
- data/lib/chef/resource/link.rb +10 -10
- data/lib/chef/resource/locale.rb +20 -20
- data/lib/chef/resource/log.rb +4 -4
- data/lib/chef/resource/lwrp_base.rb +1 -0
- data/lib/chef/resource/macos_userdefaults.rb +17 -16
- data/lib/chef/resource/macosx_service.rb +1 -1
- data/lib/chef/resource/mdadm.rb +14 -14
- data/lib/chef/resource/mount.rb +24 -24
- data/lib/chef/resource/msu_package.rb +8 -8
- data/lib/chef/resource/ohai.rb +1 -1
- data/lib/chef/resource/ohai_hint.rb +7 -5
- data/lib/chef/resource/openssl_dhparam.rb +14 -14
- data/lib/chef/resource/openssl_ec_private_key.rb +16 -16
- data/lib/chef/resource/openssl_ec_public_key.rb +9 -9
- data/lib/chef/resource/openssl_rsa_private_key.rb +17 -17
- data/lib/chef/resource/openssl_rsa_public_key.rb +9 -9
- data/lib/chef/resource/openssl_x509_certificate.rb +34 -34
- data/lib/chef/resource/openssl_x509_crl.rb +17 -17
- data/lib/chef/resource/openssl_x509_request.rb +20 -20
- data/lib/chef/resource/osx_profile.rb +5 -5
- data/lib/chef/resource/package.rb +9 -9
- data/lib/chef/resource/paludis_package.rb +2 -2
- data/lib/chef/resource/powershell_package.rb +8 -8
- data/lib/chef/resource/powershell_package_source.rb +13 -13
- data/lib/chef/resource/reboot.rb +4 -4
- data/lib/chef/resource/registry_key.rb +5 -3
- data/lib/chef/resource/remote_directory.rb +20 -20
- data/lib/chef/resource/remote_file.rb +8 -7
- data/lib/chef/resource/resource_notification.rb +4 -3
- data/lib/chef/resource/rhsm_errata.rb +2 -2
- data/lib/chef/resource/rhsm_errata_level.rb +4 -4
- data/lib/chef/resource/rhsm_register.rb +14 -14
- data/lib/chef/resource/rhsm_repo.rb +3 -3
- data/lib/chef/resource/rhsm_subscription.rb +2 -2
- data/lib/chef/resource/route.rb +11 -11
- data/lib/chef/resource/scm.rb +18 -18
- data/lib/chef/resource/service.rb +27 -27
- data/lib/chef/resource/snap_package.rb +4 -4
- data/lib/chef/resource/ssh_known_hosts_entry.rb +19 -19
- data/lib/chef/resource/subversion.rb +10 -10
- data/lib/chef/resource/sudo.rb +38 -37
- data/lib/chef/resource/swap_file.rb +9 -9
- data/lib/chef/resource/sysctl.rb +20 -17
- data/lib/chef/resource/systemd_unit.rb +12 -12
- data/lib/chef/resource/template.rb +8 -8
- data/lib/chef/resource/timezone.rb +3 -2
- data/lib/chef/resource/user.rb +19 -19
- data/lib/chef/resource/user/dscl_user.rb +2 -2
- data/lib/chef/resource/user/windows_user.rb +2 -2
- data/lib/chef/resource/windows_ad_join.rb +17 -16
- data/lib/chef/resource/windows_auto_run.rb +8 -8
- data/lib/chef/resource/windows_certificate.rb +13 -13
- data/lib/chef/resource/windows_dfs_folder.rb +13 -12
- data/lib/chef/resource/windows_dfs_namespace.rb +18 -18
- data/lib/chef/resource/windows_dfs_server.rb +12 -12
- data/lib/chef/resource/windows_dns_record.rb +8 -8
- data/lib/chef/resource/windows_dns_zone.rb +6 -6
- data/lib/chef/resource/windows_env.rb +6 -6
- data/lib/chef/resource/windows_feature.rb +12 -12
- data/lib/chef/resource/windows_feature_dism.rb +20 -19
- data/lib/chef/resource/windows_feature_powershell.rb +24 -22
- data/lib/chef/resource/windows_firewall_rule.rb +34 -34
- data/lib/chef/resource/windows_font.rb +4 -4
- data/lib/chef/resource/windows_package.rb +5 -5
- data/lib/chef/resource/windows_pagefile.rb +9 -8
- data/lib/chef/resource/windows_path.rb +2 -2
- data/lib/chef/resource/windows_printer.rb +15 -15
- data/lib/chef/resource/windows_printer_port.rb +14 -14
- data/lib/chef/resource/windows_script.rb +1 -1
- data/lib/chef/resource/windows_service.rb +16 -16
- data/lib/chef/resource/windows_share.rb +27 -24
- data/lib/chef/resource/windows_shortcut.rb +7 -7
- data/lib/chef/resource/windows_task.rb +53 -51
- data/lib/chef/resource/windows_uac.rb +15 -15
- data/lib/chef/resource/windows_workgroup.rb +15 -14
- data/lib/chef/resource/yum_package.rb +24 -24
- data/lib/chef/resource/yum_repository.rb +44 -44
- data/lib/chef/resource/zypper_package.rb +9 -9
- data/lib/chef/resource/zypper_repository.rb +30 -30
- data/lib/chef/resource_builder.rb +1 -0
- data/lib/chef/resource_collection.rb +6 -4
- data/lib/chef/resource_collection/resource_collection_serialization.rb +4 -3
- data/lib/chef/resource_collection/resource_list.rb +5 -3
- data/lib/chef/resource_collection/resource_set.rb +12 -8
- data/lib/chef/resource_collection/stepable_iterator.rb +1 -0
- data/lib/chef/resource_definition.rb +5 -3
- data/lib/chef/resource_definition_list.rb +1 -1
- data/lib/chef/resource_inspector.rb +1 -1
- data/lib/chef/resource_reporter.rb +1 -1
- data/lib/chef/role.rb +9 -7
- data/lib/chef/run_context.rb +5 -5
- data/lib/chef/run_context/cookbook_compiler.rb +5 -1
- data/lib/chef/run_list.rb +5 -4
- data/lib/chef/run_list/run_list_expansion.rb +3 -2
- data/lib/chef/run_list/run_list_item.rb +5 -5
- data/lib/chef/run_list/versioned_recipe_list.rb +1 -1
- data/lib/chef/run_status.rb +1 -1
- data/lib/chef/runner.rb +2 -4
- data/lib/chef/search/query.rb +3 -3
- data/lib/chef/shell/ext.rb +2 -2
- data/lib/chef/shell/model_wrapper.rb +2 -1
- data/lib/chef/shell/shell_session.rb +1 -1
- data/lib/chef/train_transport.rb +3 -3
- data/lib/chef/user.rb +6 -6
- data/lib/chef/user_v1.rb +13 -11
- data/lib/chef/util/diff.rb +5 -2
- data/lib/chef/util/dsc/configuration_generator.rb +6 -6
- data/lib/chef/util/dsc/lcm_output_parser.rb +2 -2
- data/lib/chef/util/dsc/local_configuration_manager.rb +2 -2
- data/lib/chef/util/dsc/resource_store.rb +2 -2
- data/lib/chef/util/file_edit.rb +1 -0
- data/lib/chef/util/powershell/cmdlet.rb +1 -1
- data/lib/chef/util/threaded_job_queue.rb +1 -1
- data/lib/chef/util/windows/logon_session.rb +5 -5
- data/lib/chef/util/windows/net_use.rb +2 -2
- data/lib/chef/util/windows/net_user.rb +3 -2
- data/lib/chef/version.rb +1 -1
- data/lib/chef/version_class.rb +1 -1
- data/lib/chef/version_constraint.rb +1 -1
- data/lib/chef/whitelist.rb +1 -1
- data/lib/chef/win32/api/crypto.rb +11 -11
- data/lib/chef/win32/api/error.rb +4 -4
- data/lib/chef/win32/api/file.rb +38 -38
- data/lib/chef/win32/api/installer.rb +3 -3
- data/lib/chef/win32/api/memory.rb +4 -4
- data/lib/chef/win32/api/net.rb +38 -38
- data/lib/chef/win32/api/process.rb +2 -2
- data/lib/chef/win32/api/psapi.rb +1 -1
- data/lib/chef/win32/api/registry.rb +3 -3
- data/lib/chef/win32/api/security.rb +87 -87
- data/lib/chef/win32/api/synchronization.rb +5 -5
- data/lib/chef/win32/api/system.rb +7 -7
- data/lib/chef/win32/api/unicode.rb +3 -3
- data/lib/chef/win32/eventlog.rb +2 -2
- data/lib/chef/win32/file.rb +5 -2
- data/lib/chef/win32/file/info.rb +1 -0
- data/lib/chef/win32/file/version_info.rb +15 -14
- data/lib/chef/win32/memory.rb +1 -1
- data/lib/chef/win32/net.rb +8 -4
- data/lib/chef/win32/registry.rb +6 -1
- data/lib/chef/win32/security.rb +7 -2
- data/lib/chef/win32/security/acl.rb +2 -1
- data/lib/chef/win32/security/security_descriptor.rb +4 -2
- data/lib/chef/win32/security/sid.rb +11 -10
- data/lib/chef/win32/security/token.rb +3 -1
- data/lib/chef/win32/version.rb +3 -3
- data/spec/data/apt/chef-integration-test-1.0/debian/rules +0 -0
- data/spec/data/apt/chef-integration-test-1.1/debian/rules +0 -0
- data/spec/data/apt/chef-integration-test2-1.0/debian/rules +0 -0
- data/spec/functional/assets/chefinittest +0 -0
- data/spec/functional/assets/testchefsubsys +0 -0
- data/spec/functional/dsl/reboot_pending_spec.rb +2 -2
- data/spec/functional/event_loggers/windows_eventlog_spec.rb +6 -4
- data/spec/functional/file_content_management/deploy_strategies_spec.rb +21 -21
- data/spec/functional/knife/exec_spec.rb +1 -1
- data/spec/functional/knife/ssh_spec.rb +3 -3
- data/spec/functional/mixin/user_context_spec.rb +3 -1
- data/spec/functional/provider/remote_file/cache_control_data_spec.rb +0 -0
- data/spec/functional/rebooter_spec.rb +1 -1
- data/spec/functional/resource/aix_service_spec.rb +1 -1
- data/spec/functional/resource/aixinit_service_spec.rb +1 -1
- data/spec/functional/resource/chocolatey_package_spec.rb +2 -2
- data/spec/functional/resource/cookbook_file_spec.rb +1 -3
- data/spec/functional/resource/cron_spec.rb +1 -0
- data/spec/functional/resource/dnf_package_spec.rb +5 -5
- data/spec/functional/resource/dpkg_package_spec.rb +4 -4
- data/spec/functional/resource/dsc_resource_spec.rb +2 -1
- data/spec/functional/resource/dsc_script_spec.rb +7 -11
- data/spec/functional/resource/git_spec.rb +5 -5
- data/spec/functional/resource/group_spec.rb +15 -13
- data/spec/functional/resource/ifconfig_spec.rb +2 -2
- data/spec/functional/resource/link_spec.rb +2 -2
- data/spec/functional/resource/locale_spec.rb +4 -4
- data/spec/functional/resource/mount_spec.rb +3 -3
- data/spec/functional/resource/powershell_script_spec.rb +9 -8
- data/spec/functional/resource/reboot_spec.rb +1 -1
- data/spec/functional/resource/remote_file_spec.rb +2 -2
- data/spec/functional/resource/template_spec.rb +1 -1
- data/spec/functional/resource/user/windows_spec.rb +2 -2
- data/spec/functional/resource/windows_certificate_spec.rb +3 -3
- data/spec/functional/resource/windows_service_spec.rb +3 -3
- data/spec/functional/run_lock_spec.rb +3 -2
- data/spec/functional/util/powershell/cmdlet_spec.rb +1 -1
- data/spec/functional/win32/security_spec.rb +12 -7
- data/spec/functional/win32/service_manager_spec.rb +1 -1
- data/spec/integration/client/client_spec.rb +79 -81
- data/spec/integration/client/exit_code_spec.rb +2 -2
- data/spec/integration/client/ipv6_spec.rb +2 -2
- data/spec/integration/knife/chef_fs_data_store_spec.rb +25 -25
- data/spec/integration/knife/chef_repo_path_spec.rb +4 -4
- data/spec/integration/knife/config_get_spec.rb +1 -1
- data/spec/integration/knife/config_list_profiles_spec.rb +2 -1
- data/spec/integration/knife/cookbook_api_ipv6_spec.rb +1 -1
- data/spec/integration/knife/cookbook_download_spec.rb +1 -1
- data/spec/integration/knife/diff_spec.rb +2 -2
- data/spec/integration/knife/download_spec.rb +1 -1
- data/spec/integration/knife/redirection_spec.rb +1 -1
- data/spec/integration/knife/upload_spec.rb +2 -2
- data/spec/integration/recipes/accumulator_spec.rb +4 -4
- data/spec/integration/recipes/lwrp_inline_resources_spec.rb +5 -5
- data/spec/integration/recipes/lwrp_spec.rb +2 -2
- data/spec/integration/recipes/notifies_spec.rb +20 -20
- data/spec/integration/recipes/notifying_block_spec.rb +4 -4
- data/spec/integration/recipes/provider_choice.rb +1 -2
- data/spec/integration/recipes/recipe_dsl_spec.rb +9 -9
- data/spec/integration/recipes/remote_directory.rb +2 -2
- data/spec/integration/solo/solo_spec.rb +20 -20
- data/spec/spec_helper.rb +9 -11
- data/spec/stress/win32/security_spec.rb +1 -1
- data/spec/support/lib/chef/resource/zen_follower.rb +1 -1
- data/spec/support/lib/chef/resource/zen_master.rb +1 -1
- data/spec/support/mock/platform.rb +2 -2
- data/spec/support/platform_helpers.rb +14 -0
- data/spec/support/platforms/win32/spec_service.rb +6 -10
- data/spec/support/shared/functional/execute_resource.rb +4 -4
- data/spec/support/shared/functional/file_resource.rb +1 -3
- data/spec/support/shared/functional/http.rb +15 -39
- data/spec/support/shared/functional/securable_resource.rb +4 -8
- data/spec/support/shared/functional/win32_service.rb +1 -1
- data/spec/support/shared/functional/windows_script.rb +2 -1
- data/spec/support/shared/integration/app_server_support.rb +3 -4
- data/spec/support/shared/integration/integration_helper.rb +1 -0
- data/spec/support/shared/integration/knife_support.rb +5 -5
- data/spec/support/shared/unit/application_dot_d.rb +10 -4
- data/spec/support/shared/unit/file_system_support.rb +3 -2
- data/spec/support/shared/unit/platform_introspector.rb +12 -12
- data/spec/support/shared/unit/provider/file.rb +1 -1
- data/spec/support/shared/unit/script_resource.rb +1 -1
- data/spec/support/shared/unit/windows_script_resource.rb +1 -1
- data/spec/tiny_server.rb +1 -1
- data/spec/unit/api_client/registration_spec.rb +1 -1
- data/spec/unit/api_client_spec.rb +5 -5
- data/spec/unit/api_client_v1_spec.rb +6 -6
- data/spec/unit/application/client_spec.rb +8 -8
- data/spec/unit/application/exit_code_spec.rb +3 -2
- data/spec/unit/application/knife_spec.rb +1 -2
- data/spec/unit/chef_fs/config_spec.rb +3 -3
- data/spec/unit/chef_fs/file_system/repository/directory_spec.rb +1 -1
- data/spec/unit/chef_fs/parallelizer.rb +1 -1
- data/spec/unit/client_spec.rb +1 -1
- data/spec/unit/config_fetcher_spec.rb +1 -1
- data/spec/unit/cookbook/metadata_spec.rb +4 -4
- data/spec/unit/cookbook/synchronizer_spec.rb +4 -4
- data/spec/unit/cookbook_loader_spec.rb +10 -10
- data/spec/unit/cookbook_site_streaming_uploader_spec.rb +1 -2
- data/spec/unit/cookbook_version_file_specificity_spec.rb +9 -9
- data/spec/unit/data_bag_item_spec.rb +8 -8
- data/spec/unit/data_bag_spec.rb +1 -1
- data/spec/unit/data_collector_spec.rb +82 -0
- data/spec/unit/decorator_spec.rb +2 -2
- data/spec/unit/deprecated_spec.rb +2 -2
- data/spec/unit/dsl/data_query_spec.rb +3 -2
- data/spec/unit/dsl/declare_resource_spec.rb +1 -1
- data/spec/unit/dsl/platform_introspection_spec.rb +2 -2
- data/spec/unit/encrypted_data_bag_item/check_encrypted_spec.rb +2 -1
- data/spec/unit/encrypted_data_bag_item_spec.rb +2 -1
- data/spec/unit/environment_spec.rb +9 -9
- data/spec/unit/event_dispatch/dsl_spec.rb +1 -1
- data/spec/unit/file_content_management/deploy/mv_unix_spec.rb +3 -3
- data/spec/unit/file_content_management/deploy/mv_windows_spec.rb +2 -2
- data/spec/unit/formatters/error_inspectors/resource_failure_inspector_spec.rb +3 -3
- data/spec/unit/guard_interpreter/resource_guard_interpreter_spec.rb +1 -1
- data/spec/unit/http/authenticator_spec.rb +3 -2
- data/spec/unit/http/json_input_spec.rb +1 -1
- data/spec/unit/key_spec.rb +7 -7
- data/spec/unit/knife/bootstrap/train_connector_spec.rb +13 -8
- data/spec/unit/knife/bootstrap_spec.rb +22 -16
- data/spec/unit/knife/client_bulk_delete_spec.rb +4 -4
- data/spec/unit/knife/configure_client_spec.rb +1 -1
- data/spec/unit/knife/configure_spec.rb +1 -1
- data/spec/unit/knife/cookbook_bulk_delete_spec.rb +1 -1
- data/spec/unit/knife/cookbook_delete_spec.rb +2 -2
- data/spec/unit/knife/cookbook_download_spec.rb +2 -2
- data/spec/unit/knife/cookbook_metadata_spec.rb +4 -4
- data/spec/unit/knife/cookbook_upload_spec.rb +4 -2
- data/spec/unit/knife/core/gem_glob_loader_spec.rb +4 -4
- data/spec/unit/knife/core/hashed_command_loader_spec.rb +4 -2
- data/spec/unit/knife/core/node_editor_spec.rb +8 -8
- data/spec/unit/knife/core/windows_bootstrap_context_spec.rb +1 -2
- data/spec/unit/knife/data_bag_from_file_spec.rb +2 -1
- data/spec/unit/knife/data_bag_show_spec.rb +2 -1
- data/spec/unit/knife/key_create_spec.rb +1 -1
- data/spec/unit/knife/key_delete_spec.rb +3 -3
- data/spec/unit/knife/key_edit_spec.rb +4 -4
- data/spec/unit/knife/key_list_spec.rb +1 -1
- data/spec/unit/knife/key_show_spec.rb +3 -3
- data/spec/unit/knife/node_bulk_delete_spec.rb +3 -3
- data/spec/unit/knife/node_delete_spec.rb +2 -2
- data/spec/unit/knife/node_edit_spec.rb +1 -1
- data/spec/unit/knife/node_environment_set_spec.rb +6 -1
- data/spec/unit/knife/node_from_file_spec.rb +1 -1
- data/spec/unit/knife/node_policy_set_spec.rb +1 -1
- data/spec/unit/knife/node_run_list_add_spec.rb +1 -1
- data/spec/unit/knife/node_run_list_remove_spec.rb +1 -1
- data/spec/unit/knife/node_run_list_set_spec.rb +1 -1
- data/spec/unit/knife/node_show_spec.rb +1 -1
- data/spec/unit/knife/raw_spec.rb +2 -2
- data/spec/unit/knife/role_bulk_delete_spec.rb +2 -2
- data/spec/unit/knife/role_create_spec.rb +1 -1
- data/spec/unit/knife/role_delete_spec.rb +1 -1
- data/spec/unit/knife/role_edit_spec.rb +1 -1
- data/spec/unit/knife/role_env_run_list_add_spec.rb +1 -1
- data/spec/unit/knife/role_env_run_list_clear_spec.rb +1 -1
- data/spec/unit/knife/role_env_run_list_remove_spec.rb +1 -1
- data/spec/unit/knife/role_env_run_list_replace_spec.rb +1 -1
- data/spec/unit/knife/role_env_run_list_set_spec.rb +1 -1
- data/spec/unit/knife/role_from_file_spec.rb +1 -1
- data/spec/unit/knife/role_run_list_add_spec.rb +1 -1
- data/spec/unit/knife/role_run_list_clear_spec.rb +1 -1
- data/spec/unit/knife/role_run_list_remove_spec.rb +1 -1
- data/spec/unit/knife/role_run_list_replace_spec.rb +1 -1
- data/spec/unit/knife/role_run_list_set_spec.rb +1 -1
- data/spec/unit/knife/status_spec.rb +2 -1
- data/spec/unit/knife/supermarket_install_spec.rb +5 -4
- data/spec/unit/knife/supermarket_share_spec.rb +1 -1
- data/spec/unit/knife_spec.rb +35 -34
- data/spec/unit/lwrp_spec.rb +19 -19
- data/spec/unit/mixin/homebrew_user_spec.rb +1 -1
- data/spec/unit/mixin/params_validate_spec.rb +10 -10
- data/spec/unit/mixin/properties_spec.rb +4 -4
- data/spec/unit/mixin/shell_out_spec.rb +3 -3
- data/spec/unit/mixin/template_spec.rb +4 -8
- data/spec/unit/mixin/unformatter_spec.rb +1 -2
- data/spec/unit/mixin/user_context_spec.rb +1 -2
- data/spec/unit/mixin/which.rb +2 -0
- data/spec/unit/mixin/windows_architecture_helper_spec.rb +3 -3
- data/spec/unit/node/attribute_spec.rb +12 -12
- data/spec/unit/node/immutable_collections_spec.rb +50 -50
- data/spec/unit/node/vivid_mash_spec.rb +4 -4
- data/spec/unit/node_spec.rb +12 -12
- data/spec/unit/org_spec.rb +3 -3
- data/spec/unit/policy_builder/policyfile_spec.rb +2 -2
- data/spec/unit/property/state_spec.rb +26 -25
- data/spec/unit/property/validation_spec.rb +14 -13
- data/spec/unit/property_spec.rb +11 -10
- data/spec/unit/provider/apt_update_spec.rb +6 -6
- data/spec/unit/provider/cron_spec.rb +1 -1
- data/spec/unit/provider/dsc_resource_spec.rb +6 -3
- data/spec/unit/provider/dsc_script_spec.rb +1 -1
- data/spec/unit/provider/git_spec.rb +38 -38
- data/spec/unit/provider/group/dscl_spec.rb +1 -1
- data/spec/unit/provider/group/groupadd_spec.rb +1 -1
- data/spec/unit/provider/group_spec.rb +2 -3
- data/spec/unit/provider/launchd_spec.rb +16 -8
- data/spec/unit/provider/link_spec.rb +22 -11
- data/spec/unit/provider/mount/mount_spec.rb +31 -31
- data/spec/unit/provider/mount/solaris_spec.rb +11 -11
- data/spec/unit/provider/ohai_spec.rb +1 -1
- data/spec/unit/provider/osx_profile_spec.rb +5 -7
- data/spec/unit/provider/package/apt_spec.rb +5 -5
- data/spec/unit/provider/package/bff_spec.rb +1 -1
- data/spec/unit/provider/package/cab_spec.rb +1 -1
- data/spec/unit/provider/package/chocolatey_spec.rb +8 -8
- data/spec/unit/provider/package/msu_spec.rb +1 -1
- data/spec/unit/provider/package/openbsd_spec.rb +14 -10
- data/spec/unit/provider/package/powershell_spec.rb +1 -1
- data/spec/unit/provider/package/smartos_spec.rb +2 -2
- data/spec/unit/provider/package/windows/exe_spec.rb +9 -9
- data/spec/unit/provider/package/windows/msi_spec.rb +7 -7
- data/spec/unit/provider/package/windows_spec.rb +2 -1
- data/spec/unit/provider/package/yum/yum_cache_spec.rb +1 -1
- data/spec/unit/provider/package/zypper_spec.rb +13 -4
- data/spec/unit/provider/powershell_script_spec.rb +12 -12
- data/spec/unit/provider/registry_key_spec.rb +1 -1
- data/spec/unit/provider/remote_directory_spec.rb +6 -6
- data/spec/unit/provider/route_spec.rb +11 -11
- data/spec/unit/provider/service/arch_service_spec.rb +11 -11
- data/spec/unit/provider/service/debian_service_spec.rb +2 -1
- data/spec/unit/provider/service/freebsd_service_spec.rb +23 -19
- data/spec/unit/provider/service/gentoo_service_spec.rb +2 -2
- data/spec/unit/provider/service/init_service_spec.rb +9 -9
- data/spec/unit/provider/service/invokercd_service_spec.rb +9 -9
- data/spec/unit/provider/service/macosx_spec.rb +1 -1
- data/spec/unit/provider/service/openbsd_service_spec.rb +15 -11
- data/spec/unit/provider/service/simple_service_spec.rb +5 -5
- data/spec/unit/provider/service/upstart_service_spec.rb +14 -14
- data/spec/unit/provider/service/windows_spec.rb +53 -35
- data/spec/unit/provider/subversion_spec.rb +8 -4
- data/spec/unit/provider/systemd_unit_spec.rb +146 -146
- data/spec/unit/provider/template/content_spec.rb +28 -28
- data/spec/unit/provider/windows_task_spec.rb +7 -2
- data/spec/unit/provider_resolver_spec.rb +2 -2
- data/spec/unit/provider_spec.rb +2 -4
- data/spec/unit/recipe_spec.rb +3 -3
- data/spec/unit/resource/batch_spec.rb +1 -1
- data/spec/unit/resource/cab_package_spec.rb +1 -1
- data/spec/unit/resource/chef_gem_spec.rb +1 -1
- data/spec/unit/resource/directory_spec.rb +1 -1
- data/spec/unit/resource/dnf_package_spec.rb +1 -1
- data/spec/unit/resource/dsc_resource_spec.rb +1 -1
- data/spec/unit/resource/file/verification_spec.rb +1 -2
- data/spec/unit/resource/file_spec.rb +1 -1
- data/spec/unit/resource/group_spec.rb +1 -1
- data/spec/unit/resource/kernel_module_spec.rb +1 -0
- data/spec/unit/resource/link_spec.rb +1 -1
- data/spec/unit/resource/locale_spec.rb +12 -12
- data/spec/unit/resource/osx_profile_spec.rb +2 -1
- data/spec/unit/resource/powershell_script_spec.rb +12 -7
- data/spec/unit/resource/registry_key_spec.rb +3 -3
- data/spec/unit/resource/rhsm_repo_spec.rb +6 -0
- data/spec/unit/resource/service_spec.rb +1 -1
- data/spec/unit/resource/template_spec.rb +2 -2
- data/spec/unit/resource/windows_env_spec.rb +1 -1
- data/spec/unit/resource/windows_service_spec.rb +7 -7
- data/spec/unit/resource/windows_task_spec.rb +2 -2
- data/spec/unit/resource/windows_uac_spec.rb +2 -2
- data/spec/unit/resource/yum_package_spec.rb +1 -1
- data/spec/unit/resource_collection/resource_list_spec.rb +1 -1
- data/spec/unit/resource_collection/resource_set_spec.rb +7 -7
- data/spec/unit/resource_collection/stepable_iterator_spec.rb +2 -2
- data/spec/unit/resource_collection_spec.rb +4 -4
- data/spec/unit/resource_definition_spec.rb +2 -2
- data/spec/unit/resource_inspector_spec.rb +1 -1
- data/spec/unit/resource_reporter_spec.rb +6 -4
- data/spec/unit/resource_spec.rb +21 -21
- data/spec/unit/role_spec.rb +2 -2
- data/spec/unit/run_context/cookbook_compiler_spec.rb +24 -24
- data/spec/unit/run_list/run_list_expansion_spec.rb +9 -6
- data/spec/unit/run_list_spec.rb +1 -1
- data/spec/unit/runner_spec.rb +3 -3
- data/spec/unit/search/query_spec.rb +3 -2
- data/spec/unit/shell/model_wrapper_spec.rb +1 -1
- data/spec/unit/shell/shell_session_spec.rb +8 -11
- data/spec/unit/shell_spec.rb +1 -2
- data/spec/unit/user_spec.rb +4 -4
- data/spec/unit/user_v1_spec.rb +3 -3
- data/spec/unit/util/backup_spec.rb +1 -1
- data/spec/unit/util/editor_spec.rb +1 -1
- data/spec/unit/util/powershell/ps_credential_spec.rb +3 -2
- data/spec/unit/util/threaded_job_queue_spec.rb +2 -2
- data/spec/unit/version_class_spec.rb +4 -4
- data/spec/unit/win32/registry_spec.rb +5 -5
- data/spec/unit/win32/security_spec.rb +2 -1
- data/tasks/bin/run_external_test +1 -1
- data/tasks/docs.rb +78 -61
- data/tasks/rspec.rb +1 -1
- metadata +5 -33
- data/lib/.DS_Store +0 -0
- data/lib/chef/.DS_Store +0 -0
- data/lib/chef/dsl/.DS_Store +0 -0
- data/lib/chef/knife/.DS_Store +0 -0
- data/lib/chef/mixin/.DS_Store +0 -0
- data/lib/chef/nil_argument.rb +0 -3
- data/lib/chef/provider/.DS_Store +0 -0
- data/lib/chef/provider/package/.DS_Store +0 -0
- data/lib/chef/provider/package/freebsd/.DS_Store +0 -0
- data/lib/chef/resource/.DS_Store +0 -0
- data/lib/chef/resource/file/.DS_Store +0 -0
- data/spec/.DS_Store +0 -0
- data/spec/data/.DS_Store +0 -0
- data/spec/data/cookbooks/.DS_Store +0 -0
- data/spec/data/cookbooks/java/.DS_Store +0 -0
- data/spec/data/cookbooks/java/files/.DS_Store +0 -0
- data/spec/data/mac_users/.DS_Store +0 -0
- data/spec/data/nodes/Tim.local.json +0 -3
- data/spec/data/nodes/Tims-MBP.local.json +0 -3
- data/spec/data/run_context/.DS_Store +0 -0
- data/spec/data/run_context/cookbooks/.DS_Store +0 -0
- data/spec/functional/.DS_Store +0 -0
- data/spec/functional/resource/.DS_Store +0 -0
- data/spec/functional/util/.DS_Store +0 -0
- data/spec/integration/.DS_Store +0 -0
- data/spec/stress/.DS_Store +0 -0
- data/spec/support/.DS_Store +0 -0
- data/spec/unit/.DS_Store +0 -0
- data/tasks/.DS_Store +0 -0
@@ -69,11 +69,11 @@ class Chef
|
|
69
69
|
if @name_args.size > 1
|
70
70
|
# Check for nested lists and create a single plain one
|
71
71
|
entries = @name_args[1..-1].map do |entry|
|
72
|
-
entry.split(",").map
|
72
|
+
entry.split(",").map(&:strip)
|
73
73
|
end.flatten
|
74
74
|
else
|
75
75
|
# Convert to array and remove the extra spaces
|
76
|
-
entries = @name_args[1].split(",").map
|
76
|
+
entries = @name_args[1].split(",").map(&:strip)
|
77
77
|
end
|
78
78
|
|
79
79
|
add_to_env_run_list(role, environment, entries, config[:after])
|
@@ -51,11 +51,11 @@ class Chef
|
|
51
51
|
elsif @name_args.size > 1
|
52
52
|
# Check for nested lists and create a single plain one
|
53
53
|
entries = @name_args[1..-1].map do |entry|
|
54
|
-
entry.split(",").map
|
54
|
+
entry.split(",").map(&:strip)
|
55
55
|
end.flatten
|
56
56
|
else
|
57
57
|
# Convert to array and remove the extra spaces
|
58
|
-
entries = @name_args[1].split(",").map
|
58
|
+
entries = @name_args[1].split(",").map(&:strip)
|
59
59
|
end
|
60
60
|
|
61
61
|
set_env_run_list(role, environment, entries )
|
data/lib/chef/knife/search.rb
CHANGED
@@ -83,7 +83,7 @@ class Chef
|
|
83
83
|
result_items = []
|
84
84
|
result_count = 0
|
85
85
|
|
86
|
-
search_args =
|
86
|
+
search_args = {}
|
87
87
|
search_args[:fuzz] = true
|
88
88
|
search_args[:start] = config[:start] if config[:start]
|
89
89
|
search_args[:rows] = config[:rows] if config[:rows]
|
@@ -97,7 +97,7 @@ class Chef
|
|
97
97
|
|
98
98
|
begin
|
99
99
|
q.search(@type, @query, search_args) do |item|
|
100
|
-
formatted_item =
|
100
|
+
formatted_item = {}
|
101
101
|
if config[:id_only]
|
102
102
|
formatted_item = format_for_display({ "id" => item["__display_name"] })
|
103
103
|
elsif item.is_a?(Hash)
|
@@ -169,7 +169,7 @@ class Chef
|
|
169
169
|
# and the path is an array with the path elements as strings (in order)
|
170
170
|
# See lib/chef/search/query.rb for more examples of this.
|
171
171
|
def create_result_filter(filter_string)
|
172
|
-
final_filter =
|
172
|
+
final_filter = {}
|
173
173
|
filter_string.delete!(" ")
|
174
174
|
filters = filter_string.split(",")
|
175
175
|
filters.each do |f|
|
@@ -180,7 +180,7 @@ class Chef
|
|
180
180
|
end
|
181
181
|
|
182
182
|
def create_result_filter_from_attributes(filter_array)
|
183
|
-
final_filter =
|
183
|
+
final_filter = {}
|
184
184
|
filter_array.each do |f|
|
185
185
|
final_filter[f] = f.split(".")
|
186
186
|
end
|
data/lib/chef/knife/ssh.rb
CHANGED
@@ -185,8 +185,8 @@ class Chef
|
|
185
185
|
if fqdns.count != fqdns.uniq.count
|
186
186
|
duplicated_fqdns = fqdns.uniq
|
187
187
|
ui.send(config[:duplicated_fqdns],
|
188
|
-
"SSH #{duplicated_fqdns.count > 1 ?
|
189
|
-
"duplicated: #{duplicated_fqdns.join(
|
188
|
+
"SSH #{duplicated_fqdns.count > 1 ? "nodes are" : "node is"} " +
|
189
|
+
"duplicated: #{duplicated_fqdns.join(",")}")
|
190
190
|
exit 10 if config[:duplicated_fqdns] == :fatal
|
191
191
|
end
|
192
192
|
end
|
@@ -225,7 +225,7 @@ class Chef
|
|
225
225
|
end
|
226
226
|
|
227
227
|
def search_nodes
|
228
|
-
list =
|
228
|
+
list = []
|
229
229
|
query = Chef::Search::Query.new
|
230
230
|
required_attributes = { fqdn: ["fqdn"], cloud: ["cloud"] }
|
231
231
|
|
@@ -245,10 +245,12 @@ class Chef
|
|
245
245
|
# we should skip the loop to next iteration if the item
|
246
246
|
# returned by the search is nil
|
247
247
|
next if item.nil?
|
248
|
+
|
248
249
|
# next if we couldn't find the specified attribute in the
|
249
250
|
# returned node object
|
250
251
|
host = get_ssh_attribute(item)
|
251
252
|
next if host.nil?
|
253
|
+
|
252
254
|
prefix = get_prefix_attribute(item)
|
253
255
|
ssh_port = item.dig("cloud", "public_ssh_port")
|
254
256
|
srv = [host, ssh_port, prefix]
|
@@ -288,7 +290,7 @@ class Chef
|
|
288
290
|
port ||= ssh_config[:port]
|
289
291
|
opts[:port] = port unless port.nil?
|
290
292
|
opts[:logger] = Chef::Log.with_child(subsystem: "net/ssh") if Chef::Log.level == :trace
|
291
|
-
|
293
|
+
unless config[:host_key_verify]
|
292
294
|
opts[:verify_host_key] = false
|
293
295
|
opts[:user_known_hosts_file] = "/dev/null"
|
294
296
|
end
|
@@ -358,11 +360,12 @@ class Chef
|
|
358
360
|
command.force_encoding("binary") if command.respond_to?(:force_encoding)
|
359
361
|
subsession.open_channel do |chan|
|
360
362
|
if config[:on_error] && exit_status != 0
|
361
|
-
chan.close
|
363
|
+
chan.close
|
362
364
|
else
|
363
365
|
chan.request_pty
|
364
366
|
chan.exec command do |ch, success|
|
365
367
|
raise ArgumentError, "Cannot execute #{command}" unless success
|
368
|
+
|
366
369
|
ch.on_data do |ichannel, data|
|
367
370
|
print_data(ichannel.connection[:prefix], data)
|
368
371
|
if data =~ /^knife sudo password: /
|
@@ -394,7 +397,7 @@ class Chef
|
|
394
397
|
# line is input.
|
395
398
|
def read_line
|
396
399
|
loop do
|
397
|
-
command = reader.readline("#{ui.color(
|
400
|
+
command = reader.readline("#{ui.color("knife-ssh>", :bold)} ", true)
|
398
401
|
|
399
402
|
if command.nil?
|
400
403
|
command = "exit"
|
@@ -430,7 +433,7 @@ class Chef
|
|
430
433
|
break
|
431
434
|
when /^on (.+?); (.+)$/
|
432
435
|
raw_list = $1.split(" ")
|
433
|
-
server_list =
|
436
|
+
server_list = []
|
434
437
|
session.servers.each do |session_server|
|
435
438
|
server_list << session_server if raw_list.include?(session_server.host)
|
436
439
|
end
|
@@ -483,7 +486,7 @@ class Chef
|
|
483
486
|
end.join(" \\; ")
|
484
487
|
end
|
485
488
|
|
486
|
-
tmux_name = "'knife ssh #{@name_args[0].tr(
|
489
|
+
tmux_name = "'knife ssh #{@name_args[0].tr(":.", "=-")}'"
|
487
490
|
begin
|
488
491
|
server = session.servers_for.first
|
489
492
|
cmd = ["tmux new-session -d -s #{tmux_name}",
|
@@ -545,6 +548,7 @@ class Chef
|
|
545
548
|
|
546
549
|
def get_stripped_unfrozen_value(value)
|
547
550
|
return nil if value.nil?
|
551
|
+
|
548
552
|
value.strip
|
549
553
|
end
|
550
554
|
|
@@ -594,7 +598,7 @@ class Chef
|
|
594
598
|
@password = config[:ssh_password] if config[:ssh_password]
|
595
599
|
|
596
600
|
# If a password was not given, check for SSH identity file.
|
597
|
-
|
601
|
+
unless @password
|
598
602
|
configure_ssh_identity_file
|
599
603
|
configure_ssh_gateway_identity
|
600
604
|
end
|
@@ -34,11 +34,11 @@ class Chef
|
|
34
34
|
category "supermarket"
|
35
35
|
|
36
36
|
option :no_deps,
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
37
|
+
short: "-D",
|
38
|
+
long: "--skip-dependencies",
|
39
|
+
boolean: true,
|
40
|
+
default: false,
|
41
|
+
description: "Skips automatic dependency installation."
|
42
42
|
|
43
43
|
option :cookbook_path,
|
44
44
|
short: "-o PATH:PATH",
|
@@ -113,7 +113,8 @@ class Chef
|
|
113
113
|
data = noauth_rest.get("#{config[:supermarket_site]}/api/v1/cookbooks/#{@name_args[0]}")
|
114
114
|
data["category"]
|
115
115
|
rescue => e
|
116
|
-
return "Other" if e.
|
116
|
+
return "Other" if e.is_a?(Net::HTTPClientException) && e.response.code == "404"
|
117
|
+
|
117
118
|
ui.fatal("Unable to reach Supermarket: #{e.message}. Increase log verbosity (-VV) for more information.")
|
118
119
|
Chef::Log.trace("\n#{e.backtrace.join("\n")}")
|
119
120
|
exit(1)
|
@@ -149,7 +150,7 @@ class Chef
|
|
149
150
|
end
|
150
151
|
|
151
152
|
def tar_cmd
|
152
|
-
|
153
|
+
unless @tar_cmd
|
153
154
|
@tar_cmd = "tar"
|
154
155
|
begin
|
155
156
|
# Unix and Mac only - prefer gnutar
|
@@ -45,7 +45,7 @@ class Chef
|
|
45
45
|
when 1
|
46
46
|
noauth_rest.get("#{supermarket_uri}/cookbooks/#{@name_args[0]}")
|
47
47
|
when 2
|
48
|
-
noauth_rest.get("#{supermarket_uri}/cookbooks/#{@name_args[0]}/versions/#{name_args[1].tr(
|
48
|
+
noauth_rest.get("#{supermarket_uri}/cookbooks/#{@name_args[0]}/versions/#{name_args[1].tr(".", "_")}")
|
49
49
|
end
|
50
50
|
end
|
51
51
|
|
@@ -50,6 +50,7 @@ class Chef
|
|
50
50
|
rest.delete "#{config[:supermarket_site]}/api/v1/cookbooks/#{@name_args[0]}"
|
51
51
|
rescue Net::HTTPClientException => e
|
52
52
|
raise e unless e.message =~ /Forbidden/
|
53
|
+
|
53
54
|
ui.error "Forbidden: You must be the maintainer of #{@cookbook_name} to unshare it."
|
54
55
|
exit 1
|
55
56
|
end
|
data/lib/chef/knife/xargs.rb
CHANGED
@@ -183,7 +183,7 @@ class Chef
|
|
183
183
|
end
|
184
184
|
|
185
185
|
# Create the command
|
186
|
-
paths = tempfiles.keys.map
|
186
|
+
paths = tempfiles.keys.map(&:path).join(" ")
|
187
187
|
if config[:replace_all]
|
188
188
|
final_command = command.gsub(config[:replace_all], paths)
|
189
189
|
elsif config[:replace_first]
|
@@ -197,7 +197,7 @@ class Chef
|
|
197
197
|
|
198
198
|
def destroy_tempfiles(tempfiles)
|
199
199
|
# Unlink the files now that we're done with them
|
200
|
-
tempfiles.each_key
|
200
|
+
tempfiles.each_key(&:close!)
|
201
201
|
end
|
202
202
|
|
203
203
|
def xargs_files(command, tempfiles)
|
data/lib/chef/log/syslog.rb
CHANGED
@@ -36,11 +36,11 @@ class Chef
|
|
36
36
|
def initialize(program_name = "#{Chef::Dist::CLIENT}", facility = ::Syslog::LOG_DAEMON, logopts = nil)
|
37
37
|
super
|
38
38
|
return if defined? ::Logger::Syslog::SYSLOG
|
39
|
+
|
39
40
|
::Logger::Syslog.const_set :SYSLOG, SYSLOG
|
40
41
|
end
|
41
42
|
|
42
|
-
def close
|
43
|
-
end
|
43
|
+
def close; end
|
44
44
|
end
|
45
45
|
end
|
46
46
|
end
|
data/lib/chef/log/winevt.rb
CHANGED
data/lib/chef/mash.rb
CHANGED
@@ -72,7 +72,7 @@ class Mash < Hash
|
|
72
72
|
super
|
73
73
|
# Handle nested values
|
74
74
|
each do |k, v|
|
75
|
-
if v.
|
75
|
+
if v.is_a?(Mash) || v.is_a?(Array)
|
76
76
|
self[k] = v.dup
|
77
77
|
end
|
78
78
|
end
|
@@ -210,7 +210,7 @@ class Mash < Hash
|
|
210
210
|
#
|
211
211
|
# @api private
|
212
212
|
def convert_key(key)
|
213
|
-
key.
|
213
|
+
key.is_a?(Symbol) ? key.to_s : key
|
214
214
|
end
|
215
215
|
|
216
216
|
# @param value<Object> The value to convert.
|
@@ -35,7 +35,7 @@ class Chef
|
|
35
35
|
return nil if exception.response.code != "406" || exception.response["x-ops-server-api-version"].nil?
|
36
36
|
|
37
37
|
# intersection of versions the server and client support, will be of length zero if no intersection
|
38
|
-
server_supported_client_versions =
|
38
|
+
server_supported_client_versions = []
|
39
39
|
|
40
40
|
header = Chef::JSONCompat.from_json(exception.response["x-ops-server-api-version"])
|
41
41
|
min_server_version = Integer(header["min_version"])
|
data/lib/chef/mixin/checksum.rb
CHANGED
@@ -25,7 +25,7 @@ class Chef
|
|
25
25
|
def convert_to_class_name(str)
|
26
26
|
str = normalize_snake_case_name(str)
|
27
27
|
rname = nil
|
28
|
-
regexp =
|
28
|
+
regexp = /^(.+?)(_(.+))?$/
|
29
29
|
|
30
30
|
mn = str.match(regexp)
|
31
31
|
if mn
|
@@ -112,6 +112,7 @@ class Chef
|
|
112
112
|
constant = constant.ancestors.inject do |const, ancestor|
|
113
113
|
break const if ancestor == Object
|
114
114
|
break ancestor if ancestor.const_defined?(name, false)
|
115
|
+
|
115
116
|
const
|
116
117
|
end
|
117
118
|
|
@@ -29,11 +29,11 @@ class Chef
|
|
29
29
|
# === Returns
|
30
30
|
# The created file_path.
|
31
31
|
def create_path(file_path)
|
32
|
-
unless file_path.
|
32
|
+
unless file_path.is_a?(String) || file_path.is_a?(Array)
|
33
33
|
raise ArgumentError, "file_path must be a string or an array!"
|
34
34
|
end
|
35
35
|
|
36
|
-
if file_path.
|
36
|
+
if file_path.is_a?(String)
|
37
37
|
file_path = File.expand_path(file_path).split(File::SEPARATOR)
|
38
38
|
file_path.shift if file_path[0] == ""
|
39
39
|
# Check if path starts with a separator or drive letter (Windows)
|
@@ -30,8 +30,8 @@ class Chef
|
|
30
30
|
extend self
|
31
31
|
|
32
32
|
def merge(first, second)
|
33
|
-
first = Mash.new(first) unless first.
|
34
|
-
second = Mash.new(second) unless second.
|
33
|
+
first = Mash.new(first) unless first.is_a?(Mash)
|
34
|
+
second = Mash.new(second) unless second.is_a?(Mash)
|
35
35
|
|
36
36
|
DeepMerge.deep_merge(second, first)
|
37
37
|
end
|
@@ -62,7 +62,7 @@ class Chef
|
|
62
62
|
when nil
|
63
63
|
dest
|
64
64
|
when Hash
|
65
|
-
if dest.
|
65
|
+
if dest.is_a?(Hash)
|
66
66
|
source.each do |src_key, src_value|
|
67
67
|
if dest.key?(src_key)
|
68
68
|
dest[src_key] = deep_merge!(src_value, dest[src_key])
|
@@ -74,7 +74,7 @@ class Chef
|
|
74
74
|
dest = source
|
75
75
|
end
|
76
76
|
when Array
|
77
|
-
if dest.
|
77
|
+
if dest.is_a?(Array)
|
78
78
|
dest |= source
|
79
79
|
else
|
80
80
|
dest = source
|
@@ -103,7 +103,7 @@ class Chef
|
|
103
103
|
# values when there is a conflict.
|
104
104
|
def hash_only_merge!(merge_onto, merge_with)
|
105
105
|
# If there are two Hashes, recursively merge.
|
106
|
-
if merge_onto.
|
106
|
+
if merge_onto.is_a?(Hash) && merge_with.is_a?(Hash)
|
107
107
|
merge_with.each do |key, merge_with_value|
|
108
108
|
value =
|
109
109
|
if merge_onto.key?(key)
|
@@ -35,6 +35,7 @@ class Chef
|
|
35
35
|
def initialize(new_resource, run_context)
|
36
36
|
super
|
37
37
|
return if new_resource.package_name.is_a?(Array)
|
38
|
+
|
38
39
|
# if we're passed something that looks like a filesystem path, with no source, use it
|
39
40
|
# - require at least one '/' in the path to avoid gem_package "foo" breaking if a file named 'foo' exists in the cwd
|
40
41
|
if new_resource.source.nil? && new_resource.package_name.match(/#{::File::SEPARATOR}/) && ::File.exist?(new_resource.package_name)
|
@@ -40,6 +40,7 @@ class Chef
|
|
40
40
|
# They could provide us a user name or a UID
|
41
41
|
if provided_user
|
42
42
|
return provided_user if provided_user.is_a? Integer
|
43
|
+
|
43
44
|
return Etc.getpwnam(provided_user).uid
|
44
45
|
end
|
45
46
|
|
@@ -67,7 +68,7 @@ class Chef
|
|
67
68
|
owner = ::File.stat(brew_path).uid
|
68
69
|
else
|
69
70
|
raise Chef::Exceptions::CannotDetermineHomebrewOwner,
|
70
|
-
|
71
|
+
'Could not find the "brew" executable in /usr/local/bin or anywhere on the path.'
|
71
72
|
end
|
72
73
|
|
73
74
|
Chef::Log.debug "Found Homebrew owner #{Etc.getpwuid(owner).name}; executing `brew` commands as them"
|
@@ -46,6 +46,7 @@ class Chef
|
|
46
46
|
# Check if the dhparam.pem file exists
|
47
47
|
# Verify the dhparam.pem file contains a key
|
48
48
|
return false unless ::File.exist?(dhparam_pem_path)
|
49
|
+
|
49
50
|
dhparam = ::OpenSSL::PKey::DH.new File.read(dhparam_pem_path)
|
50
51
|
dhparam.params_ok?
|
51
52
|
end
|
@@ -158,6 +159,7 @@ class Chef
|
|
158
159
|
def gen_ec_priv_key(curve)
|
159
160
|
raise TypeError, "curve must be a string" unless curve.is_a?(String)
|
160
161
|
raise ArgumentError, "Specified curve is not available on this system" unless curve == "prime256v1" || curve == "secp384r1" || curve == "secp521r1"
|
162
|
+
|
161
163
|
::OpenSSL::PKey::EC.new(curve).generate_key
|
162
164
|
end
|
163
165
|
|
@@ -262,7 +264,7 @@ class Chef
|
|
262
264
|
cert = ::OpenSSL::X509::Certificate.new
|
263
265
|
ef = ::OpenSSL::X509::ExtensionFactory.new
|
264
266
|
|
265
|
-
cert.serial = gen_serial
|
267
|
+
cert.serial = gen_serial
|
266
268
|
cert.version = 2
|
267
269
|
cert.subject = request.subject
|
268
270
|
cert.public_key = request.public_key
|
@@ -275,6 +277,7 @@ class Chef
|
|
275
277
|
extension << ef.create_extension("basicConstraints", "CA:TRUE", true)
|
276
278
|
else
|
277
279
|
raise TypeError, "info['issuer'] must be a Ruby OpenSSL::X509::Certificate object" unless info["issuer"].is_a?(::OpenSSL::X509::Certificate)
|
280
|
+
|
278
281
|
cert.issuer = info["issuer"].subject
|
279
282
|
ef.issuer_certificate = info["issuer"]
|
280
283
|
end
|
@@ -284,7 +287,7 @@ class Chef
|
|
284
287
|
cert.extensions = extension
|
285
288
|
cert.add_extension ef.create_extension("subjectKeyIdentifier", "hash")
|
286
289
|
cert.add_extension ef.create_extension("authorityKeyIdentifier",
|
287
|
-
|
290
|
+
"keyid:always,issuer:always")
|
288
291
|
|
289
292
|
cert.sign(key, ::OpenSSL::Digest::SHA256.new)
|
290
293
|
cert
|
@@ -315,7 +318,7 @@ class Chef
|
|
315
318
|
|
316
319
|
crl.add_extension ::OpenSSL::X509::Extension.new("crlNumber", ::OpenSSL::ASN1::Integer(1))
|
317
320
|
crl.add_extension ef.create_extension("authorityKeyIdentifier",
|
318
|
-
|
321
|
+
"keyid:always,issuer:always")
|
319
322
|
crl.sign(ca_private_key, ::OpenSSL::Digest::SHA256.new)
|
320
323
|
crl
|
321
324
|
end
|
@@ -325,6 +328,7 @@ class Chef
|
|
325
328
|
# @return [Integer]
|
326
329
|
def get_next_crl_number(crl)
|
327
330
|
raise TypeError, "crl must be a Ruby OpenSSL::X509::CRL object" unless crl.is_a?(::OpenSSL::X509::CRL)
|
331
|
+
|
328
332
|
crlnum = 1
|
329
333
|
crl.extensions.each do |e|
|
330
334
|
crlnum = e.value if e.oid == "crlNumber"
|
@@ -361,7 +365,7 @@ class Chef
|
|
361
365
|
revoked.time = Time.now
|
362
366
|
|
363
367
|
ext = ::OpenSSL::X509::Extension.new("CRLReason",
|
364
|
-
|
368
|
+
::OpenSSL::ASN1::Enumerated(revoke_info["reason"]))
|
365
369
|
revoked.add_extension(ext)
|
366
370
|
crl.add_revoked(revoked)
|
367
371
|
|
@@ -391,9 +395,9 @@ class Chef
|
|
391
395
|
ef.issuer_certificate = info["issuer"]
|
392
396
|
|
393
397
|
crl.extensions = [ ::OpenSSL::X509::Extension.new("crlNumber",
|
394
|
-
|
398
|
+
::OpenSSL::ASN1::Integer(get_next_crl_number(crl)))]
|
395
399
|
crl.add_extension ef.create_extension("authorityKeyIdentifier",
|
396
|
-
|
400
|
+
"keyid:always,issuer:always")
|
397
401
|
crl.sign(ca_private_key, ::OpenSSL::Digest::SHA256.new)
|
398
402
|
crl
|
399
403
|
end
|