puppet 3.8.7-x64-mingw32 → 4.0.0.rc1-x64-mingw32
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of puppet might be problematic. Click here for more details.
- data/CONTRIBUTING.md +26 -11
- data/Gemfile +13 -25
- data/LICENSE +1 -1
- data/Rakefile +9 -0
- data/bin/puppet +7 -6
- data/conf/auth.conf +30 -26
- data/conf/environment.conf +16 -0
- data/conf/fileserver.conf +2 -2
- data/conf/puppet.conf +6 -0
- data/ext/README.environment +1 -1
- data/ext/build_defaults.yaml +16 -7
- data/ext/debian/control +5 -5
- data/ext/debian/puppet-common.manpages +0 -5
- data/ext/debian/puppet-common.postinst +3 -3
- data/ext/debian/puppet.init +23 -12
- data/ext/debian/puppet.logrotate +1 -2
- data/ext/debian/puppetmaster-common.postinst +6 -0
- data/ext/debian/puppetmaster.init +5 -5
- data/ext/debian/rules +4 -1
- data/ext/debian/vim-puppet.dirs +2 -0
- data/ext/debian/vim-puppet.yaml +2 -0
- data/ext/emacs/puppet-mode.el +0 -1
- data/ext/gentoo/conf.d/puppet +1 -1
- data/ext/gentoo/conf.d/puppetmaster +1 -1
- data/ext/nagios/check_puppet.rb +1 -1
- data/ext/project_data.yaml +6 -7
- data/ext/puppet-nm-dispatcher +13 -0
- data/ext/puppet-test +0 -66
- data/ext/puppetlisten/puppetlisten.rb +7 -5
- data/ext/rack/config.ru +12 -5
- data/ext/redhat/client.init +3 -3
- data/ext/redhat/logrotate +1 -2
- data/ext/redhat/puppet.spec.erb +12 -8
- data/ext/redhat/server.init +1 -1
- data/ext/regexp_nodes/regexp_nodes.rb +1 -1
- data/ext/solaris/smf/svc-puppetd +1 -1
- data/ext/solaris/smf/svc-puppetmasterd +1 -1
- data/ext/suse/client.init +1 -1
- data/ext/suse/server.init +1 -1
- data/ext/systemd/puppet.service +1 -3
- data/ext/vim/syntax/puppet.vim +1 -1
- data/ext/windows/service/daemon.rb +19 -2
- data/install.rb +63 -7
- data/lib/hiera/puppet_function.rb +7 -18
- data/lib/hiera/scope.rb +4 -1
- data/lib/puppet.rb +19 -51
- data/lib/puppet/agent.rb +2 -6
- data/lib/puppet/application.rb +14 -65
- data/lib/puppet/application/agent.rb +7 -56
- data/lib/puppet/application/apply.rb +1 -6
- data/lib/puppet/application/ca.rb +5 -0
- data/lib/puppet/application/cert.rb +7 -3
- data/lib/puppet/application/certificate.rb +2 -0
- data/lib/puppet/application/device.rb +10 -36
- data/lib/puppet/application/doc.rb +16 -63
- data/lib/puppet/application/epp.rb +5 -0
- data/lib/puppet/application/face_base.rb +24 -5
- data/lib/puppet/application/master.rb +2 -5
- data/lib/puppet/application/resource.rb +17 -17
- data/lib/puppet/application_support.rb +57 -0
- data/lib/puppet/configurer.rb +3 -7
- data/lib/puppet/configurer/downloader.rb +1 -0
- data/lib/puppet/configurer/fact_handler.rb +1 -1
- data/lib/puppet/daemon.rb +6 -15
- data/lib/puppet/data_providers.rb +28 -0
- data/lib/puppet/data_providers/data_adapter.rb +86 -0
- data/lib/puppet/data_providers/data_function_support.rb +32 -0
- data/lib/puppet/data_providers/function_env_data_provider.rb +28 -0
- data/lib/puppet/data_providers/function_module_data_provider.rb +44 -0
- data/lib/puppet/defaults.rb +135 -530
- data/lib/puppet/environments.rb +10 -156
- data/lib/puppet/error.rb +4 -30
- data/lib/puppet/external/nagios/base.rb +2 -2
- data/lib/puppet/external/pson/common.rb +2 -17
- data/lib/puppet/external/pson/pure/generator.rb +1 -0
- data/lib/puppet/external/pson/pure/parser.rb +0 -11
- data/lib/puppet/face/catalog.rb +4 -4
- data/lib/puppet/face/certificate.rb +2 -3
- data/lib/puppet/face/certificate_request.rb +4 -3
- data/lib/puppet/face/certificate_revocation_list.rb +5 -9
- data/lib/puppet/face/config.rb +2 -2
- data/lib/puppet/face/epp.rb +479 -0
- data/lib/puppet/face/facts.rb +6 -49
- data/lib/puppet/face/file.rb +2 -2
- data/lib/puppet/face/file/download.rb +1 -2
- data/lib/puppet/face/help.rb +2 -3
- data/lib/puppet/face/module/build.rb +5 -5
- data/lib/puppet/face/module/changes.rb +1 -1
- data/lib/puppet/face/module/generate.rb +6 -6
- data/lib/puppet/face/module/install.rb +16 -16
- data/lib/puppet/face/module/list.rb +9 -9
- data/lib/puppet/face/module/uninstall.rb +5 -5
- data/lib/puppet/face/module/upgrade.rb +3 -3
- data/lib/puppet/face/node.rb +3 -4
- data/lib/puppet/face/node/clean.rb +5 -68
- data/lib/puppet/face/parser.rb +6 -8
- data/lib/puppet/face/report.rb +4 -4
- data/lib/puppet/face/resource.rb +1 -1
- data/lib/puppet/face/resource_type.rb +7 -4
- data/lib/puppet/face/status.rb +6 -12
- data/lib/puppet/feature/base.rb +0 -7
- data/lib/puppet/file_bucket/dipper.rb +1 -2
- data/lib/puppet/file_bucket/file.rb +12 -25
- data/lib/puppet/file_serving/base.rb +1 -11
- data/lib/puppet/file_serving/content.rb +5 -7
- data/lib/puppet/file_serving/metadata.rb +4 -61
- data/lib/puppet/file_serving/mount/pluginfacts.rb +1 -1
- data/lib/puppet/file_serving/mount/plugins.rb +1 -1
- data/lib/puppet/file_serving/terminus_helper.rb +16 -5
- data/lib/puppet/file_system.rb +6 -22
- data/lib/puppet/file_system/file_impl.rb +0 -4
- data/lib/puppet/file_system/memory_file.rb +0 -5
- data/lib/puppet/file_system/memory_impl.rb +0 -4
- data/lib/puppet/file_system/{file19.rb → posix.rb} +1 -1
- data/lib/puppet/file_system/{file19windows.rb → windows.rb} +2 -10
- data/lib/puppet/forge/repository.rb +12 -8
- data/lib/puppet/functions.rb +17 -51
- data/lib/puppet/functions/assert_type.rb +7 -7
- data/lib/puppet/functions/each.rb +1 -3
- data/lib/puppet/functions/epp.rb +3 -3
- data/lib/puppet/functions/filter.rb +3 -5
- data/lib/puppet/functions/hiera.rb +2 -23
- data/lib/puppet/functions/hiera_array.rb +3 -25
- data/lib/puppet/functions/hiera_hash.rb +2 -26
- data/lib/puppet/functions/hiera_include.rb +4 -37
- data/lib/puppet/functions/inline_epp.rb +1 -2
- data/lib/puppet/functions/lookup.rb +234 -0
- data/lib/puppet/functions/map.rb +1 -3
- data/lib/puppet/functions/match.rb +5 -5
- data/lib/puppet/functions/reduce.rb +1 -3
- data/lib/puppet/functions/regsubst.rb +79 -0
- data/lib/puppet/functions/scanf.rb +4 -3
- data/lib/puppet/functions/slice.rb +1 -3
- data/lib/puppet/functions/split.rb +47 -0
- data/lib/puppet/functions/with.rb +1 -1
- data/lib/puppet/graph/relationship_graph.rb +41 -13
- data/lib/puppet/graph/simple_graph.rb +6 -10
- data/lib/puppet/indirector/catalog/compiler.rb +0 -2
- data/lib/puppet/indirector/catalog/static_compiler.rb +4 -5
- data/lib/puppet/indirector/direct_file_server.rb +1 -3
- data/lib/puppet/indirector/face.rb +11 -2
- data/lib/puppet/indirector/facts/facter.rb +5 -1
- data/lib/puppet/indirector/facts/network_device.rb +5 -2
- data/lib/puppet/indirector/facts/store_configs.rb +3 -0
- data/lib/puppet/indirector/facts/yaml.rb +4 -0
- data/lib/puppet/indirector/file_metadata/file.rb +0 -15
- data/lib/puppet/indirector/file_server.rb +2 -16
- data/lib/puppet/indirector/hiera.rb +39 -1
- data/lib/puppet/indirector/indirection.rb +2 -9
- data/lib/puppet/indirector/node/ldap.rb +1 -1
- data/lib/puppet/indirector/request.rb +21 -81
- data/lib/puppet/indirector/resource/ral.rb +1 -2
- data/lib/puppet/indirector/resource/store_configs.rb +1 -2
- data/lib/puppet/indirector/resource_type/parser.rb +1 -1
- data/lib/puppet/indirector/rest.rb +21 -33
- data/lib/puppet/interface.rb +0 -7
- data/lib/puppet/interface/action_builder.rb +1 -1
- data/lib/puppet/interface/action_manager.rb +9 -13
- data/lib/puppet/interface/face_collection.rb +2 -2
- data/lib/puppet/interface/option_builder.rb +1 -3
- data/lib/puppet/metatype/manager.rb +1 -7
- data/lib/puppet/module.rb +42 -35
- data/lib/puppet/module_tool.rb +5 -7
- data/lib/puppet/module_tool/applications/application.rb +3 -10
- data/lib/puppet/module_tool/applications/installer.rb +13 -15
- data/lib/puppet/module_tool/applications/unpacker.rb +1 -1
- data/lib/puppet/module_tool/applications/upgrader.rb +9 -11
- data/lib/puppet/module_tool/contents_description.rb +17 -13
- data/lib/puppet/module_tool/installed_modules.rb +4 -6
- data/lib/puppet/module_tool/metadata.rb +3 -14
- data/lib/puppet/module_tool/skeleton/templates/generator/Gemfile +3 -3
- data/lib/puppet/module_tool/skeleton/templates/generator/Rakefile +0 -1
- data/lib/puppet/module_tool/skeleton/templates/generator/manifests/init.pp.erb +1 -1
- data/lib/puppet/module_tool/tar/gnu.rb +1 -1
- data/lib/puppet/module_tool/tar/mini.rb +2 -2
- data/lib/puppet/network/auth_config_parser.rb +2 -2
- data/lib/puppet/network/authconfig.rb +32 -16
- data/lib/puppet/network/format_handler.rb +7 -7
- data/lib/puppet/network/format_support.rb +4 -0
- data/lib/puppet/network/formats.rb +6 -62
- data/lib/puppet/network/http.rb +12 -2
- data/lib/puppet/network/http/api.rb +42 -0
- data/lib/puppet/network/http/api/ca.rb +2 -0
- data/lib/puppet/network/http/api/ca/v1.rb +11 -0
- data/lib/puppet/network/http/api/{v1.rb → indirected_routes.rb} +57 -29
- data/lib/puppet/network/http/api/indirection_type.rb +32 -0
- data/lib/puppet/network/http/api/master.rb +2 -0
- data/lib/puppet/network/http/api/master/v3.rb +22 -0
- data/lib/puppet/network/http/api/master/v3/authorization.rb +18 -0
- data/lib/puppet/network/http/api/{v2 → master/v3}/environments.rb +2 -2
- data/lib/puppet/network/http/compression.rb +3 -5
- data/lib/puppet/network/http/connection.rb +1 -8
- data/lib/puppet/network/http/factory.rb +2 -3
- data/lib/puppet/network/http/handler.rb +3 -11
- data/lib/puppet/network/http/rack/rest.rb +4 -4
- data/lib/puppet/network/http/request.rb +4 -4
- data/lib/puppet/network/http/webrick.rb +1 -6
- data/lib/puppet/network/http/webrick/rest.rb +15 -8
- data/lib/puppet/network/resolver.rb +2 -2
- data/lib/puppet/network/rights.rb +2 -2
- data/lib/puppet/node.rb +2 -29
- data/lib/puppet/node/environment.rb +92 -184
- data/lib/puppet/node/facts.rb +22 -44
- data/lib/puppet/parameter.rb +3 -16
- data/lib/puppet/parameter/value.rb +1 -3
- data/lib/puppet/parameter/value_collection.rb +12 -11
- data/lib/puppet/parser.rb +12 -2
- data/lib/puppet/parser/ast.rb +9 -78
- data/lib/puppet/parser/ast/block_expression.rb +11 -36
- data/lib/puppet/parser/ast/branch.rb +15 -18
- data/lib/puppet/parser/ast/hostclass.rb +1 -3
- data/lib/puppet/parser/ast/leaf.rb +55 -212
- data/lib/puppet/parser/ast/node.rb +3 -11
- data/lib/puppet/parser/ast/pops_bridge.rb +2 -7
- data/lib/puppet/parser/ast/resource.rb +14 -20
- data/lib/puppet/parser/ast/resource_instance.rb +4 -7
- data/lib/puppet/parser/ast/resourceparam.rb +21 -22
- data/lib/puppet/parser/compiler.rb +41 -70
- data/lib/puppet/parser/e4_parser_adapter.rb +2 -23
- data/lib/puppet/parser/files.rb +22 -67
- data/lib/puppet/parser/functions.rb +1 -3
- data/lib/puppet/parser/functions/assert_type.rb +1 -2
- data/lib/puppet/parser/functions/contain.rb +5 -3
- data/lib/puppet/parser/functions/create_resources.rb +9 -1
- data/lib/puppet/parser/functions/defined.rb +33 -61
- data/lib/puppet/parser/functions/each.rb +1 -3
- data/lib/puppet/parser/functions/epp.rb +1 -2
- data/lib/puppet/parser/functions/file.rb +1 -3
- data/lib/puppet/parser/functions/filter.rb +1 -3
- data/lib/puppet/parser/functions/hiera.rb +4 -6
- data/lib/puppet/parser/functions/hiera_array.rb +4 -6
- data/lib/puppet/parser/functions/hiera_hash.rb +6 -8
- data/lib/puppet/parser/functions/hiera_include.rb +2 -10
- data/lib/puppet/parser/functions/include.rb +4 -2
- data/lib/puppet/parser/functions/lookup.rb +115 -105
- data/lib/puppet/parser/functions/map.rb +1 -3
- data/lib/puppet/parser/functions/match.rb +1 -2
- data/lib/puppet/parser/functions/realize.rb +1 -6
- data/lib/puppet/parser/functions/reduce.rb +1 -3
- data/lib/puppet/parser/functions/regsubst.rb +1 -57
- data/lib/puppet/parser/functions/require.rb +6 -4
- data/lib/puppet/parser/functions/scanf.rb +1 -1
- data/lib/puppet/parser/functions/slice.rb +1 -3
- data/lib/puppet/parser/functions/split.rb +1 -1
- data/lib/puppet/parser/functions/with.rb +1 -2
- data/lib/puppet/parser/parser_factory.rb +5 -21
- data/lib/puppet/parser/relationship.rb +14 -37
- data/lib/puppet/parser/resource.rb +11 -22
- data/lib/puppet/parser/scope.rb +45 -135
- data/lib/puppet/parser/templatewrapper.rb +1 -29
- data/lib/puppet/parser/type_loader.rb +12 -15
- data/lib/puppet/plugins.rb +9 -0
- data/lib/{puppetx/puppet/bindings_scheme_handler.rb → puppet/plugins/binding_schemes.rb} +14 -4
- data/lib/puppet/plugins/configuration.rb +68 -0
- data/lib/puppet/plugins/data_providers.rb +90 -0
- data/lib/{puppetx/puppet/syntax_checker.rb → puppet/plugins/syntax_checkers.rb} +14 -2
- data/lib/puppet/pops.rb +6 -7
- data/lib/puppet/pops/adaptable.rb +16 -5
- data/lib/puppet/pops/binder/binder.rb +5 -4
- data/lib/puppet/pops/binder/bindings_composer.rb +6 -4
- data/lib/puppet/pops/binder/bindings_factory.rb +4 -0
- data/lib/puppet/pops/binder/bindings_label_provider.rb +1 -1
- data/lib/puppet/pops/binder/bindings_loader.rb +3 -8
- data/lib/puppet/pops/binder/bindings_model_dumper.rb +36 -8
- data/lib/puppet/pops/binder/config/binder_config.rb +2 -2
- data/lib/puppet/pops/binder/config/binder_config_checker.rb +1 -1
- data/lib/puppet/pops/binder/config/issues.rb +4 -0
- data/lib/puppet/pops/binder/injector.rb +0 -1
- data/lib/puppet/pops/binder/scheme_handler/symbolic_scheme.rb +1 -1
- data/lib/puppet/pops/evaluator/access_operator.rb +18 -50
- data/lib/puppet/pops/evaluator/callable_mismatch_describer.rb +5 -5
- data/lib/puppet/pops/evaluator/callable_signature.rb +2 -2
- data/lib/puppet/pops/evaluator/closure.rb +16 -21
- data/lib/puppet/pops/evaluator/collector_transformer.rb +11 -1
- data/lib/puppet/pops/evaluator/compare_operator.rb +0 -43
- data/lib/puppet/pops/evaluator/epp_evaluator.rb +1 -1
- data/lib/puppet/pops/evaluator/evaluator_impl.rb +36 -152
- data/lib/puppet/pops/evaluator/external_syntax_support.rb +6 -3
- data/lib/puppet/pops/evaluator/relationship_operator.rb +1 -1
- data/lib/puppet/pops/evaluator/runtime3_converter.rb +1 -1
- data/lib/puppet/pops/evaluator/runtime3_support.rb +9 -57
- data/lib/puppet/pops/functions/dispatch.rb +1 -6
- data/lib/puppet/pops/issue_reporter.rb +16 -42
- data/lib/puppet/pops/issues.rb +13 -128
- data/lib/puppet/pops/loader/dependency_loader.rb +3 -3
- data/lib/puppet/pops/loader/loader.rb +21 -20
- data/lib/puppet/pops/loaders.rb +13 -8
- data/lib/puppet/pops/lookup.rb +96 -0
- data/lib/puppet/pops/merge_strategy.rb +283 -0
- data/lib/puppet/pops/model/ast_transformer.rb +4 -522
- data/lib/puppet/pops/model/factory.rb +20 -21
- data/lib/puppet/pops/model/model.rb +1 -1
- data/lib/puppet/pops/model/model_label_provider.rb +1 -1
- data/lib/puppet/pops/model/model_meta.rb +10 -7
- data/lib/puppet/pops/model/tree_dumper.rb +1 -1
- data/lib/puppet/pops/parser/egrammar.ra +1 -13
- data/lib/puppet/pops/parser/eparser.rb +1132 -1272
- data/lib/puppet/pops/parser/epp_support.rb +11 -22
- data/lib/puppet/pops/parser/evaluating_parser.rb +11 -10
- data/lib/puppet/pops/parser/heredoc_support.rb +12 -13
- data/lib/puppet/pops/parser/interpolation_support.rb +1 -7
- data/lib/puppet/pops/parser/lexer2.rb +33 -36
- data/lib/puppet/pops/parser/lexer_support.rb +20 -46
- data/lib/puppet/pops/parser/locator.rb +6 -30
- data/lib/puppet/pops/parser/parser_support.rb +14 -11
- data/lib/puppet/pops/parser/slurp_support.rb +6 -22
- data/lib/puppet/pops/patterns.rb +0 -3
- data/lib/puppet/pops/types/class_loader.rb +8 -8
- data/lib/puppet/pops/types/enumeration.rb +1 -1
- data/lib/puppet/pops/types/type_asserter.rb +45 -0
- data/lib/puppet/pops/types/type_assertion_error.rb +26 -0
- data/lib/puppet/pops/types/type_calculator.rb +110 -212
- data/lib/puppet/pops/types/type_factory.rb +15 -74
- data/lib/puppet/pops/types/type_parser.rb +15 -24
- data/lib/puppet/pops/types/types.rb +25 -35
- data/lib/puppet/pops/types/types_meta.rb +2 -13
- data/lib/puppet/pops/utils.rb +1 -1
- data/lib/puppet/pops/validation.rb +3 -26
- data/lib/puppet/pops/validation/checker4_0.rb +6 -56
- data/lib/puppet/pops/validation/validator_factory_4_0.rb +1 -3
- data/lib/puppet/pops/visitor.rb +10 -7
- data/lib/puppet/property.rb +44 -124
- data/lib/puppet/provider.rb +0 -52
- data/lib/puppet/provider/aixobject.rb +2 -2
- data/lib/puppet/provider/augeas/augeas.rb +9 -6
- data/lib/puppet/provider/command.rb +1 -1
- data/lib/puppet/provider/cron/crontab.rb +37 -0
- data/lib/puppet/provider/exec.rb +2 -16
- data/lib/puppet/provider/file/posix.rb +1 -1
- data/lib/puppet/provider/file/windows.rb +1 -1
- data/lib/puppet/provider/group/aix.rb +1 -1
- data/lib/puppet/provider/group/pw.rb +0 -1
- data/lib/puppet/provider/group/windows_adsi.rb +4 -18
- data/lib/puppet/provider/host/parsed.rb +4 -2
- data/lib/puppet/provider/macauthorization/macauthorization.rb +0 -12
- data/lib/puppet/provider/mailalias/aliases.rb +23 -12
- data/lib/puppet/provider/mount/parsed.rb +2 -145
- data/lib/puppet/provider/nameservice/directoryservice.rb +57 -131
- data/lib/puppet/provider/network_device.rb +3 -0
- data/lib/puppet/provider/package/appdmg.rb +5 -2
- data/lib/puppet/provider/package/apt.rb +1 -1
- data/lib/puppet/provider/package/fink.rb +1 -1
- data/lib/puppet/provider/package/openbsd.rb +26 -12
- data/lib/puppet/provider/package/opkg.rb +6 -1
- data/lib/puppet/provider/package/pacman.rb +159 -127
- data/lib/puppet/provider/package/pip.rb +1 -11
- data/lib/puppet/provider/package/pkg.rb +73 -29
- data/lib/puppet/provider/package/pkgdmg.rb +2 -2
- data/lib/puppet/provider/package/pkgin.rb +1 -1
- data/lib/puppet/provider/package/portage.rb +5 -1
- data/lib/puppet/provider/package/portupgrade.rb +0 -2
- data/lib/puppet/provider/package/rpm.rb +109 -0
- data/lib/puppet/provider/package/rug.rb +0 -1
- data/lib/puppet/provider/package/windows/package.rb +1 -1
- data/lib/puppet/provider/package/yum.rb +121 -30
- data/lib/puppet/provider/package/zypper.rb +8 -17
- data/lib/puppet/provider/scheduled_task/win32_taskscheduler.rb +7 -32
- data/lib/puppet/provider/service/base.rb +17 -3
- data/lib/puppet/provider/service/bsd.rb +1 -1
- data/lib/puppet/provider/service/daemontools.rb +1 -1
- data/lib/puppet/provider/service/init.rb +0 -7
- data/lib/puppet/provider/service/launchd.rb +11 -89
- data/lib/puppet/provider/service/openbsd.rb +56 -298
- data/lib/puppet/provider/service/runit.rb +1 -1
- data/lib/puppet/provider/service/systemd.rb +1 -0
- data/lib/puppet/provider/service/upstart.rb +4 -2
- data/lib/puppet/provider/ssh_authorized_key/parsed.rb +1 -1
- data/lib/puppet/provider/user/aix.rb +1 -1
- data/lib/puppet/provider/user/directoryservice.rb +40 -70
- data/lib/puppet/provider/user/hpux.rb +31 -2
- data/lib/puppet/provider/user/openbsd.rb +74 -0
- data/lib/puppet/provider/user/pw.rb +0 -1
- data/lib/puppet/provider/user/user_role_add.rb +1 -3
- data/lib/puppet/provider/user/windows_adsi.rb +2 -9
- data/lib/puppet/provider/yumrepo/inifile.rb +1 -3
- data/lib/puppet/provider/zfs/zfs.rb +3 -2
- data/lib/puppet/provider/zone/solaris.rb +3 -3
- data/lib/puppet/reference/configuration.rb +4 -3
- data/lib/puppet/reference/metaparameter.rb +0 -9
- data/lib/puppet/reference/providers.rb +1 -1
- data/lib/puppet/reference/type.rb +8 -10
- data/lib/puppet/relationship.rb +4 -17
- data/lib/puppet/resource.rb +132 -114
- data/lib/puppet/resource/catalog.rb +23 -30
- data/lib/puppet/resource/status.rb +74 -22
- data/lib/puppet/resource/type.rb +12 -52
- data/lib/puppet/resource/type_collection.rb +26 -73
- data/lib/puppet/settings.rb +94 -153
- data/lib/puppet/settings/base_setting.rb +6 -30
- data/lib/puppet/settings/config_file.rb +14 -11
- data/lib/puppet/settings/duration_setting.rb +1 -1
- data/lib/puppet/settings/environment_conf.rb +14 -12
- data/lib/puppet/settings/file_setting.rb +9 -10
- data/lib/puppet/settings/ttl_setting.rb +1 -3
- data/lib/puppet/ssl/certificate.rb +38 -8
- data/lib/puppet/ssl/certificate_authority/interface.rb +7 -1
- data/lib/puppet/ssl/certificate_factory.rb +3 -3
- data/lib/puppet/ssl/certificate_request.rb +36 -8
- data/lib/puppet/ssl/configuration.rb +2 -8
- data/lib/puppet/ssl/host.rb +1 -8
- data/lib/puppet/ssl/inventory.rb +0 -7
- data/lib/puppet/ssl/oids.rb +72 -3
- data/lib/puppet/ssl/validator/default_validator.rb +0 -1
- data/lib/puppet/status.rb +0 -5
- data/lib/puppet/syntax_checkers.rb +3 -0
- data/lib/{puppetx/puppetlabs → puppet}/syntax_checkers/json.rb +2 -2
- data/lib/puppet/test/test_helper.rb +11 -12
- data/lib/puppet/transaction.rb +12 -9
- data/lib/puppet/transaction/event.rb +4 -5
- data/lib/puppet/transaction/event_manager.rb +50 -5
- data/lib/puppet/transaction/report.rb +5 -10
- data/lib/puppet/transaction/resource_harness.rb +7 -2
- data/lib/puppet/type.rb +113 -29
- data/lib/puppet/type/augeas.rb +1 -0
- data/lib/puppet/type/exec.rb +2 -2
- data/lib/puppet/type/file.rb +8 -9
- data/lib/puppet/type/file/content.rb +19 -15
- data/lib/puppet/type/file/mode.rb +16 -11
- data/lib/puppet/type/file/selcontext.rb +1 -1
- data/lib/puppet/type/file/source.rb +15 -15
- data/lib/puppet/type/filebucket.rb +2 -2
- data/lib/puppet/type/group.rb +5 -17
- data/lib/puppet/type/host.rb +12 -3
- data/lib/puppet/type/k5login.rb +1 -1
- data/lib/puppet/type/mailalias.rb +20 -6
- data/lib/puppet/type/maillist.rb +1 -1
- data/lib/puppet/type/mount.rb +6 -16
- data/lib/puppet/type/notify.rb +1 -1
- data/lib/puppet/type/package.rb +91 -16
- data/lib/puppet/type/resources.rb +0 -7
- data/lib/puppet/type/router.rb +1 -1
- data/lib/puppet/type/schedule.rb +1 -1
- data/lib/puppet/type/scheduled_task.rb +0 -13
- data/lib/puppet/type/selboolean.rb +2 -2
- data/lib/puppet/type/service.rb +1 -1
- data/lib/puppet/type/ssh_authorized_key.rb +1 -1
- data/lib/puppet/type/sshkey.rb +1 -1
- data/lib/puppet/type/tidy.rb +4 -1
- data/lib/puppet/type/user.rb +16 -3
- data/lib/puppet/type/yumrepo.rb +26 -0
- data/lib/puppet/type/zfs.rb +1 -1
- data/lib/puppet/type/zpool.rb +1 -1
- data/lib/puppet/util.rb +2 -85
- data/lib/puppet/util/autoload.rb +3 -13
- data/lib/puppet/util/checksums.rb +59 -22
- data/lib/puppet/util/classgen.rb +1 -9
- data/lib/puppet/util/colors.rb +0 -117
- data/lib/puppet/util/command_line.rb +1 -23
- data/lib/puppet/util/errors.rb +2 -4
- data/lib/puppet/util/execution.rb +19 -22
- data/lib/puppet/util/feature.rb +2 -4
- data/lib/puppet/util/fileparsing.rb +3 -2
- data/lib/puppet/util/log.rb +13 -56
- data/lib/puppet/util/log/destinations.rb +17 -36
- data/lib/puppet/util/logging.rb +52 -37
- data/lib/puppet/util/metric.rb +0 -149
- data/lib/puppet/util/monkey_patches.rb +1 -94
- data/lib/puppet/util/network_device/base.rb +1 -5
- data/lib/puppet/util/network_device/cisco/interface.rb +2 -2
- data/lib/puppet/util/network_device/config.rb +0 -5
- data/lib/puppet/util/network_device/transport/ssh.rb +2 -2
- data/lib/puppet/util/profiler.rb +1 -1
- data/lib/puppet/util/profiler/aggregate.rb +1 -1
- data/lib/puppet/util/profiler/around_profiler.rb +1 -1
- data/lib/puppet/util/psych_support.rb +38 -0
- data/lib/puppet/util/rdoc.rb +6 -42
- data/lib/puppet/util/rdoc/code_objects.rb +5 -45
- data/lib/puppet/util/rdoc/generators/puppet_generator.rb +1 -1
- data/lib/puppet/util/rdoc/parser.rb +5 -15
- data/lib/puppet/util/rdoc/parser/puppet_parser_core.rb +8 -227
- data/lib/puppet/util/retry_action.rb +46 -0
- data/lib/puppet/util/run_mode.rb +31 -7
- data/lib/puppet/util/selinux.rb +2 -2
- data/lib/puppet/util/ssl.rb +11 -11
- data/lib/puppet/util/suidmanager.rb +4 -31
- data/lib/puppet/util/tag_set.rb +0 -11
- data/lib/puppet/util/tagging.rb +50 -19
- data/lib/puppet/util/warnings.rb +1 -0
- data/lib/puppet/util/windows/adsi.rb +13 -60
- data/lib/puppet/util/windows/api_types.rb +16 -2
- data/lib/puppet/util/windows/file.rb +2 -8
- data/lib/puppet/util/windows/process.rb +58 -0
- data/lib/puppet/util/windows/registry.rb +319 -31
- data/lib/puppet/util/windows/security.rb +1 -68
- data/lib/puppet/util/windows/taskscheduler.rb +0 -21
- data/lib/puppet/util/windows/user.rb +2 -3
- data/lib/puppet/vendor/deep_merge/CHANGELOG +45 -0
- data/lib/puppet/vendor/deep_merge/Gemfile +3 -0
- data/lib/puppet/vendor/deep_merge/LICENSE +21 -0
- data/lib/puppet/vendor/deep_merge/README.md +113 -0
- data/lib/puppet/vendor/deep_merge/Rakefile +19 -0
- data/lib/puppet/vendor/deep_merge/deep_merge.gemspec +35 -0
- data/lib/puppet/vendor/deep_merge/lib/deep_merge.rb +2 -0
- data/lib/puppet/vendor/deep_merge/lib/deep_merge/core.rb +210 -0
- data/lib/puppet/vendor/deep_merge/lib/deep_merge/deep_merge_hash.rb +28 -0
- data/lib/puppet/vendor/deep_merge/lib/deep_merge/rails_compat.rb +27 -0
- data/lib/puppet/vendor/deep_merge/test/test_deep_merge.rb +608 -0
- data/lib/puppet/vendor/load_deep_merge.rb +1 -0
- data/lib/puppet/vendor/load_rgen.rb +1 -0
- data/lib/puppet/vendor/require_vendored.rb +1 -3
- data/lib/puppet/vendor/rgen_patch.rb +132 -0
- data/lib/puppet/version.rb +1 -1
- data/lib/puppet_x.rb +8 -0
- data/lib/semver.rb +0 -1
- data/man/man5/puppet.conf.5 +432 -287
- data/man/man8/extlookup2hiera.8 +2 -15
- data/man/man8/puppet-agent.8 +14 -14
- data/man/man8/puppet-apply.8 +29 -30
- data/man/man8/puppet-ca.8 +29 -17
- data/man/man8/puppet-catalog.8 +5 -34
- data/man/man8/puppet-cert.8 +8 -4
- data/man/man8/puppet-certificate.8 +15 -29
- data/man/man8/puppet-certificate_request.8 +9 -16
- data/man/man8/puppet-certificate_revocation_list.8 +5 -31
- data/man/man8/puppet-config.8 +52 -11
- data/man/man8/puppet-describe.8 +1 -1
- data/man/man8/puppet-device.8 +5 -16
- data/man/man8/puppet-doc.8 +7 -80
- data/man/man8/puppet-epp.8 +349 -0
- data/man/man8/puppet-facts.8 +5 -95
- data/man/man8/puppet-file.8 +2 -28
- data/man/man8/puppet-filebucket.8 +2 -2
- data/man/man8/puppet-help.8 +2 -2
- data/man/man8/puppet-inspect.8 +1 -1
- data/man/man8/puppet-key.8 +6 -3
- data/man/man8/puppet-man.8 +2 -2
- data/man/man8/puppet-master.8 +11 -7
- data/man/man8/puppet-module.8 +75 -49
- data/man/man8/puppet-node.8 +8 -56
- data/man/man8/puppet-parser.8 +38 -4
- data/man/man8/puppet-plugin.8 +2 -2
- data/man/man8/puppet-report.8 +8 -70
- data/man/man8/puppet-resource.8 +7 -3
- data/man/man8/puppet-resource_type.8 +2 -28
- data/man/man8/puppet-status.8 +5 -47
- data/man/man8/puppet.8 +2 -2
- data/spec/fixtures/integration/provider/mailalias/aliases/test1 +3 -0
- data/spec/fixtures/integration/provider/sshkey/sample +21 -0
- data/spec/fixtures/unit/data_providers/environments/production/environment.conf +2 -0
- data/spec/fixtures/unit/data_providers/environments/production/lib/puppet/functions/environment/data.rb +7 -0
- data/spec/fixtures/unit/data_providers/environments/production/modules/abc/lib/puppet/bindings/abc/default.rb +9 -0
- data/spec/fixtures/unit/data_providers/environments/production/modules/abc/lib/puppet/functions/abc/data.rb +8 -0
- data/spec/fixtures/unit/data_providers/environments/production/modules/abc/manifests/init.pp +9 -0
- data/spec/fixtures/unit/data_providers/environments/sample/environment.conf +2 -0
- data/spec/fixtures/unit/data_providers/environments/sample/manifests/site.pp +6 -0
- data/spec/fixtures/unit/data_providers/environments/sample/modules/dataprovider/lib/puppet/bindings/dataprovider/default.rb +54 -0
- data/spec/fixtures/unit/data_providers/environments/sample/modules/dataprovider/lib/puppet_x/helindbe/sample_env_data.rb +31 -0
- data/spec/fixtures/unit/data_providers/environments/sample/modules/dataprovider/lib/puppet_x/helindbe/sample_module_data.rb +32 -0
- data/spec/fixtures/unit/data_providers/environments/sample/modules/dataprovider/manifests/init.pp +5 -0
- data/spec/fixtures/unit/functions/lookup/environments/production/environment.conf +2 -0
- data/spec/fixtures/unit/functions/lookup/environments/production/lib/puppet/functions/environment/data.rb +11 -0
- data/spec/fixtures/unit/functions/lookup/environments/production/modules/abc/lib/puppet/bindings/abc/default.rb +9 -0
- data/spec/fixtures/unit/functions/lookup/environments/production/modules/abc/lib/puppet/functions/abc/data.rb +9 -0
- data/spec/fixtures/unit/functions/lookup/environments/production/modules/abc/manifests/init.pp +8 -0
- data/spec/fixtures/unit/parser/lexer/subclass_name_duplication.pp +0 -0
- data/spec/fixtures/unit/pops/binder/bindings_composer/ok/binder_config.yaml +1 -1
- data/spec/fixtures/unit/pops/binder/bindings_composer/ok/modules/awesome2/lib/{puppetx → puppet_x}/awesome2/echo_scheme_handler.rb +3 -3
- data/spec/fixtures/unit/pops/binder/config/binder_config/nolayer/binder_config.yaml +6 -0
- data/spec/fixtures/unit/pops/parser/lexer/subclass_name_duplication.pp +0 -0
- data/spec/fixtures/unit/provider/mount/parsed/aix.filesystems +85 -93
- data/spec/fixtures/unit/provider/mount/parsed/aix.mount +7 -11
- data/spec/fixtures/unit/provider/package/pkg/dummy_implicit_version +3 -0
- data/spec/fixtures/unit/provider/package/pkg/dummy_solaris10 +1 -1
- data/spec/fixtures/unit/provider/package/pkg/dummy_solaris11.certificate_warning +1 -1
- data/spec/fixtures/unit/provider/package/pkg/dummy_solaris11.ifo.installed +1 -1
- data/spec/fixtures/unit/provider/package/pkg/dummy_solaris11.ifo.known +1 -1
- data/spec/fixtures/unit/provider/package/pkg/dummy_solaris11.installed +1 -1
- data/spec/fixtures/unit/provider/package/pkg/dummy_solaris11.known +1 -1
- data/spec/fixtures/unit/provider/package/pkg/incomplete +1 -1
- data/spec/fixtures/unit/provider/package/pkg/solaris11 +2 -2
- data/spec/fixtures/unit/provider/package/pkg/unknown_status +12 -12
- data/spec/fixtures/unit/provider/package/yum/yum-check-update-multiline.txt +201 -0
- data/spec/fixtures/unit/provider/package/yum/yum-check-update-simple.txt +12 -0
- data/spec/fixtures/unit/provider/parsedfile/simple.txt +3 -0
- data/spec/fixtures/unit/provider/service/openbsd/rcctl_getall +6 -0
- data/spec/fixtures/unit/ssl/certificate/old-style-cert-exts.pem +33 -0
- data/spec/fixtures/unit/ssl/certificate_request/old-style-cert-request.pem +28 -0
- data/spec/integration/agent/logging_spec.rb +1 -5
- data/spec/integration/application/apply_spec.rb +1 -1
- data/spec/integration/application/doc_spec.rb +1 -43
- data/spec/integration/configurer_spec.rb +5 -5
- data/spec/integration/data_binding.rb +4 -0
- data/spec/integration/defaults_spec.rb +42 -143
- data/spec/integration/directory_environments_spec.rb +3 -3
- data/spec/integration/environments/default_manifest_spec.rb +3 -51
- data/spec/integration/environments/setting_hooks_spec.rb +1 -1
- data/spec/integration/environments/settings_interpolation_spec.rb +50 -105
- data/spec/integration/environments/settings_spec.rb +100 -0
- data/spec/integration/faces/ca_spec.rb +51 -51
- data/spec/integration/faces/documentation_spec.rb +6 -6
- data/spec/integration/file_bucket/file_spec.rb +5 -16
- data/spec/integration/file_serving/fileset_spec.rb +1 -1
- data/spec/integration/file_serving/terminus_helper_spec.rb +1 -1
- data/spec/integration/indirector/catalog/compiler_spec.rb +6 -6
- data/spec/integration/indirector/direct_file_server_spec.rb +40 -12
- data/spec/integration/indirector/facts/facter_spec.rb +1 -1
- data/spec/integration/indirector/file_content/file_server_spec.rb +23 -21
- data/spec/integration/indirector/file_metadata/file_server_spec.rb +53 -0
- data/spec/integration/indirector/node/ldap_spec.rb +0 -0
- data/spec/integration/network/authconfig_spec.rb +26 -26
- data/spec/integration/network/formats_spec.rb +12 -12
- data/spec/integration/network/http/api/indirected_routes_spec.rb +56 -0
- data/spec/integration/node/environment_spec.rb +12 -15
- data/spec/integration/node/facts_spec.rb +3 -3
- data/spec/integration/node_spec.rb +8 -8
- data/spec/integration/parser/catalog_spec.rb +1 -32
- data/spec/integration/parser/class_spec.rb +0 -4
- data/spec/integration/parser/{collector_spec.rb → collection_spec.rb} +3 -27
- data/spec/integration/parser/compiler_spec.rb +769 -385
- data/spec/integration/parser/conditionals_spec.rb +2 -27
- data/spec/integration/parser/functions/require_spec.rb +8 -8
- data/spec/integration/parser/node_spec.rb +29 -42
- data/spec/integration/parser/resource_expressions_spec.rb +125 -210
- data/spec/integration/parser/scope_spec.rb +168 -319
- data/spec/integration/parser/undef_param_spec.rb +5 -5
- data/spec/integration/provider/cron/crontab_spec.rb +3 -3
- data/spec/integration/provider/mailalias/aliases_spec.rb +0 -0
- data/spec/integration/provider/mount_spec.rb +33 -28
- data/spec/integration/provider/package_spec.rb +3 -14
- data/spec/integration/provider/service/init_spec.rb +4 -4
- data/spec/integration/provider/service/systemd_spec.rb +3 -3
- data/spec/integration/provider/ssh_authorized_key_spec.rb +12 -12
- data/spec/integration/provider/sshkey_spec.rb +159 -0
- data/spec/integration/reference/providers_spec.rb +1 -1
- data/spec/integration/reports_spec.rb +1 -1
- data/spec/integration/resource/catalog_spec.rb +3 -3
- data/spec/integration/resource/type_collection_spec.rb +10 -25
- data/spec/integration/ssl/autosign_spec.rb +1 -1
- data/spec/integration/ssl/certificate_authority_spec.rb +8 -8
- data/spec/integration/ssl/certificate_request_spec.rb +2 -2
- data/spec/integration/ssl/certificate_revocation_list_spec.rb +0 -0
- data/spec/integration/ssl/host_spec.rb +7 -7
- data/spec/integration/transaction/report_spec.rb +0 -0
- data/spec/integration/transaction_spec.rb +86 -50
- data/spec/integration/type/exec_spec.rb +5 -5
- data/spec/integration/type/file_spec.rb +277 -280
- data/spec/integration/type/package_spec.rb +105 -6
- data/spec/integration/type/tidy_spec.rb +1 -1
- data/spec/integration/type/user_spec.rb +4 -4
- data/spec/integration/type_spec.rb +2 -2
- data/spec/integration/util/autoload_spec.rb +7 -12
- data/spec/integration/util/rdoc/parser_spec.rb +13 -99
- data/spec/integration/util/settings_spec.rb +1 -1
- data/spec/integration/util/windows/process_spec.rb +6 -6
- data/spec/integration/util/windows/security_spec.rb +79 -105
- data/spec/integration/util/windows/user_spec.rb +12 -12
- data/spec/integration/util_spec.rb +8 -8
- data/spec/lib/matchers/containment_matchers.rb +1 -1
- data/spec/lib/matchers/include.rb +3 -3
- data/spec/lib/matchers/include_in_order.rb +2 -2
- data/spec/lib/matchers/json.rb +5 -35
- data/spec/lib/matchers/match_tokens2.rb +1 -1
- data/spec/lib/matchers/relationship_graph_matchers.rb +1 -1
- data/spec/lib/matchers/resource.rb +8 -23
- data/spec/lib/puppet/face/1.0.0/huzzah.rb +2 -2
- data/spec/lib/puppet/face/basetest.rb +0 -0
- data/spec/lib/puppet/face/huzzah.rb +2 -2
- data/spec/lib/puppet/face/version_matching.rb +1 -1
- data/spec/lib/puppet/indirector_proxy.rb +34 -0
- data/spec/lib/puppet/indirector_testing.rb +1 -11
- data/spec/lib/puppet_spec/files.rb +1 -1
- data/spec/lib/puppet_spec/fixtures.rb +0 -0
- data/spec/lib/puppet_spec/handler.rb +53 -0
- data/spec/lib/puppet_spec/matchers.rb +12 -5
- data/spec/lib/puppet_spec/module_tool/shared_functions.rb +3 -3
- data/spec/lib/puppet_spec/modules.rb +11 -0
- data/spec/lib/puppet_spec/network.rb +101 -0
- data/spec/lib/puppet_spec/pops.rb +2 -2
- data/spec/lib/puppet_spec/settings.rb +17 -0
- data/spec/lib/puppet_spec/verbose.rb +0 -0
- data/spec/shared_behaviours/all_parsedfile_providers.rb +1 -1
- data/spec/shared_behaviours/an_indirector_face.rb +2 -2
- data/spec/shared_behaviours/documentation_on_faces.rb +46 -46
- data/spec/shared_behaviours/file_server_terminus.rb +1 -1
- data/spec/shared_behaviours/file_serving.rb +0 -0
- data/spec/shared_behaviours/hiera_indirections.rb +10 -10
- data/spec/shared_behaviours/iterative_functions.rb +1 -1
- data/spec/shared_behaviours/memory_terminus.rb +5 -5
- data/spec/shared_behaviours/path_parameters.rb +8 -8
- data/spec/shared_behaviours/store_configs_terminus.rb +3 -3
- data/spec/shared_behaviours/things_that_declare_options.rb +25 -25
- data/spec/shared_contexts/checksum.rb +62 -0
- data/spec/shared_contexts/{checksums.rb → digests.rb} +2 -2
- data/spec/spec_helper.rb +14 -5
- data/spec/unit/agent/disabler_spec.rb +3 -3
- data/spec/unit/agent/locker_spec.rb +9 -9
- data/spec/unit/agent_spec.rb +18 -18
- data/spec/unit/application/agent_spec.rb +25 -92
- data/spec/unit/application/apply_spec.rb +16 -16
- data/spec/unit/application/cert_spec.rb +15 -15
- data/spec/unit/application/certificate_spec.rb +2 -2
- data/spec/unit/application/config_spec.rb +1 -1
- data/spec/unit/application/describe_spec.rb +6 -6
- data/spec/unit/application/device_spec.rb +25 -63
- data/spec/unit/application/doc_spec.rb +22 -31
- data/spec/unit/application/face_base_spec.rb +88 -59
- data/spec/unit/application/facts_spec.rb +2 -11
- data/spec/unit/application/filebucket_spec.rb +7 -7
- data/spec/unit/application/indirection_base_spec.rb +0 -4
- data/spec/unit/application/inspect_spec.rb +21 -21
- data/spec/unit/application/master_spec.rb +8 -9
- data/spec/unit/application/resource_spec.rb +27 -79
- data/spec/unit/application_spec.rb +54 -58
- data/spec/unit/configurer/downloader_factory_spec.rb +0 -0
- data/spec/unit/configurer/downloader_spec.rb +26 -20
- data/spec/unit/configurer/fact_handler_spec.rb +19 -12
- data/spec/unit/configurer/plugin_handler_spec.rb +0 -0
- data/spec/unit/configurer_spec.rb +44 -44
- data/spec/unit/confine/exists_spec.rb +10 -10
- data/spec/unit/confine/false_spec.rb +7 -7
- data/spec/unit/confine/feature_spec.rb +7 -7
- data/spec/unit/confine/true_spec.rb +7 -7
- data/spec/unit/confine/variable_spec.rb +13 -13
- data/spec/unit/confine_collection_spec.rb +12 -12
- data/spec/unit/confine_spec.rb +10 -10
- data/spec/unit/confiner_spec.rb +8 -8
- data/spec/unit/context/trusted_information_spec.rb +9 -2
- data/spec/unit/daemon_spec.rb +10 -21
- data/spec/unit/data_binding_spec.rb +1 -1
- data/spec/unit/data_providers/function_data_provider_spec.rb +96 -0
- data/spec/unit/data_providers/sample_data_provider_spec.rb +52 -0
- data/spec/unit/defaults_spec.rb +6 -6
- data/spec/unit/environments_spec.rb +4 -6
- data/spec/unit/{util → external}/pson_spec.rb +15 -25
- data/spec/unit/face/catalog_spec.rb +0 -0
- data/spec/unit/face/certificate_spec.rb +19 -19
- data/spec/unit/face/config_spec.rb +2 -7
- data/spec/unit/face/epp_face_spec.rb +303 -0
- data/spec/unit/face/facts_spec.rb +1 -15
- data/spec/unit/face/file_spec.rb +3 -5
- data/spec/unit/face/help_spec.rb +17 -16
- data/spec/unit/face/module/build_spec.rb +2 -2
- data/spec/unit/face/module/list_spec.rb +11 -11
- data/spec/unit/face/module/search_spec.rb +17 -17
- data/spec/unit/face/node_spec.rb +4 -122
- data/spec/unit/face/parser_spec.rb +1 -1
- data/spec/unit/face/plugin_spec.rb +2 -2
- data/spec/unit/face_spec.rb +0 -0
- data/spec/unit/file_bucket/dipper_spec.rb +23 -23
- data/spec/unit/file_bucket/file_spec.rb +12 -28
- data/spec/unit/file_serving/base_spec.rb +26 -26
- data/spec/unit/file_serving/configuration/parser_spec.rb +10 -10
- data/spec/unit/file_serving/configuration_spec.rb +17 -17
- data/spec/unit/file_serving/content_spec.rb +19 -31
- data/spec/unit/file_serving/fileset_spec.rb +32 -33
- data/spec/unit/file_serving/metadata_spec.rb +115 -71
- data/spec/unit/file_serving/mount/file_spec.rb +15 -15
- data/spec/unit/file_serving/mount/modules_spec.rb +2 -2
- data/spec/unit/file_serving/mount/pluginfacts_spec.rb +5 -5
- data/spec/unit/file_serving/mount/plugins_spec.rb +5 -5
- data/spec/unit/file_serving/mount_spec.rb +5 -5
- data/spec/unit/file_serving/terminus_helper_spec.rb +19 -0
- data/spec/unit/file_serving/terminus_selector_spec.rb +6 -6
- data/spec/unit/file_system/uniquefile_spec.rb +2 -2
- data/spec/unit/file_system_spec.rb +79 -117
- data/spec/unit/forge/errors_spec.rb +8 -8
- data/spec/unit/forge/module_release_spec.rb +2 -4
- data/spec/unit/forge/repository_spec.rb +38 -44
- data/spec/unit/forge_spec.rb +1 -1
- data/spec/unit/functions/assert_type_spec.rb +1 -1
- data/spec/unit/functions/each_spec.rb +19 -23
- data/spec/unit/functions/epp_spec.rb +9 -17
- data/spec/unit/functions/filter_spec.rb +0 -22
- data/spec/unit/functions/hiera_spec.rb +18 -24
- data/spec/unit/functions/inline_epp_spec.rb +8 -16
- data/spec/unit/functions/lookup_spec.rb +324 -0
- data/spec/unit/functions/map_spec.rb +1 -7
- data/spec/unit/functions/reduce_spec.rb +0 -11
- data/spec/unit/functions/regsubst_spec.rb +94 -0
- data/spec/unit/functions/scanf_spec.rb +0 -4
- data/spec/unit/functions/slice_spec.rb +0 -12
- data/spec/unit/functions/split_spec.rb +46 -0
- data/spec/unit/functions/with_spec.rb +4 -13
- data/spec/unit/functions4_spec.rb +57 -162
- data/spec/unit/graph/rb_tree_map_spec.rb +78 -78
- data/spec/unit/graph/relationship_graph_spec.rb +17 -17
- data/spec/unit/graph/{simple_graph.rb → simple_graph_spec.rb} +122 -126
- data/spec/unit/hiera/scope_spec.rb +13 -12
- data/spec/unit/hiera_puppet_spec.rb +12 -12
- data/spec/unit/indirector/catalog/compiler_spec.rb +10 -15
- data/spec/unit/indirector/catalog/json_spec.rb +2 -2
- data/spec/unit/indirector/catalog/msgpack_spec.rb +2 -2
- data/spec/unit/indirector/catalog/rest_spec.rb +1 -1
- data/spec/unit/indirector/catalog/static_compiler_spec.rb +14 -14
- data/spec/unit/indirector/catalog/store_configs_spec.rb +0 -0
- data/spec/unit/indirector/catalog/yaml_spec.rb +4 -4
- data/spec/unit/indirector/certificate/ca_spec.rb +3 -3
- data/spec/unit/indirector/certificate/disabled_ca_spec.rb +0 -0
- data/spec/unit/indirector/certificate/file_spec.rb +3 -3
- data/spec/unit/indirector/certificate/rest_spec.rb +6 -6
- data/spec/unit/indirector/certificate_request/ca_spec.rb +8 -8
- data/spec/unit/indirector/certificate_request/disabled_ca_spec.rb +0 -0
- data/spec/unit/indirector/certificate_request/file_spec.rb +2 -2
- data/spec/unit/indirector/certificate_request/rest_spec.rb +4 -4
- data/spec/unit/indirector/certificate_revocation_list/ca_spec.rb +2 -2
- data/spec/unit/indirector/certificate_revocation_list/disabled_ca_spec.rb +0 -0
- data/spec/unit/indirector/certificate_revocation_list/file_spec.rb +2 -2
- data/spec/unit/indirector/certificate_revocation_list/rest_spec.rb +4 -4
- data/spec/unit/indirector/certificate_status/file_spec.rb +18 -18
- data/spec/unit/indirector/certificate_status/rest_spec.rb +2 -2
- data/spec/unit/indirector/code_spec.rb +3 -3
- data/spec/unit/indirector/data_binding/hiera_spec.rb +3 -3
- data/spec/unit/indirector/data_binding/none_spec.rb +5 -5
- data/spec/unit/indirector/direct_file_server_spec.rb +14 -4
- data/spec/unit/indirector/envelope_spec.rb +4 -4
- data/spec/unit/indirector/exec_spec.rb +4 -4
- data/spec/unit/indirector/face_spec.rb +13 -8
- data/spec/unit/indirector/facts/facter_spec.rb +10 -20
- data/spec/unit/indirector/facts/network_device_spec.rb +10 -20
- data/spec/unit/indirector/facts/store_configs_spec.rb +0 -0
- data/spec/unit/indirector/facts/yaml_spec.rb +6 -6
- data/spec/unit/indirector/file_bucket_file/file_spec.rb +34 -34
- data/spec/unit/indirector/file_bucket_file/rest_spec.rb +1 -1
- data/spec/unit/indirector/file_content/file_server_spec.rb +2 -2
- data/spec/unit/indirector/file_content/file_spec.rb +2 -2
- data/spec/unit/indirector/file_content/rest_spec.rb +1 -1
- data/spec/unit/indirector/file_metadata/file_server_spec.rb +2 -2
- data/spec/unit/indirector/file_metadata/file_spec.rb +13 -5
- data/spec/unit/indirector/file_metadata/rest_spec.rb +1 -1
- data/spec/unit/indirector/file_server_spec.rb +35 -17
- data/spec/unit/indirector/indirection_spec.rb +56 -56
- data/spec/unit/indirector/json_spec.rb +15 -16
- data/spec/unit/indirector/key/ca_spec.rb +3 -3
- data/spec/unit/indirector/key/disabled_ca_spec.rb +0 -0
- data/spec/unit/indirector/key/file_spec.rb +5 -5
- data/spec/unit/indirector/ldap_spec.rb +13 -13
- data/spec/unit/indirector/memory_spec.rb +0 -0
- data/spec/unit/indirector/msgpack_spec.rb +15 -15
- data/spec/unit/indirector/node/exec_spec.rb +20 -9
- data/spec/unit/indirector/node/ldap_spec.rb +48 -48
- data/spec/unit/indirector/node/memory_spec.rb +0 -0
- data/spec/unit/indirector/node/msgpack_spec.rb +4 -4
- data/spec/unit/indirector/node/plain_spec.rb +2 -2
- data/spec/unit/indirector/node/rest_spec.rb +0 -0
- data/spec/unit/indirector/node/store_configs_spec.rb +0 -0
- data/spec/unit/indirector/node/yaml_spec.rb +4 -4
- data/spec/unit/indirector/none_spec.rb +2 -2
- data/spec/unit/indirector/plain_spec.rb +1 -1
- data/spec/unit/indirector/report/msgpack_spec.rb +5 -5
- data/spec/unit/indirector/report/processor_spec.rb +4 -4
- data/spec/unit/indirector/report/rest_spec.rb +8 -8
- data/spec/unit/indirector/report/yaml_spec.rb +5 -5
- data/spec/unit/indirector/request_spec.rb +103 -206
- data/spec/unit/indirector/resource/ral_spec.rb +8 -10
- data/spec/unit/indirector/resource/store_configs_spec.rb +2 -4
- data/spec/unit/indirector/resource_type/parser_spec.rb +37 -37
- data/spec/unit/indirector/resource_type/rest_spec.rb +2 -2
- data/spec/unit/indirector/rest_spec.rb +70 -55
- data/spec/unit/indirector/ssl_file_spec.rb +13 -13
- data/spec/unit/indirector/status/rest_spec.rb +1 -1
- data/spec/unit/indirector/store_configs_spec.rb +0 -0
- data/spec/unit/indirector/terminus_spec.rb +17 -17
- data/spec/unit/indirector/yaml_spec.rb +12 -12
- data/spec/unit/indirector_spec.rb +7 -7
- data/spec/unit/interface/action_builder_spec.rb +15 -15
- data/spec/unit/interface/action_manager_spec.rb +31 -56
- data/spec/unit/interface/action_spec.rb +62 -65
- data/spec/unit/interface/documentation_spec.rb +2 -2
- data/spec/unit/interface/face_collection_spec.rb +33 -33
- data/spec/unit/interface/option_builder_spec.rb +8 -8
- data/spec/unit/interface/option_spec.rb +23 -23
- data/spec/unit/interface_spec.rb +19 -24
- data/spec/unit/man_spec.rb +0 -0
- data/spec/unit/module_spec.rb +163 -115
- data/spec/unit/module_tool/applications/builder_spec.rb +0 -19
- data/spec/unit/module_tool/applications/installer_spec.rb +29 -29
- data/spec/unit/module_tool/applications/searcher_spec.rb +4 -4
- data/spec/unit/module_tool/applications/uninstaller_spec.rb +15 -15
- data/spec/unit/module_tool/applications/unpacker_spec.rb +3 -3
- data/spec/unit/module_tool/applications/upgrader_spec.rb +28 -28
- data/spec/unit/module_tool/install_directory_spec.rb +3 -3
- data/spec/unit/module_tool/metadata_spec.rb +26 -26
- data/spec/unit/module_tool/tar/gnu_spec.rb +1 -1
- data/spec/unit/module_tool/tar/mini_spec.rb +2 -2
- data/spec/unit/module_tool/tar_spec.rb +2 -2
- data/spec/unit/module_tool_spec.rb +13 -34
- data/spec/unit/network/auth_config_parser_spec.rb +7 -7
- data/spec/unit/network/authconfig_spec.rb +9 -9
- data/spec/unit/network/authstore_spec.rb +38 -39
- data/spec/unit/network/format_handler_spec.rb +14 -14
- data/spec/unit/network/format_spec.rb +34 -34
- data/spec/unit/network/format_support_spec.rb +10 -10
- data/spec/unit/network/formats_spec.rb +50 -136
- data/spec/unit/network/http/api/ca/v1_spec.rb +26 -0
- data/spec/unit/network/http/api/{v1_spec.rb → indirected_routes_spec.rb} +128 -184
- data/spec/unit/network/http/api/{v2 → master/v3}/authorization_spec.rb +23 -21
- data/spec/unit/network/http/api/{v2 → master/v3}/environments_spec.rb +5 -5
- data/spec/unit/network/http/api/master/v3_spec.rb +39 -0
- data/spec/unit/network/http/api_spec.rb +127 -0
- data/spec/unit/network/http/compression_spec.rb +20 -26
- data/spec/unit/network/http/connection_spec.rb +2 -5
- data/spec/unit/network/http/factory_spec.rb +6 -8
- data/spec/unit/network/http/handler_spec.rb +31 -84
- data/spec/unit/network/http/nocache_pool_spec.rb +0 -0
- data/spec/unit/network/http/pool_spec.rb +0 -0
- data/spec/unit/network/http/rack/rest_spec.rb +38 -39
- data/spec/unit/network/http/rack_spec.rb +1 -1
- data/spec/unit/network/http/route_spec.rb +3 -3
- data/spec/unit/network/http/session_spec.rb +4 -4
- data/spec/unit/network/http/site_spec.rb +1 -1
- data/spec/unit/network/http/webrick/rest_spec.rb +36 -55
- data/spec/unit/network/http/webrick_spec.rb +16 -27
- data/spec/unit/network/http_pool_spec.rb +11 -11
- data/spec/unit/network/http_spec.rb +0 -0
- data/spec/unit/network/resolver_spec.rb +10 -10
- data/spec/unit/network/rights_spec.rb +67 -67
- data/spec/unit/network/server_spec.rb +3 -3
- data/spec/unit/node/environment_spec.rb +177 -273
- data/spec/unit/node/facts_spec.rb +71 -33
- data/spec/unit/node_spec.rb +150 -158
- data/spec/unit/other/selinux_spec.rb +6 -6
- data/spec/unit/parameter/boolean_spec.rb +4 -3
- data/spec/unit/parameter/package_options_spec.rb +5 -5
- data/spec/unit/parameter/path_spec.rb +1 -1
- data/spec/unit/parameter/value_collection_spec.rb +23 -28
- data/spec/unit/parameter/value_spec.rb +20 -24
- data/spec/unit/parameter_spec.rb +26 -26
- data/spec/unit/parser/ast/block_expression_spec.rb +3 -2
- data/spec/unit/parser/ast/leaf_spec.rb +5 -378
- data/spec/unit/parser/compiler_spec.rb +84 -74
- data/spec/unit/parser/files_spec.rb +55 -121
- data/spec/unit/parser/functions/contain_spec.rb +8 -11
- data/spec/unit/parser/functions/create_resources_spec.rb +29 -29
- data/spec/unit/parser/functions/defined_spec.rb +52 -51
- data/spec/unit/parser/functions/digest_spec.rb +2 -2
- data/spec/unit/parser/functions/fail_spec.rb +1 -1
- data/spec/unit/parser/functions/file_spec.rb +7 -13
- data/spec/unit/parser/functions/fqdn_rand_spec.rb +5 -5
- data/spec/unit/parser/functions/generate_spec.rb +20 -20
- data/spec/unit/parser/functions/hiera_array_spec.rb +2 -16
- data/spec/unit/parser/functions/hiera_hash_spec.rb +2 -12
- data/spec/unit/parser/functions/hiera_include_spec.rb +2 -29
- data/spec/unit/parser/functions/hiera_spec.rb +2 -12
- data/spec/unit/parser/functions/include_spec.rb +9 -19
- data/spec/unit/parser/functions/inline_template_spec.rb +3 -3
- data/spec/unit/parser/functions/lookup_spec.rb +3 -140
- data/spec/unit/parser/functions/realize_spec.rb +0 -0
- data/spec/unit/parser/functions/regsubst_spec.rb +7 -179
- data/spec/unit/parser/functions/require_spec.rb +14 -21
- data/spec/unit/parser/functions/scanf_spec.rb +0 -0
- data/spec/unit/parser/functions/shellquote_spec.rb +20 -20
- data/spec/unit/parser/functions/split_spec.rb +2 -37
- data/spec/unit/parser/functions/sprintf_spec.rb +7 -11
- data/spec/unit/parser/functions/tag_spec.rb +3 -3
- data/spec/unit/parser/functions/template_spec.rb +10 -10
- data/spec/unit/parser/functions/versioncmp_spec.rb +3 -3
- data/spec/unit/parser/functions_spec.rb +8 -8
- data/spec/unit/parser/relationship_spec.rb +14 -32
- data/spec/unit/parser/resource/param_spec.rb +0 -0
- data/spec/unit/parser/resource_spec.rb +57 -57
- data/spec/unit/parser/scope_spec.rb +89 -101
- data/spec/unit/parser/templatewrapper_spec.rb +15 -32
- data/spec/unit/parser/type_loader_spec.rb +53 -73
- data/spec/unit/pops/adaptable_spec.rb +22 -22
- data/spec/unit/pops/binder/bindings_checker_spec.rb +14 -14
- data/spec/unit/pops/binder/bindings_composer_spec.rb +4 -6
- data/spec/unit/pops/binder/bindings_validator_factory_spec.rb +3 -3
- data/spec/unit/pops/binder/config/binder_config_spec.rb +8 -1
- data/spec/unit/pops/binder/injector_spec.rb +92 -92
- data/spec/unit/pops/containment_spec.rb +4 -4
- data/spec/unit/pops/evaluator/access_ops_spec.rb +5 -24
- data/spec/unit/pops/evaluator/arithmetic_ops_spec.rb +23 -23
- data/spec/unit/pops/evaluator/basic_expressions_spec.rb +22 -22
- data/spec/unit/pops/evaluator/collections_ops_spec.rb +1 -3
- data/spec/unit/pops/evaluator/comparison_ops_spec.rb +104 -107
- data/spec/unit/pops/evaluator/conditionals_spec.rb +39 -39
- data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +75 -143
- data/spec/unit/pops/evaluator/evaluator_rspec_helper.rb +1 -5
- data/spec/unit/pops/evaluator/logical_ops_spec.rb +15 -15
- data/spec/unit/pops/evaluator/string_interpolation_spec.rb +5 -5
- data/spec/unit/pops/evaluator/variables_spec.rb +18 -18
- data/spec/unit/pops/factory_rspec_helper.rb +0 -8
- data/spec/unit/pops/factory_spec.rb +104 -104
- data/spec/unit/pops/issues_spec.rb +21 -21
- data/spec/unit/pops/label_provider_spec.rb +6 -6
- data/spec/unit/pops/loaders/loaders_spec.rb +3 -3
- data/spec/unit/pops/model/model_spec.rb +10 -10
- data/spec/unit/pops/parser/epp_parser_spec.rb +20 -20
- data/spec/unit/pops/parser/evaluating_parser_spec.rb +2 -2
- data/spec/unit/pops/parser/lexer2_spec.rb +65 -276
- data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +91 -91
- data/spec/unit/pops/parser/parse_calls_spec.rb +19 -19
- data/spec/unit/pops/parser/parse_conditionals_spec.rb +38 -22
- data/spec/unit/pops/parser/parse_containers_spec.rb +47 -47
- data/spec/unit/pops/parser/parse_heredoc_spec.rb +15 -62
- data/spec/unit/pops/parser/parse_resource_spec.rb +75 -70
- data/spec/unit/pops/parser/parser_rspec_helper.rb +0 -5
- data/spec/unit/pops/parser/parser_spec.rb +7 -7
- data/spec/unit/pops/parser/parsing_typed_parameters_spec.rb +0 -7
- data/spec/unit/pops/parser/rgen_sanitycheck_spec.rb +2 -2
- data/spec/unit/pops/types/class_loader_spec.rb +10 -0
- data/spec/unit/pops/types/type_calculator_spec.rb +456 -651
- data/spec/unit/pops/types/type_factory_spec.rb +59 -59
- data/spec/unit/pops/types/type_parser_spec.rb +2 -10
- data/spec/unit/pops/validator/validator_spec.rb +3 -57
- data/spec/unit/pops/visitor_spec.rb +4 -4
- data/spec/unit/property/boolean_spec.rb +2 -2
- data/spec/unit/property/ensure_spec.rb +1 -1
- data/spec/unit/property/keyvalue_spec.rb +16 -16
- data/spec/unit/property/list_spec.rb +18 -18
- data/spec/unit/property/ordered_list_spec.rb +7 -7
- data/spec/unit/property_spec.rb +72 -96
- data/spec/unit/provider/aixobject_spec.rb +12 -12
- data/spec/unit/provider/augeas/augeas_spec.rb +171 -149
- data/spec/unit/provider/cisco_spec.rb +2 -2
- data/spec/unit/provider/command_spec.rb +1 -1
- data/spec/unit/provider/cron/crontab_spec.rb +9 -9
- data/spec/unit/provider/cron/parsed_spec.rb +59 -38
- data/spec/unit/provider/exec/posix_spec.rb +9 -19
- data/spec/unit/provider/exec/shell_spec.rb +13 -13
- data/spec/unit/provider/exec/windows_spec.rb +10 -10
- data/spec/unit/provider/exec_spec.rb +2 -2
- data/spec/unit/provider/file/posix_spec.rb +27 -27
- data/spec/unit/provider/file/windows_spec.rb +15 -15
- data/spec/unit/provider/group/groupadd_spec.rb +1 -1
- data/spec/unit/provider/group/ldap_spec.rb +11 -11
- data/spec/unit/provider/group/pw_spec.rb +3 -3
- data/spec/unit/provider/group/windows_adsi_spec.rb +48 -62
- data/spec/unit/provider/host/parsed_spec.rb +58 -22
- data/spec/unit/provider/interface/cisco_spec.rb +3 -3
- data/spec/unit/provider/ldap_spec.rb +23 -23
- data/spec/unit/provider/macauthorization_spec.rb +6 -6
- data/spec/unit/provider/mcx/mcxcontent_spec.rb +6 -6
- data/spec/unit/provider/mount/parsed_spec.rb +101 -119
- data/spec/unit/provider/mount_spec.rb +0 -0
- data/spec/unit/provider/naginator_spec.rb +8 -8
- data/spec/unit/provider/nameservice/directoryservice_spec.rb +5 -27
- data/spec/unit/provider/nameservice_spec.rb +26 -26
- data/spec/unit/provider/network_device_spec.rb +11 -11
- data/spec/unit/provider/package/aix_spec.rb +3 -3
- data/spec/unit/provider/package/appdmg_spec.rb +1 -1
- data/spec/unit/provider/package/apt_spec.rb +4 -4
- data/spec/unit/provider/package/aptitude_spec.rb +1 -1
- data/spec/unit/provider/package/aptrpm_spec.rb +3 -3
- data/spec/unit/provider/package/dpkg_spec.rb +0 -0
- data/spec/unit/provider/package/freebsd_spec.rb +1 -1
- data/spec/unit/provider/package/gem_spec.rb +12 -12
- data/spec/unit/provider/package/hpux_spec.rb +3 -3
- data/spec/unit/provider/package/macports_spec.rb +15 -15
- data/spec/unit/provider/package/nim_spec.rb +11 -11
- data/spec/unit/provider/package/openbsd_spec.rb +72 -37
- data/spec/unit/provider/package/opkg_spec.rb +14 -11
- data/spec/unit/provider/package/pacman_spec.rb +185 -86
- data/spec/unit/provider/package/pip_spec.rb +25 -54
- data/spec/unit/provider/package/pkg_spec.rb +145 -71
- data/spec/unit/provider/package/pkgdmg_spec.rb +9 -9
- data/spec/unit/provider/package/pkgin_spec.rb +18 -18
- data/spec/unit/provider/package/pkgutil_spec.rb +19 -19
- data/spec/unit/provider/package/portage_spec.rb +8 -4
- data/spec/unit/provider/package/rpm_spec.rb +103 -9
- data/spec/unit/provider/package/sun_spec.rb +14 -14
- data/spec/unit/provider/package/up2date_spec.rb +1 -1
- data/spec/unit/provider/package/{urpmi.rb → urpmi_spec.rb} +3 -3
- data/spec/unit/provider/package/windows/exe_package_spec.rb +15 -13
- data/spec/unit/provider/package/windows/msi_package_spec.rb +16 -16
- data/spec/unit/provider/package/windows/package_spec.rb +14 -14
- data/spec/unit/provider/package/windows_spec.rb +26 -26
- data/spec/unit/provider/package/yum_spec.rb +292 -98
- data/spec/unit/provider/package/zypper_spec.rb +20 -31
- data/spec/unit/provider/parsedfile_spec.rb +9 -9
- data/spec/unit/provider/scheduled_task/win32_taskscheduler_spec.rb +192 -434
- data/spec/unit/provider/selboolean_spec.rb +2 -2
- data/spec/unit/provider/selmodule_spec.rb +8 -8
- data/spec/unit/provider/service/base_spec.rb +27 -38
- data/spec/unit/provider/service/daemontools_spec.rb +11 -11
- data/spec/unit/provider/service/debian_spec.rb +8 -8
- data/spec/unit/provider/service/freebsd_spec.rb +7 -8
- data/spec/unit/provider/service/gentoo_spec.rb +12 -13
- data/spec/unit/provider/service/init_spec.rb +25 -38
- data/spec/unit/provider/service/launchd_spec.rb +19 -125
- data/spec/unit/provider/service/openbsd_spec.rb +90 -144
- data/spec/unit/provider/service/openrc_spec.rb +14 -14
- data/spec/unit/provider/service/openwrt_spec.rb +9 -9
- data/spec/unit/provider/service/redhat_spec.rb +14 -15
- data/spec/unit/provider/service/runit_spec.rb +11 -11
- data/spec/unit/provider/service/smf_spec.rb +19 -19
- data/spec/unit/provider/service/src_spec.rb +9 -9
- data/spec/unit/provider/service/systemd_spec.rb +33 -15
- data/spec/unit/provider/service/upstart_spec.rb +59 -59
- data/spec/unit/provider/service/windows_spec.rb +6 -6
- data/spec/unit/provider/ssh_authorized_key/parsed_spec.rb +18 -18
- data/spec/unit/provider/sshkey/parsed_spec.rb +11 -11
- data/spec/unit/provider/user/aix_spec.rb +19 -19
- data/spec/unit/provider/user/directoryservice_spec.rb +51 -95
- data/spec/unit/provider/user/hpux_spec.rb +24 -3
- data/spec/unit/provider/user/ldap_spec.rb +12 -12
- data/spec/unit/provider/user/openbsd_spec.rb +77 -0
- data/spec/unit/provider/user/pw_spec.rb +5 -5
- data/spec/unit/provider/user/user_role_add_spec.rb +20 -20
- data/spec/unit/provider/user/useradd_spec.rb +48 -32
- data/spec/unit/provider/user/windows_adsi_spec.rb +9 -31
- data/spec/unit/provider/vlan/cisco_spec.rb +3 -3
- data/spec/unit/provider/yumrepo/inifile_spec.rb +3 -3
- data/spec/unit/provider/zfs/zfs_spec.rb +11 -11
- data/spec/unit/provider/zone/solaris_spec.rb +22 -55
- data/spec/unit/provider/zpool/zpool_spec.rb +22 -22
- data/spec/unit/provider_spec.rb +110 -102
- data/spec/unit/puppet_spec.rb +15 -8
- data/spec/unit/relationship_spec.rb +37 -41
- data/spec/unit/reports/http_spec.rb +0 -0
- data/spec/unit/reports/store_spec.rb +3 -3
- data/spec/unit/reports_spec.rb +5 -5
- data/spec/unit/resource/catalog_spec.rb +93 -111
- data/spec/unit/resource/status_spec.rb +49 -75
- data/spec/unit/resource/type_collection_helper_spec.rb +1 -1
- data/spec/unit/resource/type_collection_spec.rb +59 -164
- data/spec/unit/resource/type_spec.rb +115 -120
- data/spec/unit/resource_spec.rb +176 -159
- data/spec/unit/scheduler/job_spec.rb +12 -12
- data/spec/unit/scheduler/scheduler_spec.rb +8 -8
- data/spec/unit/scheduler/splay_job_spec.rb +4 -4
- data/spec/unit/semver_spec.rb +66 -64
- data/spec/unit/settings/autosign_setting_spec.rb +1 -0
- data/spec/unit/settings/config_file_spec.rb +13 -40
- data/spec/unit/settings/directory_setting_spec.rb +1 -1
- data/spec/unit/settings/duration_setting_spec.rb +9 -5
- data/spec/unit/settings/environment_conf_spec.rb +0 -11
- data/spec/unit/settings/file_setting_spec.rb +38 -69
- data/spec/unit/settings/ini_file_spec.rb +2 -2
- data/spec/unit/settings/path_setting_spec.rb +5 -5
- data/spec/unit/settings/priority_setting_spec.rb +7 -7
- data/spec/unit/settings/string_setting_spec.rb +7 -7
- data/spec/unit/settings/terminus_setting_spec.rb +4 -4
- data/spec/unit/settings/value_translator_spec.rb +22 -22
- data/spec/unit/settings_spec.rb +189 -338
- data/spec/unit/ssl/base_spec.rb +5 -5
- data/spec/unit/ssl/certificate_authority/autosign_command_spec.rb +2 -2
- data/spec/unit/ssl/certificate_authority/interface_spec.rb +40 -13
- data/spec/unit/ssl/certificate_authority_spec.rb +23 -23
- data/spec/unit/ssl/certificate_factory_spec.rb +39 -26
- data/spec/unit/ssl/certificate_request_attributes_spec.rb +2 -2
- data/spec/unit/ssl/certificate_request_spec.rb +52 -40
- data/spec/unit/ssl/certificate_revocation_list_spec.rb +10 -10
- data/spec/unit/ssl/certificate_spec.rb +35 -38
- data/spec/unit/ssl/configuration_spec.rb +12 -14
- data/spec/unit/ssl/digest_spec.rb +5 -5
- data/spec/unit/ssl/host_spec.rb +91 -91
- data/spec/unit/ssl/inventory_spec.rb +11 -34
- data/spec/unit/ssl/key_spec.rb +23 -23
- data/spec/unit/ssl/oids_spec.rb +28 -15
- data/spec/unit/ssl/validator_spec.rb +16 -17
- data/spec/unit/status_spec.rb +6 -12
- data/spec/unit/transaction/additional_resource_generator_spec.rb +2 -2
- data/spec/unit/transaction/event_manager_spec.rb +38 -8
- data/spec/unit/transaction/event_spec.rb +29 -29
- data/spec/unit/transaction/report_spec.rb +76 -90
- data/spec/unit/transaction/resource_harness_spec.rb +42 -42
- data/spec/unit/transaction_spec.rb +66 -59
- data/spec/unit/type/augeas_spec.rb +20 -20
- data/spec/unit/type/component_spec.rb +10 -10
- data/spec/unit/type/computer_spec.rb +10 -10
- data/spec/unit/type/cron_spec.rb +21 -21
- data/spec/unit/type/exec_spec.rb +65 -73
- data/spec/unit/type/file/checksum_spec.rb +8 -8
- data/spec/unit/type/file/content_spec.rb +144 -85
- data/spec/unit/type/file/ctime_spec.rb +4 -4
- data/spec/unit/type/file/ensure_spec.rb +11 -11
- data/spec/unit/type/file/group_spec.rb +5 -5
- data/spec/unit/type/file/mode_spec.rb +30 -28
- data/spec/unit/type/file/mtime_spec.rb +4 -4
- data/spec/unit/type/file/owner_spec.rb +5 -5
- data/spec/unit/type/file/selinux_spec.rb +8 -8
- data/spec/unit/type/file/source_spec.rb +118 -135
- data/spec/unit/type/file/type_spec.rb +2 -2
- data/spec/unit/type/file_spec.rb +161 -160
- data/spec/unit/type/filebucket_spec.rb +8 -8
- data/spec/unit/type/group_spec.rb +12 -12
- data/spec/unit/type/host_spec.rb +41 -25
- data/spec/unit/type/interface_spec.rb +6 -6
- data/spec/unit/type/k5login_spec.rb +18 -18
- data/spec/unit/type/macauthorization_spec.rb +17 -17
- data/spec/unit/type/mailalias_spec.rb +34 -6
- data/spec/unit/type/maillist_spec.rb +2 -2
- data/spec/unit/type/mcx_spec.rb +13 -13
- data/spec/unit/type/mount_spec.rb +40 -40
- data/spec/unit/type/nagios_spec.rb +23 -23
- data/spec/unit/type/noop_metaparam_spec.rb +5 -5
- data/spec/unit/type/package/package_settings_spec.rb +9 -9
- data/spec/unit/type/package_spec.rb +87 -18
- data/spec/unit/type/resources_spec.rb +46 -46
- data/spec/unit/type/schedule_spec.rb +83 -83
- data/spec/unit/type/scheduled_task_spec.rb +15 -15
- data/spec/unit/type/selboolean_spec.rb +2 -2
- data/spec/unit/type/selmodule_spec.rb +2 -2
- data/spec/unit/type/service_spec.rb +24 -24
- data/spec/unit/type/ssh_authorized_key_spec.rb +2 -2
- data/spec/unit/type/sshkey_spec.rb +0 -0
- data/spec/unit/type/stage_spec.rb +1 -1
- data/spec/unit/type/tidy_spec.rb +58 -39
- data/spec/unit/type/user_spec.rb +56 -56
- data/spec/unit/type/vlan_spec.rb +6 -6
- data/spec/unit/type/whit_spec.rb +1 -1
- data/spec/unit/type/yumrepo_spec.rb +15 -0
- data/spec/unit/type/zfs_spec.rb +3 -3
- data/spec/unit/type/zone_spec.rb +19 -19
- data/spec/unit/type/zpool_spec.rb +15 -15
- data/spec/unit/type_spec.rb +236 -163
- data/spec/unit/util/autoload_spec.rb +31 -25
- data/spec/unit/util/backups_spec.rb +4 -4
- data/spec/unit/util/checksums_spec.rb +55 -27
- data/spec/unit/util/colors_spec.rb +6 -50
- data/spec/unit/util/command_line_spec.rb +13 -41
- data/spec/unit/util/command_line_utils/puppet_option_parser_spec.rb +2 -2
- data/spec/unit/util/constant_inflector_spec.rb +12 -12
- data/spec/unit/util/diff_spec.rb +4 -4
- data/spec/unit/util/errors_spec.rb +5 -5
- data/spec/unit/util/execution_spec.rb +74 -29
- data/spec/unit/util/execution_stub_spec.rb +10 -10
- data/spec/unit/util/feature_spec.rb +15 -19
- data/spec/unit/util/filetype_spec.rb +9 -9
- data/spec/unit/util/http_proxy_spec.rb +18 -18
- data/spec/unit/util/inifile_spec.rb +2 -2
- data/spec/unit/util/json_lockfile_spec.rb +1 -1
- data/spec/unit/util/ldap/connection_spec.rb +6 -6
- data/spec/unit/util/ldap/generator_spec.rb +8 -8
- data/spec/unit/util/ldap/manager_spec.rb +40 -40
- data/spec/unit/util/lockfile_spec.rb +13 -13
- data/spec/unit/util/log/destinations_spec.rb +52 -49
- data/spec/unit/util/log_spec.rb +48 -173
- data/spec/unit/util/logging_spec.rb +120 -3
- data/spec/unit/util/metric_spec.rb +18 -33
- data/spec/unit/util/monkey_patches_spec.rb +18 -139
- data/spec/unit/util/nagios_maker_spec.rb +2 -2
- data/spec/unit/util/network_device/cisco/device_spec.rb +23 -23
- data/spec/unit/util/network_device/cisco/facts_spec.rb +3 -3
- data/spec/unit/util/network_device/cisco/interface_spec.rb +0 -0
- data/spec/unit/util/network_device/config_spec.rb +10 -16
- data/spec/unit/util/network_device/ipcalc_spec.rb +10 -10
- data/spec/unit/util/network_device/transport/base_spec.rb +2 -2
- data/spec/unit/util/network_device/transport/ssh_spec.rb +10 -10
- data/spec/unit/util/network_device/transport/telnet_spec.rb +3 -3
- data/spec/unit/util/network_device_spec.rb +2 -2
- data/spec/unit/util/package_spec.rb +2 -2
- data/spec/unit/util/pidlock_spec.rb +38 -38
- data/spec/unit/util/posix_spec.rb +25 -25
- data/spec/unit/util/profiler/aggregate_spec.rb +14 -18
- data/spec/unit/util/profiler/around_profiler_spec.rb +6 -6
- data/spec/unit/util/profiler/logging_spec.rb +8 -8
- data/spec/unit/util/profiler/object_counts_spec.rb +3 -5
- data/spec/unit/util/profiler/wall_clock_spec.rb +1 -1
- data/spec/unit/util/profiler_spec.rb +6 -14
- data/spec/unit/util/rdoc_spec.rb +0 -85
- data/spec/unit/util/reference_spec.rb +1 -1
- data/spec/unit/util/resource_template_spec.rb +2 -2
- data/spec/unit/util/{retryaction_spec.rb → retry_action_spec.rb} +25 -2
- data/spec/unit/util/rubygems_spec.rb +8 -8
- data/spec/unit/util/run_mode_spec.rb +159 -17
- data/spec/unit/util/selinux_spec.rb +61 -39
- data/spec/unit/util/ssl_spec.rb +13 -13
- data/spec/unit/util/storage_spec.rb +27 -27
- data/spec/unit/util/suidmanager_spec.rb +56 -67
- data/spec/unit/util/symbolic_file_mode_spec.rb +15 -16
- data/spec/unit/util/tag_set_spec.rb +5 -5
- data/spec/unit/util/tagging_spec.rb +0 -0
- data/spec/unit/util/terminal_spec.rb +5 -5
- data/spec/unit/util/user_attr_spec.rb +6 -6
- data/spec/unit/util/warnings_spec.rb +9 -1
- data/spec/unit/util/watcher_spec.rb +1 -1
- data/spec/unit/util/windows/access_control_entry_spec.rb +9 -9
- data/spec/unit/util/windows/access_control_list_spec.rb +21 -21
- data/spec/unit/util/windows/adsi_spec.rb +71 -209
- data/spec/unit/util/windows/api_types_spec.rb +3 -3
- data/spec/unit/util/windows/registry_spec.rb +71 -46
- data/spec/unit/util/windows/root_certs_spec.rb +1 -1
- data/spec/unit/util/windows/security_descriptor_spec.rb +18 -18
- data/spec/unit/util/windows/sid_spec.rb +40 -20
- data/spec/unit/util/windows/string_spec.rb +4 -4
- data/spec/unit/util/yaml_spec.rb +1 -1
- data/spec/unit/util_spec.rb +73 -124
- data/spec/unit/version_spec.rb +4 -4
- data/spec/watchr.rb +1 -5
- data/tasks/benchmark.rake +1 -6
- data/tasks/ci.rake +1 -1
- data/tasks/manpages.rake +0 -9
- data/tasks/parallel.rake +4 -7
- data/tasks/parser.rake +0 -5
- metadata +179 -465
- data/conf/tagmail.conf +0 -16
- data/ext/debian/puppet.conf +0 -14
- data/ext/debian/puppetmaster-common.puppetqd.default +0 -27
- data/ext/debian/puppetmaster-common.puppetqd.init +0 -84
- data/ext/gentoo/puppet/puppet.conf +0 -25
- data/ext/ips/puppet.conf +0 -29
- data/ext/nagios/naggen +0 -309
- data/ext/puppet-load.rb +0 -393
- data/ext/redhat/puppet.conf +0 -25
- data/ext/redhat/queue.init +0 -105
- data/lib/hiera/backend/puppet_backend.rb +0 -103
- data/lib/puppet/application/instrumentation_data.rb +0 -7
- data/lib/puppet/application/instrumentation_listener.rb +0 -7
- data/lib/puppet/application/instrumentation_probe.rb +0 -7
- data/lib/puppet/application/kick.rb +0 -351
- data/lib/puppet/application/queue.rb +0 -161
- data/lib/puppet/application/secret_agent.rb +0 -9
- data/lib/puppet/dsl.rb +0 -7
- data/lib/puppet/dsl/resource_api.rb +0 -120
- data/lib/puppet/dsl/resource_type_api.rb +0 -34
- data/lib/puppet/face/instrumentation_data.rb +0 -30
- data/lib/puppet/face/instrumentation_listener.rb +0 -98
- data/lib/puppet/face/instrumentation_probe.rb +0 -79
- data/lib/puppet/face/secret_agent.rb +0 -54
- data/lib/puppet/feature/pson.rb +0 -4
- data/lib/puppet/feature/rails.rb +0 -47
- data/lib/puppet/feature/rdoc1.rb +0 -16
- data/lib/puppet/feature/rubygems.rb +0 -7
- data/lib/puppet/feature/stomp.rb +0 -5
- data/lib/puppet/file_collection.rb +0 -19
- data/lib/puppet/file_collection/lookup.rb +0 -10
- data/lib/puppet/file_system/file18.rb +0 -5
- data/lib/puppet/functions/defined.rb +0 -130
- data/lib/puppet/indirector/active_record.rb +0 -29
- data/lib/puppet/indirector/catalog/active_record.rb +0 -39
- data/lib/puppet/indirector/catalog/queue.rb +0 -9
- data/lib/puppet/indirector/couch.rb +0 -78
- data/lib/puppet/indirector/facts/active_record.rb +0 -44
- data/lib/puppet/indirector/facts/couch.rb +0 -36
- data/lib/puppet/indirector/facts/inventory_active_record.rb +0 -110
- data/lib/puppet/indirector/facts/inventory_service.rb +0 -20
- data/lib/puppet/indirector/facts/rest.rb +0 -8
- data/lib/puppet/indirector/instrumentation_data.rb +0 -3
- data/lib/puppet/indirector/instrumentation_data/local.rb +0 -22
- data/lib/puppet/indirector/instrumentation_data/rest.rb +0 -8
- data/lib/puppet/indirector/instrumentation_listener.rb +0 -3
- data/lib/puppet/indirector/instrumentation_listener/local.rb +0 -26
- data/lib/puppet/indirector/instrumentation_listener/rest.rb +0 -8
- data/lib/puppet/indirector/instrumentation_probe.rb +0 -3
- data/lib/puppet/indirector/instrumentation_probe/local.rb +0 -27
- data/lib/puppet/indirector/instrumentation_probe/rest.rb +0 -8
- data/lib/puppet/indirector/node/active_record.rb +0 -22
- data/lib/puppet/indirector/queue.rb +0 -80
- data/lib/puppet/indirector/resource/active_record.rb +0 -104
- data/lib/puppet/indirector/resource/rest.rb +0 -17
- data/lib/puppet/indirector/run/local.rb +0 -15
- data/lib/puppet/indirector/run/rest.rb +0 -12
- data/lib/puppet/module_tool/modulefile.rb +0 -78
- data/lib/puppet/network/authentication.rb +0 -35
- data/lib/puppet/network/http/api/v2.rb +0 -32
- data/lib/puppet/network/http/api/v2/authorization.rb +0 -15
- data/lib/puppet/parser/ast/arithmetic_operator.rb +0 -91
- data/lib/puppet/parser/ast/astarray.rb +0 -50
- data/lib/puppet/parser/ast/asthash.rb +0 -37
- data/lib/puppet/parser/ast/boolean_operator.rb +0 -46
- data/lib/puppet/parser/ast/caseopt.rb +0 -52
- data/lib/puppet/parser/ast/casestatement.rb +0 -41
- data/lib/puppet/parser/ast/collection.rb +0 -53
- data/lib/puppet/parser/ast/collexpr.rb +0 -109
- data/lib/puppet/parser/ast/comparison_operator.rb +0 -38
- data/lib/puppet/parser/ast/definition.rb +0 -17
- data/lib/puppet/parser/ast/else.rb +0 -22
- data/lib/puppet/parser/ast/function.rb +0 -59
- data/lib/puppet/parser/ast/ifstatement.rb +0 -34
- data/lib/puppet/parser/ast/in_operator.rb +0 -24
- data/lib/puppet/parser/ast/lambda.rb +0 -135
- data/lib/puppet/parser/ast/match_operator.rb +0 -28
- data/lib/puppet/parser/ast/method_call.rb +0 -77
- data/lib/puppet/parser/ast/minus.rb +0 -23
- data/lib/puppet/parser/ast/nop.rb +0 -11
- data/lib/puppet/parser/ast/not.rb +0 -19
- data/lib/puppet/parser/ast/relationship.rb +0 -47
- data/lib/puppet/parser/ast/resource_defaults.rb +0 -24
- data/lib/puppet/parser/ast/resource_override.rb +0 -62
- data/lib/puppet/parser/ast/resource_reference.rb +0 -28
- data/lib/puppet/parser/ast/selector.rb +0 -50
- data/lib/puppet/parser/ast/vardef.rb +0 -38
- data/lib/puppet/parser/code_merger.rb +0 -13
- data/lib/puppet/parser/collector.rb +0 -177
- data/lib/puppet/parser/functions/extlookup.rb +0 -153
- data/lib/puppet/parser/functions/search.rb +0 -12
- data/lib/puppet/parser/grammar.ra +0 -806
- data/lib/puppet/parser/lexer.rb +0 -608
- data/lib/puppet/parser/makefile +0 -8
- data/lib/puppet/parser/methods.rb +0 -69
- data/lib/puppet/parser/parser.rb +0 -2559
- data/lib/puppet/parser/parser_support.rb +0 -195
- data/lib/puppet/pops/binder/lookup.rb +0 -216
- data/lib/puppet/pops/migration/migration_checker.rb +0 -45
- data/lib/puppet/pops/model/ast_tree_dumper.rb +0 -386
- data/lib/puppet/provider/package/msi.rb +0 -125
- data/lib/puppet/provider/package/yumhelper.py +0 -159
- data/lib/puppet/rails.rb +0 -139
- data/lib/puppet/rails/benchmark.rb +0 -63
- data/lib/puppet/rails/database/001_add_created_at_to_all_tables.rb +0 -13
- data/lib/puppet/rails/database/002_remove_duplicated_index_on_all_tables.rb +0 -13
- data/lib/puppet/rails/database/003_add_environment_to_host.rb +0 -9
- data/lib/puppet/rails/database/004_add_inventory_service_tables.rb +0 -36
- data/lib/puppet/rails/database/schema.rb +0 -136
- data/lib/puppet/rails/fact_name.rb +0 -7
- data/lib/puppet/rails/fact_value.rb +0 -10
- data/lib/puppet/rails/host.rb +0 -258
- data/lib/puppet/rails/inventory_fact.rb +0 -5
- data/lib/puppet/rails/inventory_node.rb +0 -43
- data/lib/puppet/rails/param_name.rb +0 -25
- data/lib/puppet/rails/param_value.rb +0 -74
- data/lib/puppet/rails/puppet_tag.rb +0 -10
- data/lib/puppet/rails/resource.rb +0 -235
- data/lib/puppet/rails/resource_tag.rb +0 -26
- data/lib/puppet/rails/source_file.rb +0 -8
- data/lib/puppet/reports/rrdgraph.rb +0 -128
- data/lib/puppet/reports/tagmail.rb +0 -179
- data/lib/puppet/run.rb +0 -109
- data/lib/puppet/util/cacher.rb +0 -74
- data/lib/puppet/util/inline_docs.rb +0 -26
- data/lib/puppet/util/instrumentation.rb +0 -152
- data/lib/puppet/util/instrumentation/data.rb +0 -46
- data/lib/puppet/util/instrumentation/indirection_probe.rb +0 -41
- data/lib/puppet/util/instrumentation/instrumentable.rb +0 -136
- data/lib/puppet/util/instrumentation/listener.rb +0 -72
- data/lib/puppet/util/instrumentation/listeners/log.rb +0 -23
- data/lib/puppet/util/instrumentation/listeners/performance.rb +0 -24
- data/lib/puppet/util/log/rate_limited_logger.rb +0 -40
- data/lib/puppet/util/monkey_patches/lines.rb +0 -13
- data/lib/puppet/util/plugins.rb +0 -82
- data/lib/puppet/util/pson.rb +0 -13
- data/lib/puppet/util/queue.rb +0 -96
- data/lib/puppet/util/queue/stomp.rb +0 -60
- data/lib/puppet/util/rails/cache_accumulator.rb +0 -65
- data/lib/puppet/util/rails/collection_merger.rb +0 -17
- data/lib/puppet/util/rails/reference_serializer.rb +0 -32
- data/lib/puppet/util/rdoc/parser/puppet_parser_rdoc1.rb +0 -19
- data/lib/puppet/util/retryaction.rb +0 -47
- data/lib/puppet/util/zaml.rb +0 -419
- data/lib/puppet/vendor/load_safe_yaml.rb +0 -1
- data/lib/puppet/vendor/safe_yaml/CHANGES.md +0 -104
- data/lib/puppet/vendor/safe_yaml/Gemfile +0 -11
- data/lib/puppet/vendor/safe_yaml/LICENSE.txt +0 -22
- data/lib/puppet/vendor/safe_yaml/PUPPET_README.md +0 -6
- data/lib/puppet/vendor/safe_yaml/README.md +0 -179
- data/lib/puppet/vendor/safe_yaml/Rakefile +0 -6
- data/lib/puppet/vendor/safe_yaml/lib/safe_yaml.rb +0 -253
- data/lib/puppet/vendor/safe_yaml/lib/safe_yaml/deep.rb +0 -34
- data/lib/puppet/vendor/safe_yaml/lib/safe_yaml/parse/date.rb +0 -27
- data/lib/puppet/vendor/safe_yaml/lib/safe_yaml/parse/hexadecimal.rb +0 -12
- data/lib/puppet/vendor/safe_yaml/lib/safe_yaml/parse/sexagesimal.rb +0 -26
- data/lib/puppet/vendor/safe_yaml/lib/safe_yaml/psych_handler.rb +0 -92
- data/lib/puppet/vendor/safe_yaml/lib/safe_yaml/psych_resolver.rb +0 -52
- data/lib/puppet/vendor/safe_yaml/lib/safe_yaml/resolver.rb +0 -94
- data/lib/puppet/vendor/safe_yaml/lib/safe_yaml/safe_to_ruby_visitor.rb +0 -17
- data/lib/puppet/vendor/safe_yaml/lib/safe_yaml/syck_hack.rb +0 -36
- data/lib/puppet/vendor/safe_yaml/lib/safe_yaml/syck_node_monkeypatch.rb +0 -43
- data/lib/puppet/vendor/safe_yaml/lib/safe_yaml/syck_resolver.rb +0 -38
- data/lib/puppet/vendor/safe_yaml/lib/safe_yaml/transform.rb +0 -41
- data/lib/puppet/vendor/safe_yaml/lib/safe_yaml/transform/to_boolean.rb +0 -21
- data/lib/puppet/vendor/safe_yaml/lib/safe_yaml/transform/to_date.rb +0 -11
- data/lib/puppet/vendor/safe_yaml/lib/safe_yaml/transform/to_float.rb +0 -33
- data/lib/puppet/vendor/safe_yaml/lib/safe_yaml/transform/to_integer.rb +0 -25
- data/lib/puppet/vendor/safe_yaml/lib/safe_yaml/transform/to_nil.rb +0 -18
- data/lib/puppet/vendor/safe_yaml/lib/safe_yaml/transform/to_symbol.rb +0 -13
- data/lib/puppet/vendor/safe_yaml/lib/safe_yaml/transform/transformation_map.rb +0 -47
- data/lib/puppet/vendor/safe_yaml/lib/safe_yaml/version.rb +0 -3
- data/lib/puppet/vendor/safe_yaml/run_specs_all_ruby_versions.sh +0 -21
- data/lib/puppet/vendor/safe_yaml/safe_yaml.gemspec +0 -18
- data/lib/puppet/vendor/safe_yaml/spec/exploit.1.9.2.yaml +0 -2
- data/lib/puppet/vendor/safe_yaml/spec/exploit.1.9.3.yaml +0 -2
- data/lib/puppet/vendor/safe_yaml/spec/psych_resolver_spec.rb +0 -10
- data/lib/puppet/vendor/safe_yaml/spec/resolver_specs.rb +0 -250
- data/lib/puppet/vendor/safe_yaml/spec/safe_yaml_spec.rb +0 -702
- data/lib/puppet/vendor/safe_yaml/spec/spec_helper.rb +0 -18
- data/lib/puppet/vendor/safe_yaml/spec/support/exploitable_back_door.rb +0 -29
- data/lib/puppet/vendor/safe_yaml/spec/syck_resolver_spec.rb +0 -10
- data/lib/puppet/vendor/safe_yaml/spec/transform/base64_spec.rb +0 -11
- data/lib/puppet/vendor/safe_yaml/spec/transform/to_date_spec.rb +0 -34
- data/lib/puppet/vendor/safe_yaml/spec/transform/to_float_spec.rb +0 -42
- data/lib/puppet/vendor/safe_yaml/spec/transform/to_integer_spec.rb +0 -59
- data/lib/puppet/vendor/safe_yaml/spec/transform/to_symbol_spec.rb +0 -49
- data/lib/puppet/vendor/safe_yaml_patches.rb +0 -9
- data/lib/puppetx.rb +0 -89
- data/man/man8/puppet-instrumentation_data.8 +0 -141
- data/man/man8/puppet-instrumentation_listener.8 +0 -218
- data/man/man8/puppet-instrumentation_probe.8 +0 -203
- data/man/man8/puppet-kick.8 +0 -131
- data/man/man8/puppet-queue.8 +0 -55
- data/man/man8/puppet-secret_agent.8 +0 -70
- data/spec/fixtures/module.tar.gz +0 -0
- data/spec/fixtures/unit/provider/package/pkg/publisher +0 -2
- data/spec/fixtures/unit/provider/package/pkg/simple +0 -2
- data/spec/fixtures/yaml/report0.25.x.yaml +0 -64
- data/spec/integration/indirector/catalog/queue_spec.rb +0 -55
- data/spec/integration/module_tool/tar/mini_spec.rb +0 -28
- data/spec/integration/parser/dynamic_scoping_spec.rb +0 -131
- data/spec/integration/parser/future_compiler_spec.rb +0 -822
- data/spec/integration/parser/parser_spec.rb +0 -207
- data/spec/integration/parser/ruby_manifest_spec.rb +0 -119
- data/spec/integration/type/sshkey_spec.rb +0 -22
- data/spec/integration/util/feature_spec.rb +0 -53
- data/spec/lib/puppet_spec/database.rb +0 -29
- data/spec/monkey_patches/alias_should_to_must.rb +0 -21
- data/spec/shared_contexts/platform.rb +0 -52
- data/spec/unit/application/kick_spec.rb +0 -296
- data/spec/unit/application/queue_spec.rb +0 -168
- data/spec/unit/application/secret_agent_spec.rb +0 -34
- data/spec/unit/dsl/resource_api_spec.rb +0 -180
- data/spec/unit/dsl/resource_type_api_spec.rb +0 -53
- data/spec/unit/face/instrumentation_data_spec.rb +0 -7
- data/spec/unit/face/instrumentation_listener_spec.rb +0 -38
- data/spec/unit/face/instrumentation_probe_spec.rb +0 -21
- data/spec/unit/face/secret_agent_spec.rb +0 -27
- data/spec/unit/functions/defined_spec.rb +0 -291
- data/spec/unit/hiera/backend/puppet_backend_spec.rb +0 -148
- data/spec/unit/indirector/active_record_spec.rb +0 -75
- data/spec/unit/indirector/catalog/active_record_spec.rb +0 -107
- data/spec/unit/indirector/catalog/queue_spec.rb +0 -19
- data/spec/unit/indirector/facts/active_record_spec.rb +0 -113
- data/spec/unit/indirector/facts/couch_spec.rb +0 -102
- data/spec/unit/indirector/facts/inventory_active_record_spec.rb +0 -175
- data/spec/unit/indirector/facts/inventory_service_spec.rb +0 -21
- data/spec/unit/indirector/facts/rest_spec.rb +0 -10
- data/spec/unit/indirector/instrumentation_data/local_spec.rb +0 -52
- data/spec/unit/indirector/instrumentation_data/rest_spec.rb +0 -11
- data/spec/unit/indirector/instrumentation_listener/local_spec.rb +0 -65
- data/spec/unit/indirector/instrumentation_listener/rest_spec.rb +0 -11
- data/spec/unit/indirector/instrumentation_probe/local_spec.rb +0 -65
- data/spec/unit/indirector/instrumentation_probe/rest_spec.rb +0 -11
- data/spec/unit/indirector/node/active_record_spec.rb +0 -48
- data/spec/unit/indirector/queue_spec.rb +0 -115
- data/spec/unit/indirector/resource/active_record_spec.rb +0 -166
- data/spec/unit/indirector/resource/rest_spec.rb +0 -10
- data/spec/unit/indirector/run/local_spec.rb +0 -21
- data/spec/unit/indirector/run/rest_spec.rb +0 -10
- data/spec/unit/network/authentication_spec.rb +0 -104
- data/spec/unit/network/http/api/v2_spec.rb +0 -14
- data/spec/unit/parser/ast/arithmetic_operator_spec.rb +0 -160
- data/spec/unit/parser/ast/astarray_spec.rb +0 -56
- data/spec/unit/parser/ast/asthash_spec.rb +0 -98
- data/spec/unit/parser/ast/boolean_operator_spec.rb +0 -54
- data/spec/unit/parser/ast/casestatement_spec.rb +0 -168
- data/spec/unit/parser/ast/collection_spec.rb +0 -70
- data/spec/unit/parser/ast/collexpr_spec.rb +0 -120
- data/spec/unit/parser/ast/comparison_operator_spec.rb +0 -118
- data/spec/unit/parser/ast/definition_spec.rb +0 -21
- data/spec/unit/parser/ast/function_spec.rb +0 -92
- data/spec/unit/parser/ast/hostclass_spec.rb +0 -72
- data/spec/unit/parser/ast/ifstatement_spec.rb +0 -77
- data/spec/unit/parser/ast/in_operator_spec.rb +0 -61
- data/spec/unit/parser/ast/match_operator_spec.rb +0 -51
- data/spec/unit/parser/ast/minus_spec.rb +0 -37
- data/spec/unit/parser/ast/node_spec.rb +0 -30
- data/spec/unit/parser/ast/nop_spec.rb +0 -19
- data/spec/unit/parser/ast/not_spec.rb +0 -31
- data/spec/unit/parser/ast/relationship_spec.rb +0 -87
- data/spec/unit/parser/ast/resource_defaults_spec.rb +0 -21
- data/spec/unit/parser/ast/resource_override_spec.rb +0 -50
- data/spec/unit/parser/ast/resource_reference_spec.rb +0 -56
- data/spec/unit/parser/ast/resource_spec.rb +0 -183
- data/spec/unit/parser/ast/resourceparam_spec.rb +0 -51
- data/spec/unit/parser/ast/selector_spec.rb +0 -88
- data/spec/unit/parser/ast/vardef_spec.rb +0 -68
- data/spec/unit/parser/ast_spec.rb +0 -76
- data/spec/unit/parser/collector_spec.rb +0 -438
- data/spec/unit/parser/functions/extlookup_spec.rb +0 -102
- data/spec/unit/parser/functions/search_spec.rb +0 -28
- data/spec/unit/parser/lexer_spec.rb +0 -877
- data/spec/unit/parser/parser_spec.rb +0 -535
- data/spec/unit/pops/evaluator/runtime3_converter_spec.rb +0 -19
- data/spec/unit/pops/migration_spec.rb +0 -180
- data/spec/unit/pops/model/ast_transformer_spec.rb +0 -76
- data/spec/unit/pops/transformer/transform_basic_expressions_spec.rb +0 -243
- data/spec/unit/pops/transformer/transform_calls_spec.rb +0 -115
- data/spec/unit/pops/transformer/transform_conditionals_spec.rb +0 -123
- data/spec/unit/pops/transformer/transform_containers_spec.rb +0 -190
- data/spec/unit/pops/transformer/transformer_rspec_helper.rb +0 -27
- data/spec/unit/pops/validation_spec.rb +0 -66
- data/spec/unit/provider/package/msi_spec.rb +0 -229
- data/spec/unit/rails/host_spec.rb +0 -162
- data/spec/unit/rails/param_value_spec.rb +0 -46
- data/spec/unit/rails/resource_spec.rb +0 -115
- data/spec/unit/rails_spec.rb +0 -244
- data/spec/unit/reports/rrdgraph_spec.rb +0 -29
- data/spec/unit/reports/tagmail_spec.rb +0 -218
- data/spec/unit/run_spec.rb +0 -175
- data/spec/unit/util/cache_accumulator_spec.rb +0 -74
- data/spec/unit/util/cacher_spec.rb +0 -107
- data/spec/unit/util/inline_docs_spec.rb +0 -31
- data/spec/unit/util/instrumentation/data_spec.rb +0 -46
- data/spec/unit/util/instrumentation/indirection_probe_spec.rb +0 -21
- data/spec/unit/util/instrumentation/instrumentable_spec.rb +0 -186
- data/spec/unit/util/instrumentation/listener_spec.rb +0 -101
- data/spec/unit/util/instrumentation/listeners/log_spec.rb +0 -34
- data/spec/unit/util/instrumentation/listeners/performance_spec.rb +0 -36
- data/spec/unit/util/instrumentation_spec.rb +0 -181
- data/spec/unit/util/log/rate_limited_logger_spec.rb +0 -51
- data/spec/unit/util/monkey_patches/lines_spec.rb +0 -83
- data/spec/unit/util/queue/stomp_spec.rb +0 -137
- data/spec/unit/util/queue_spec.rb +0 -94
- data/spec/unit/util/rdoc/parser_spec.rb +0 -608
- data/spec/unit/util/reference_serializer_spec.rb +0 -51
- data/spec/unit/util/zaml_spec.rb +0 -308
@@ -28,7 +28,7 @@ describe Puppet::Type.type(:service).provider(:windows), :if => Puppet.features.
|
|
28
28
|
list_of_services = ['snmptrap', 'svchost', 'sshd'].map { |s| stub('service', :service_name => s) }
|
29
29
|
Win32::Service.expects(:services).returns(list_of_services)
|
30
30
|
|
31
|
-
described_class.instances.map(&:name).
|
31
|
+
expect(described_class.instances.map(&:name)).to match_array(['snmptrap', 'svchost', 'sshd'])
|
32
32
|
end
|
33
33
|
end
|
34
34
|
|
@@ -109,7 +109,7 @@ describe Puppet::Type.type(:service).provider(:windows), :if => Puppet.features.
|
|
109
109
|
it "should report a #{state} service as stopped" do
|
110
110
|
status.current_state = state
|
111
111
|
|
112
|
-
provider.status.
|
112
|
+
expect(provider.status).to eq(:stopped)
|
113
113
|
end
|
114
114
|
end
|
115
115
|
|
@@ -117,7 +117,7 @@ describe Puppet::Type.type(:service).provider(:windows), :if => Puppet.features.
|
|
117
117
|
it "should report a #{state} service as running" do
|
118
118
|
status.current_state = state
|
119
119
|
|
120
|
-
provider.status.
|
120
|
+
expect(provider.status).to eq(:running)
|
121
121
|
end
|
122
122
|
end
|
123
123
|
|
@@ -153,13 +153,13 @@ describe Puppet::Type.type(:service).provider(:windows), :if => Puppet.features.
|
|
153
153
|
it "should report a service with a startup type of manual as manual" do
|
154
154
|
config.start_type = Win32::Service.get_start_type(Win32::Service::SERVICE_DEMAND_START)
|
155
155
|
|
156
|
-
provider.enabled
|
156
|
+
expect(provider.enabled?).to eq(:manual)
|
157
157
|
end
|
158
158
|
|
159
159
|
it "should report a service with a startup type of disabled as false" do
|
160
160
|
config.start_type = Win32::Service.get_start_type(Win32::Service::SERVICE_DISABLED)
|
161
161
|
|
162
|
-
provider.enabled
|
162
|
+
expect(provider.enabled?).to eq(:false)
|
163
163
|
end
|
164
164
|
|
165
165
|
it "raises an error if the service doesn't exist" do
|
@@ -178,7 +178,7 @@ describe Puppet::Type.type(:service).provider(:windows), :if => Puppet.features.
|
|
178
178
|
it "should report a service with a startup type of '#{start_type}' as true" do
|
179
179
|
config.start_type = start_type
|
180
180
|
|
181
|
-
provider.enabled
|
181
|
+
expect(provider.enabled?).to eq(:true)
|
182
182
|
end
|
183
183
|
end
|
184
184
|
end
|
@@ -48,7 +48,7 @@ describe provider_class, :unless => Puppet.features.microsoft_windows? do
|
|
48
48
|
:options => [:absent]
|
49
49
|
)
|
50
50
|
|
51
|
-
genkey(key).
|
51
|
+
expect(genkey(key)).to eq("ssh-dss AAAAfsfddsjldjgksdflgkjsfdlgkj Just_Testing\n")
|
52
52
|
end
|
53
53
|
|
54
54
|
it "should be able to generate an authorized_keys file with options" do
|
@@ -60,55 +60,55 @@ describe provider_class, :unless => Puppet.features.microsoft_windows? do
|
|
60
60
|
:options => ['from="192.168.1.1"', "no-pty", "no-X11-forwarding"]
|
61
61
|
)
|
62
62
|
|
63
|
-
genkey(key).
|
63
|
+
expect(genkey(key)).to eq("from=\"192.168.1.1\",no-pty,no-X11-forwarding ssh-rsa AAAAfsfddsjldjgksdflgkjsfdlgkj root@localhost\n")
|
64
64
|
end
|
65
65
|
|
66
66
|
it "should parse comments" do
|
67
67
|
result = [{ :record_type => :comment, :line => "# hello" }]
|
68
|
-
@provider_class.parse("# hello\n").
|
68
|
+
expect(@provider_class.parse("# hello\n")).to eq(result)
|
69
69
|
end
|
70
70
|
|
71
71
|
it "should parse comments with leading whitespace" do
|
72
72
|
result = [{ :record_type => :comment, :line => " # hello" }]
|
73
|
-
@provider_class.parse(" # hello\n").
|
73
|
+
expect(@provider_class.parse(" # hello\n")).to eq(result)
|
74
74
|
end
|
75
75
|
|
76
76
|
it "should skip over lines with only whitespace" do
|
77
77
|
result = [{ :record_type => :comment, :line => "#before" },
|
78
78
|
{ :record_type => :blank, :line => " " },
|
79
79
|
{ :record_type => :comment, :line => "#after" }]
|
80
|
-
@provider_class.parse("#before\n \n#after\n").
|
80
|
+
expect(@provider_class.parse("#before\n \n#after\n")).to eq(result)
|
81
81
|
end
|
82
82
|
|
83
83
|
it "should skip over completely empty lines" do
|
84
84
|
result = [{ :record_type => :comment, :line => "#before"},
|
85
85
|
{ :record_type => :blank, :line => ""},
|
86
86
|
{ :record_type => :comment, :line => "#after"}]
|
87
|
-
@provider_class.parse("#before\n\n#after\n").
|
87
|
+
expect(@provider_class.parse("#before\n\n#after\n")).to eq(result)
|
88
88
|
end
|
89
89
|
|
90
90
|
it "should be able to parse name if it includes whitespace" do
|
91
|
-
@provider_class.parse_line('ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgQC7pHZ1XRj3tXbFpPFhMGU1bVwz7jr13zt/wuE+pVIJA8GlmHYuYtIxHPfDHlkixdwLachCpSQUL9NbYkkRFRn9m6PZ7125ohE4E4m96QS6SGSQowTiRn4Lzd9LV38g93EMHjPmEkdSq7MY4uJEd6DUYsLvaDYdIgBiLBIWPA3OrQ== fancy user')[:name].
|
92
|
-
@provider_class.parse_line('from="host1.reductlivelabs.com,host.reductivelabs.com",command="/usr/local/bin/run",ssh-pty ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgQC7pHZ1XRj3tXbFpPFhMGU1bVwz7jr13zt/wuE+pVIJA8GlmHYuYtIxHPfDHlkixdwLachCpSQUL9NbYkkRFRn9m6PZ7125ohE4E4m96QS6SGSQowTiRn4Lzd9LV38g93EMHjPmEkdSq7MY4uJEd6DUYsLvaDYdIgBiLBIWPA3OrQ== fancy user')[:name].
|
91
|
+
expect(@provider_class.parse_line('ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgQC7pHZ1XRj3tXbFpPFhMGU1bVwz7jr13zt/wuE+pVIJA8GlmHYuYtIxHPfDHlkixdwLachCpSQUL9NbYkkRFRn9m6PZ7125ohE4E4m96QS6SGSQowTiRn4Lzd9LV38g93EMHjPmEkdSq7MY4uJEd6DUYsLvaDYdIgBiLBIWPA3OrQ== fancy user')[:name]).to eq('fancy user')
|
92
|
+
expect(@provider_class.parse_line('from="host1.reductlivelabs.com,host.reductivelabs.com",command="/usr/local/bin/run",ssh-pty ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgQC7pHZ1XRj3tXbFpPFhMGU1bVwz7jr13zt/wuE+pVIJA8GlmHYuYtIxHPfDHlkixdwLachCpSQUL9NbYkkRFRn9m6PZ7125ohE4E4m96QS6SGSQowTiRn4Lzd9LV38g93EMHjPmEkdSq7MY4uJEd6DUYsLvaDYdIgBiLBIWPA3OrQ== fancy user')[:name]).to eq('fancy user')
|
93
93
|
end
|
94
94
|
|
95
95
|
it "should be able to parse options containing commas via its parse_options method" do
|
96
96
|
options = %w{from="host1.reductlivelabs.com,host.reductivelabs.com" command="/usr/local/bin/run" ssh-pty}
|
97
97
|
optionstr = options.join(", ")
|
98
98
|
|
99
|
-
@provider_class.parse_options(optionstr).
|
99
|
+
expect(@provider_class.parse_options(optionstr)).to eq(options)
|
100
100
|
end
|
101
101
|
|
102
102
|
it "should parse quoted options" do
|
103
103
|
line = 'command="/usr/local/bin/mybin \"$SSH_ORIGINAL_COMMAND\"" ssh-rsa xxx mykey'
|
104
104
|
|
105
|
-
@provider_class.parse(line)[0][:options][0].
|
105
|
+
expect(@provider_class.parse(line)[0][:options][0]).to eq('command="/usr/local/bin/mybin \"$SSH_ORIGINAL_COMMAND\""')
|
106
106
|
end
|
107
107
|
|
108
108
|
it "should use '' as name for entries that lack a comment" do
|
109
109
|
line = "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAut8aOSxenjOqF527dlsdHWV4MNoAsX14l9M297+SQXaQ5Z3BedIxZaoQthkDALlV/25A1COELrg9J2MqJNQc8Xe9XQOIkBQWWinUlD/BXwoOTWEy8C8zSZPHZ3getMMNhGTBO+q/O+qiJx3y5cA4MTbw2zSxukfWC87qWwcZ64UUlegIM056vPsdZWFclS9hsROVEa57YUMrehQ1EGxT4Z5j6zIopufGFiAPjZigq/vqgcAqhAKP6yu4/gwO6S9tatBeEjZ8fafvj1pmvvIplZeMr96gHE7xS3pEEQqnB3nd4RY7AF6j9kFixnsytAUO7STPh/M3pLiVQBN89TvWPQ=="
|
110
110
|
|
111
|
-
@provider_class.parse(line)[0][:name].
|
111
|
+
expect(@provider_class.parse(line)[0][:name]).to eq("")
|
112
112
|
end
|
113
113
|
|
114
114
|
{
|
@@ -129,10 +129,10 @@ describe provider_class, :unless => Puppet.features.microsoft_windows? do
|
|
129
129
|
comment = 'sample_key'
|
130
130
|
|
131
131
|
record = @provider_class.parse_line("#{keytype} #{keydata} #{comment}")
|
132
|
-
record.
|
133
|
-
record[:name].
|
134
|
-
record[:key].
|
135
|
-
record[:type].
|
132
|
+
expect(record).not_to be_nil
|
133
|
+
expect(record[:name]).to eq(comment)
|
134
|
+
expect(record[:key]).to eq(keydata)
|
135
|
+
expect(record[:type]).to eq(keytype)
|
136
136
|
end
|
137
137
|
end
|
138
138
|
|
@@ -147,7 +147,7 @@ describe provider_class, :unless => Puppet.features.microsoft_windows? do
|
|
147
147
|
}
|
148
148
|
end
|
149
149
|
it "adds an indexed name to unnamed resources" do
|
150
|
-
@provider_class.prefetch_hook([input])[0][:name].
|
150
|
+
expect(@provider_class.prefetch_hook([input])[0][:name]).to match(/^#{path}:unnamed-\d+/)
|
151
151
|
end
|
152
152
|
end
|
153
153
|
|
@@ -261,7 +261,7 @@ describe provider_class, :unless => Puppet.features.microsoft_windows? do
|
|
261
261
|
@resource = Puppet::Type.type(:ssh_authorized_key).new(:name => "foo", :target => "/tmp/.ssh_dir/place_to_put_authorized_keys")
|
262
262
|
@provider = provider_class.new(@resource)
|
263
263
|
|
264
|
-
|
264
|
+
expect { @provider.flush }.to raise_error
|
265
265
|
end
|
266
266
|
end
|
267
267
|
|
@@ -269,7 +269,7 @@ describe provider_class, :unless => Puppet.features.microsoft_windows? do
|
|
269
269
|
it "should catch an exception and raise a Puppet error" do
|
270
270
|
@resource[:user] = "thisusershouldnotexist"
|
271
271
|
|
272
|
-
|
272
|
+
expect { @provider.flush }.to raise_error(Puppet::Error)
|
273
273
|
end
|
274
274
|
end
|
275
275
|
end
|
@@ -17,27 +17,27 @@ describe "sshkey parsed provider" do
|
|
17
17
|
end
|
18
18
|
|
19
19
|
it "should parse the name from the first field" do
|
20
|
-
subject.parse_line('test ssh-rsa '+key)[:name].
|
20
|
+
expect(subject.parse_line('test ssh-rsa '+key)[:name]).to eq("test")
|
21
21
|
end
|
22
22
|
|
23
23
|
it "should parse the first component of the first field as the name" do
|
24
|
-
subject.parse_line('test,alias ssh-rsa '+key)[:name].
|
24
|
+
expect(subject.parse_line('test,alias ssh-rsa '+key)[:name]).to eq("test")
|
25
25
|
end
|
26
26
|
|
27
27
|
it "should parse host_aliases from the remaining components of the first field" do
|
28
|
-
subject.parse_line('test,alias ssh-rsa '+key)[:host_aliases].
|
28
|
+
expect(subject.parse_line('test,alias ssh-rsa '+key)[:host_aliases]).to eq(["alias"])
|
29
29
|
end
|
30
30
|
|
31
31
|
it "should parse multiple host_aliases" do
|
32
|
-
subject.parse_line('test,alias1,alias2,alias3 ssh-rsa '+key)[:host_aliases].
|
32
|
+
expect(subject.parse_line('test,alias1,alias2,alias3 ssh-rsa '+key)[:host_aliases]).to eq(["alias1","alias2","alias3"])
|
33
33
|
end
|
34
34
|
|
35
35
|
it "should not drop an empty host_alias" do
|
36
|
-
subject.parse_line('test,alias, ssh-rsa '+key)[:host_aliases].
|
36
|
+
expect(subject.parse_line('test,alias, ssh-rsa '+key)[:host_aliases]).to eq(["alias",""])
|
37
37
|
end
|
38
38
|
|
39
39
|
it "should recognise when there are no host aliases" do
|
40
|
-
subject.parse_line('test ssh-rsa '+key)[:host_aliases].
|
40
|
+
expect(subject.parse_line('test ssh-rsa '+key)[:host_aliases]).to eq([])
|
41
41
|
end
|
42
42
|
|
43
43
|
context "with the sample file" do
|
@@ -45,12 +45,12 @@ describe "sshkey parsed provider" do
|
|
45
45
|
before :each do subject.stubs(:default_target).returns(fixture) end
|
46
46
|
|
47
47
|
it "should parse to records on prefetch" do
|
48
|
-
subject.target_records(fixture).
|
48
|
+
expect(subject.target_records(fixture)).to be_empty
|
49
49
|
subject.prefetch
|
50
50
|
|
51
51
|
records = subject.target_records(fixture)
|
52
|
-
records.
|
53
|
-
records.
|
52
|
+
expect(records).to be_an Array
|
53
|
+
expect(records).to be_all {|x| expect(x).to be_an Hash }
|
54
54
|
end
|
55
55
|
|
56
56
|
it "should reconstitute the file from records" do
|
@@ -61,10 +61,10 @@ describe "sshkey parsed provider" do
|
|
61
61
|
|
62
62
|
oldlines = File.readlines(fixture).map(&:chomp)
|
63
63
|
newlines = text.chomp.split("\n")
|
64
|
-
oldlines.length.
|
64
|
+
expect(oldlines.length).to eq(newlines.length)
|
65
65
|
|
66
66
|
oldlines.zip(newlines).each do |old, new|
|
67
|
-
old.gsub(/\s+/, '').
|
67
|
+
expect(old.gsub(/\s+/, '')).to eq(new.gsub(/\s+/, ''))
|
68
68
|
end
|
69
69
|
end
|
70
70
|
end
|
@@ -28,7 +28,7 @@ guest id=100 pgrp=usr groups=usr home=/home/guest
|
|
28
28
|
|
29
29
|
@provider.stubs(:execute).returns(lsgroup_all_example)
|
30
30
|
|
31
|
-
@provider.groupname_by_id(100).
|
31
|
+
expect(@provider.groupname_by_id(100)).to eq('guest')
|
32
32
|
end
|
33
33
|
|
34
34
|
it "should be able to list all users" do
|
@@ -36,7 +36,7 @@ guest id=100 pgrp=usr groups=usr home=/home/guest
|
|
36
36
|
|
37
37
|
provider_class.stubs(:execute).returns(lsuser_all_example)
|
38
38
|
|
39
|
-
provider_class.list_all.
|
39
|
+
expect(provider_class.list_all).to eq(['root', 'guest'])
|
40
40
|
end
|
41
41
|
|
42
42
|
describe "#managed_attribute_keys" do
|
@@ -58,26 +58,26 @@ guest id=100 pgrp=usr groups=usr home=/home/guest
|
|
58
58
|
|
59
59
|
it "should return only the keys of the attribute key=value pair from manifest" do
|
60
60
|
keys = @provider.managed_attribute_keys(existing_attributes)
|
61
|
-
keys.
|
62
|
-
keys.
|
63
|
-
keys.
|
61
|
+
expect(keys).to be_include(:rlogin)
|
62
|
+
expect(keys).to be_include(:login)
|
63
|
+
expect(keys).not_to be_include(:su)
|
64
64
|
end
|
65
65
|
|
66
66
|
it "should strip spaces from symbols" do
|
67
67
|
keys = @provider.managed_attribute_keys(existing_attributes)
|
68
|
-
keys.
|
69
|
-
keys.
|
68
|
+
expect(keys).to be_include(:login)
|
69
|
+
expect(keys).not_to be_include(:"login ")
|
70
70
|
end
|
71
71
|
|
72
72
|
it "should have the same count as that from the manifest" do
|
73
73
|
keys = @provider.managed_attribute_keys(existing_attributes)
|
74
|
-
keys.size.
|
74
|
+
expect(keys.size).to eq(attribute_array.size)
|
75
75
|
end
|
76
76
|
|
77
77
|
it "should convert the keys to symbols" do
|
78
78
|
keys = @provider.managed_attribute_keys(existing_attributes)
|
79
79
|
all_symbols = keys.all? {|k| k.is_a? Symbol}
|
80
|
-
all_symbols.
|
80
|
+
expect(all_symbols).to be_truthy
|
81
81
|
end
|
82
82
|
end
|
83
83
|
|
@@ -86,15 +86,15 @@ guest id=100 pgrp=usr groups=usr home=/home/guest
|
|
86
86
|
|
87
87
|
it "should return the keys in supplied hash" do
|
88
88
|
keys = @provider.managed_attribute_keys(existing_attributes)
|
89
|
-
keys.
|
90
|
-
keys.
|
91
|
-
keys.
|
89
|
+
expect(keys).not_to be_include(:rlogin)
|
90
|
+
expect(keys).to be_include(:login)
|
91
|
+
expect(keys).to be_include(:su)
|
92
92
|
end
|
93
93
|
|
94
94
|
it "should convert the keys to symbols" do
|
95
95
|
keys = @provider.managed_attribute_keys(existing_attributes)
|
96
96
|
all_symbols = keys.all? {|k| k.is_a? Symbol}
|
97
|
-
all_symbols.
|
97
|
+
expect(all_symbols).to be_truthy
|
98
98
|
end
|
99
99
|
end
|
100
100
|
end
|
@@ -104,28 +104,28 @@ guest id=100 pgrp=usr groups=usr home=/home/guest
|
|
104
104
|
managed_keys = [:rlogin]
|
105
105
|
@provider.class.attribute_mapping_from.stubs(:include?).with(:rlogin).returns(true)
|
106
106
|
@provider.class.stubs(:attribute_ignore).returns([])
|
107
|
-
@provider.should_include?(:rlogin, managed_keys).
|
107
|
+
expect(@provider.should_include?(:rlogin, managed_keys)).to be_falsey
|
108
108
|
end
|
109
109
|
|
110
110
|
it "should exclude keys explicitly ignored" do
|
111
111
|
managed_keys = [:rlogin]
|
112
112
|
@provider.class.attribute_mapping_from.stubs(:include?).with(:rlogin).returns(false)
|
113
113
|
@provider.class.stubs(:attribute_ignore).returns([:rlogin])
|
114
|
-
@provider.should_include?(:rlogin, managed_keys).
|
114
|
+
expect(@provider.should_include?(:rlogin, managed_keys)).to be_falsey
|
115
115
|
end
|
116
116
|
|
117
117
|
it "should exclude keys not specified in manifest" do
|
118
118
|
managed_keys = [:su]
|
119
119
|
@provider.class.attribute_mapping_from.stubs(:include?).with(:rlogin).returns(false)
|
120
120
|
@provider.class.stubs(:attribute_ignore).returns([])
|
121
|
-
@provider.should_include?(:rlogin, managed_keys).
|
121
|
+
expect(@provider.should_include?(:rlogin, managed_keys)).to be_falsey
|
122
122
|
end
|
123
123
|
|
124
124
|
it "should include keys specified in manifest if not translated or ignored" do
|
125
125
|
managed_keys = [:rlogin]
|
126
126
|
@provider.class.attribute_mapping_from.stubs(:include?).with(:rlogin).returns(false)
|
127
127
|
@provider.class.stubs(:attribute_ignore).returns([])
|
128
|
-
@provider.should_include?(:rlogin, managed_keys).
|
128
|
+
expect(@provider.should_include?(:rlogin, managed_keys)).to be_truthy
|
129
129
|
end
|
130
130
|
end
|
131
131
|
describe "when handling passwords" do
|
@@ -149,14 +149,14 @@ smith:
|
|
149
149
|
@provider.stubs(:open_security_passwd).returns(StringIO.new(passwd_without_spaces))
|
150
150
|
@resource.stubs(:[]).returns('smith')
|
151
151
|
|
152
|
-
@provider.password.
|
152
|
+
expect(@provider.password).to eq('MGURSj.F056Dj')
|
153
153
|
end
|
154
154
|
|
155
155
|
it "should be able to read the hashed password, even with trailing spaces" do
|
156
156
|
@provider.stubs(:open_security_passwd).returns(StringIO.new(passwd_with_spaces))
|
157
157
|
@resource.stubs(:[]).returns('smith')
|
158
158
|
|
159
|
-
@provider.password.
|
159
|
+
expect(@provider.password).to eq('MGURSj.F056Dj')
|
160
160
|
end
|
161
161
|
end
|
162
162
|
end
|
@@ -4,7 +4,7 @@ require 'spec_helper'
|
|
4
4
|
require 'facter/util/plist'
|
5
5
|
|
6
6
|
describe Puppet::Type.type(:user).provider(:directoryservice) do
|
7
|
-
let(:username) { '
|
7
|
+
let(:username) { 'nonexistent_user' }
|
8
8
|
let(:user_path) { "/Users/#{username}" }
|
9
9
|
let(:resource) do
|
10
10
|
Puppet::Type.type(:user).new(
|
@@ -25,11 +25,11 @@ describe Puppet::Type.type(:user).provider(:directoryservice) do
|
|
25
25
|
<dict>
|
26
26
|
<key>dsAttrTypeStandard:NFSHomeDirectory</key>
|
27
27
|
<array>
|
28
|
-
<string>/Users/
|
28
|
+
<string>/Users/nonexistent_user</string>
|
29
29
|
</array>
|
30
30
|
<key>dsAttrTypeStandard:RealName</key>
|
31
31
|
<array>
|
32
|
-
<string>
|
32
|
+
<string>nonexistent_user</string>
|
33
33
|
</array>
|
34
34
|
<key>dsAttrTypeStandard:PrimaryGroupID</key>
|
35
35
|
<array>
|
@@ -41,7 +41,7 @@ describe Puppet::Type.type(:user).provider(:directoryservice) do
|
|
41
41
|
</array>
|
42
42
|
<key>dsAttrTypeStandard:RecordName</key>
|
43
43
|
<array>
|
44
|
-
<string>
|
44
|
+
<string>nonexistent_user</string>
|
45
45
|
</array>
|
46
46
|
</dict>
|
47
47
|
</plist>'
|
@@ -152,15 +152,15 @@ describe Puppet::Type.type(:user).provider(:directoryservice) do
|
|
152
152
|
# This lets us check the behavior of all the methods necessary to return a
|
153
153
|
# user's groups property by controlling the data provided by dscl
|
154
154
|
let(:testuser_hash) do
|
155
|
-
[{"dsAttrTypeStandard:RecordName" =>["
|
155
|
+
[{"dsAttrTypeStandard:RecordName" =>["nonexistent_user"],
|
156
156
|
"dsAttrTypeStandard:UniqueID" =>["1000"],
|
157
157
|
"dsAttrTypeStandard:AuthenticationAuthority"=>
|
158
158
|
[";Kerberosv5;;testuser@LKDC:SHA1.4383E152D9D394AA32D13AE98F6F6E1FE8D00F81;LKDC:SHA1.4383E152D9D394AA32D13AE98F6F6E1FE8D00F81",
|
159
159
|
";ShadowHash;HASHLIST:<SALTED-SHA512>"],
|
160
160
|
"dsAttrTypeStandard:AppleMetaNodeLocation" =>["/Local/Default"],
|
161
|
-
"dsAttrTypeStandard:NFSHomeDirectory" =>["/Users/
|
161
|
+
"dsAttrTypeStandard:NFSHomeDirectory" =>["/Users/nonexistent_user"],
|
162
162
|
"dsAttrTypeStandard:RecordType" =>["dsRecTypeStandard:Users"],
|
163
|
-
"dsAttrTypeStandard:RealName" =>["
|
163
|
+
"dsAttrTypeStandard:RealName" =>["nonexistent_user"],
|
164
164
|
"dsAttrTypeStandard:Password" =>["********"],
|
165
165
|
"dsAttrTypeStandard:PrimaryGroupID" =>["22"],
|
166
166
|
"dsAttrTypeStandard:GeneratedUID" =>["0A7D5B63-3AD4-4CA7-B03E-85876F1D1FB3"],
|
@@ -283,9 +283,9 @@ describe Puppet::Type.type(:user).provider(:directoryservice) do
|
|
283
283
|
end
|
284
284
|
instances = provider.class.instances
|
285
285
|
|
286
|
-
instances.
|
286
|
+
expect(instances).to be_a_kind_of Array
|
287
287
|
instances.each do |instance|
|
288
|
-
instance.
|
288
|
+
expect(instance).to be_a_kind_of Puppet::Provider
|
289
289
|
end
|
290
290
|
end
|
291
291
|
end
|
@@ -302,12 +302,12 @@ describe Puppet::Type.type(:user).provider(:directoryservice) do
|
|
302
302
|
|
303
303
|
it 'should return a hash of user attributes' do
|
304
304
|
provider.class.expects(:dscl).with('-plist', '.', 'readall', '/Users').returns(user_plist_xml)
|
305
|
-
provider.class.get_all_users.
|
305
|
+
expect(provider.class.get_all_users).to eq(user_plist_hash)
|
306
306
|
end
|
307
307
|
|
308
308
|
it 'should return a hash when passed an empty plist' do
|
309
309
|
provider.class.expects(:dscl).with('-plist', '.', 'readall', '/Users').returns(empty_plist)
|
310
|
-
provider.class.get_all_users.
|
310
|
+
expect(provider.class.get_all_users).to eq({})
|
311
311
|
end
|
312
312
|
end
|
313
313
|
|
@@ -337,15 +337,15 @@ describe Puppet::Type.type(:user).provider(:directoryservice) do
|
|
337
337
|
end
|
338
338
|
|
339
339
|
it 'should return :uid values as a Fixnum' do
|
340
|
-
provider.class.generate_attribute_hash(user_plist_hash)[:uid].
|
340
|
+
expect(provider.class.generate_attribute_hash(user_plist_hash)[:uid]).to be_a_kind_of Fixnum
|
341
341
|
end
|
342
342
|
|
343
343
|
it 'should return :gid values as a Fixnum' do
|
344
|
-
provider.class.generate_attribute_hash(user_plist_hash)[:gid].
|
344
|
+
expect(provider.class.generate_attribute_hash(user_plist_hash)[:gid]).to be_a_kind_of Fixnum
|
345
345
|
end
|
346
346
|
|
347
347
|
it 'should return a hash of resource attributes' do
|
348
|
-
provider.class.generate_attribute_hash(user_plist_hash).
|
348
|
+
expect(provider.class.generate_attribute_hash(user_plist_hash)).to eq(user_plist_resource)
|
349
349
|
end
|
350
350
|
end
|
351
351
|
|
@@ -354,12 +354,12 @@ describe Puppet::Type.type(:user).provider(:directoryservice) do
|
|
354
354
|
# I'm PROBABLY doing this wrong...
|
355
355
|
it 'should return false if the dscl command errors out' do
|
356
356
|
provider.expects(:dscl).with('.', 'read', user_path).raises(Puppet::ExecutionFailure, 'Dscl Fails')
|
357
|
-
provider.exists
|
357
|
+
expect(provider.exists?).to eq(false)
|
358
358
|
end
|
359
359
|
|
360
360
|
it 'should return true if the dscl command does not error' do
|
361
361
|
provider.expects(:dscl).with('.', 'read', user_path).returns(user_plist_xml)
|
362
|
-
provider.exists
|
362
|
+
expect(provider.exists?).to eq(true)
|
363
363
|
end
|
364
364
|
end
|
365
365
|
|
@@ -423,12 +423,12 @@ describe Puppet::Type.type(:user).provider(:directoryservice) do
|
|
423
423
|
|
424
424
|
it "should return a list of groups if the user's name matches GroupMembership" do
|
425
425
|
provider.class.expects(:get_list_of_groups).returns(group_plist_hash)
|
426
|
-
provider.class.prefetch({}).first.groups.
|
426
|
+
expect(provider.class.prefetch({}).first.groups).to eq('second,testgroup')
|
427
427
|
end
|
428
428
|
|
429
429
|
it "should return a list of groups if the user's GUID matches GroupMembers" do
|
430
430
|
provider.class.expects(:get_list_of_groups).returns(group_plist_hash_guid)
|
431
|
-
provider.class.prefetch({}).first.groups.
|
431
|
+
expect(provider.class.prefetch({}).first.groups).to eq('testgroup,third')
|
432
432
|
end
|
433
433
|
end
|
434
434
|
|
@@ -477,38 +477,25 @@ describe Puppet::Type.type(:user).provider(:directoryservice) do
|
|
477
477
|
end
|
478
478
|
|
479
479
|
it 'should call dscl to add necessary groups' do
|
480
|
-
provider.class.expects(:get_os_version).returns('10.7')
|
481
480
|
provider.class.expects(:get_attribute_from_dscl).with('Users', username, 'ShadowHashData').returns([])
|
482
|
-
provider.class.expects(:get_attribute_from_dscl).with('Users', username, 'GeneratedUID').returns({'dsAttrTypeStandard:GeneratedUID' => ['
|
481
|
+
provider.class.expects(:get_attribute_from_dscl).with('Users', username, 'GeneratedUID').returns({'dsAttrTypeStandard:GeneratedUID' => ['guidnonexistent_user']})
|
483
482
|
provider.expects(:groups).returns('two,three')
|
484
|
-
provider.expects(:dscl).with('.', '-merge', '/Groups/one', 'GroupMembership', '
|
485
|
-
provider.expects(:dscl).with('.', '-merge', '/Groups/one', 'GroupMembers', '
|
483
|
+
provider.expects(:dscl).with('.', '-merge', '/Groups/one', 'GroupMembership', 'nonexistent_user')
|
484
|
+
provider.expects(:dscl).with('.', '-merge', '/Groups/one', 'GroupMembers', 'guidnonexistent_user')
|
486
485
|
provider.class.prefetch({})
|
487
486
|
provider.groups= 'one,two,three'
|
488
487
|
end
|
489
488
|
|
490
|
-
#describe how passwords are fetched in 10.5 and 10.6
|
491
|
-
['10.5', '10.6'].each do |os_ver|
|
492
|
-
it "should call the get_sha1 method on #{os_ver}" do
|
493
|
-
provider.class.expects(:get_os_version).returns(os_ver)
|
494
|
-
provider.class.expects(:get_attribute_from_dscl).with('Users', username, 'ShadowHashData').returns([])
|
495
|
-
provider.class.expects(:get_sha1).with('0A7D5B63-3AD4-4CA7-B03E-85876F1D1FB3').returns('password')
|
496
|
-
provider.class.prefetch({}).first.password.should == 'password'
|
497
|
-
end
|
498
|
-
end
|
499
|
-
|
500
489
|
it 'should call the get_salted_sha512 method on 10.7 and return the correct hash' do
|
501
|
-
provider.class.expects(:get_os_version).returns('10.7')
|
502
|
-
provider.class.expects(:convert_binary_to_xml).with(sha512_embedded_bplist).returns(sha512_embedded_bplist_hash)
|
503
490
|
provider.class.expects(:get_attribute_from_dscl).with('Users', username, 'ShadowHashData').returns(sha512_shadowhashdata_hash)
|
504
|
-
provider.class.
|
491
|
+
provider.class.expects(:convert_binary_to_xml).with(sha512_embedded_bplist).returns(sha512_embedded_bplist_hash)
|
492
|
+
expect(provider.class.prefetch({}).first.password).to eq(sha512_password_hash)
|
505
493
|
end
|
506
494
|
|
507
495
|
it 'should call the get_salted_sha512_pbkdf2 method on 10.8 and return the correct hash' do
|
508
|
-
provider.class.expects(:get_os_version).returns('10.8')
|
509
496
|
provider.class.expects(:get_attribute_from_dscl).with('Users', username,'ShadowHashData').returns(pbkdf2_shadowhashdata_hash)
|
510
497
|
provider.class.expects(:convert_binary_to_xml).with(pbkdf2_embedded_plist).returns(pbkdf2_embedded_bplist_hash)
|
511
|
-
provider.class.prefetch({}).first.password.
|
498
|
+
expect(provider.class.prefetch({}).first.password).to eq(pbkdf2_password_hash)
|
512
499
|
end
|
513
500
|
|
514
501
|
end
|
@@ -519,21 +506,13 @@ describe Puppet::Type.type(:user).provider(:directoryservice) do
|
|
519
506
|
provider.stubs(:flush_dscl_cache)
|
520
507
|
end
|
521
508
|
|
522
|
-
|
523
|
-
it "should call write_sha1_hash when setting the password on #{os_ver}" do
|
524
|
-
provider.class.stubs(:get_os_version).returns(os_ver)
|
525
|
-
provider.expects(:write_sha1_hash).with('password')
|
526
|
-
provider.password = 'password'
|
527
|
-
end
|
528
|
-
end
|
529
|
-
|
530
|
-
it 'should call write_password_to_users_plist when setting the password on 10.7' do
|
509
|
+
it 'should call write_password_to_users_plist when setting the password' do
|
531
510
|
provider.class.stubs(:get_os_version).returns('10.7')
|
532
511
|
provider.expects(:write_password_to_users_plist).with(sha512_password_hash)
|
533
512
|
provider.password = sha512_password_hash
|
534
513
|
end
|
535
514
|
|
536
|
-
it 'should call write_password_to_users_plist when setting the password
|
515
|
+
it 'should call write_password_to_users_plist when setting the password' do
|
537
516
|
provider.class.stubs(:get_os_version).returns('10.8')
|
538
517
|
resource[:salt] = pbkdf2_salt_value
|
539
518
|
resource[:iterations] = pbkdf2_iterations_value
|
@@ -650,14 +629,14 @@ describe Puppet::Type.type(:user).provider(:directoryservice) do
|
|
650
629
|
|
651
630
|
it 'should return an array of hashes containing group data' do
|
652
631
|
provider.class.expects(:dscl).with('-plist', '.', 'readall', '/Groups').returns(groups_xml)
|
653
|
-
provider.class.get_list_of_groups.
|
632
|
+
expect(provider.class.get_list_of_groups).to eq(groups_hash)
|
654
633
|
end
|
655
634
|
end
|
656
635
|
|
657
636
|
describe '#get_attribute_from_dscl' do
|
658
637
|
# The below value is the result of executing
|
659
638
|
# `dscl -plist . read /Users/<username/ GeneratedUID`
|
660
|
-
# on an OS X system.
|
639
|
+
# on an OS X system.
|
661
640
|
let(:user_guid_xml) do
|
662
641
|
'<?xml version="1.0" encoding="UTF-8"?>
|
663
642
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
@@ -679,7 +658,7 @@ describe Puppet::Type.type(:user).provider(:directoryservice) do
|
|
679
658
|
|
680
659
|
it 'should return a hash containing a user\'s dscl attribute data' do
|
681
660
|
provider.class.expects(:dscl).with('-plist', '.', 'read', user_path, 'GeneratedUID').returns(user_guid_xml)
|
682
|
-
provider.class.get_attribute_from_dscl('Users', username, 'GeneratedUID').
|
661
|
+
expect(provider.class.get_attribute_from_dscl('Users', username, 'GeneratedUID')).to eq(user_guid_hash)
|
683
662
|
end
|
684
663
|
end
|
685
664
|
|
@@ -694,7 +673,7 @@ describe Puppet::Type.type(:user).provider(:directoryservice) do
|
|
694
673
|
stub_io_object.expects(:write).with('xml_plist_data')
|
695
674
|
stub_io_object.expects(:close_write)
|
696
675
|
stub_io_object.expects(:read).returns('binary_plist_data')
|
697
|
-
provider.class.convert_xml_to_binary('ruby_hash').
|
676
|
+
expect(provider.class.convert_xml_to_binary('ruby_hash')).to eq('binary_plist_data')
|
698
677
|
end
|
699
678
|
end
|
700
679
|
|
@@ -706,35 +685,35 @@ describe Puppet::Type.type(:user).provider(:directoryservice) do
|
|
706
685
|
stub_io_object.expects(:write).with('binary_plist_data')
|
707
686
|
stub_io_object.expects(:close_write)
|
708
687
|
stub_io_object.expects(:read).returns(user_plist_xml)
|
709
|
-
provider.class.convert_binary_to_xml('binary_plist_data').
|
688
|
+
expect(provider.class.convert_binary_to_xml('binary_plist_data')).to eq(user_plist_hash)
|
710
689
|
end
|
711
690
|
end
|
712
691
|
|
713
692
|
describe '#next_system_id' do
|
714
693
|
it 'should return the next available UID number that is not in the list obtained from dscl and is greater than the passed integer value' do
|
715
694
|
provider.expects(:dscl).with('.', '-list', '/Users', 'uid').returns("kathee 312\ngary 11\ntanny 33\njohn 9\nzach 5")
|
716
|
-
provider.next_system_id(30).
|
695
|
+
expect(provider.next_system_id(30)).to eq(34)
|
717
696
|
end
|
718
697
|
end
|
719
698
|
|
720
699
|
describe '#get_salted_sha512' do
|
721
700
|
it "should accept a hash whose 'SALTED-SHA512' key contains a StringIO object with a base64 encoded salted-SHA512 password hash and return the hex value of that password hash" do
|
722
|
-
provider.class.get_salted_sha512(sha512_embedded_bplist_hash).
|
701
|
+
expect(provider.class.get_salted_sha512(sha512_embedded_bplist_hash)).to eq(sha512_password_hash)
|
723
702
|
end
|
724
703
|
end
|
725
704
|
|
726
705
|
describe '#get_salted_sha512_pbkdf2' do
|
727
706
|
it "should accept a hash containing a PBKDF2 password hash, salt, and iterations value and return the correct password hash" do
|
728
|
-
provider.class.get_salted_sha512_pbkdf2('entropy', pbkdf2_embedded_bplist_hash).
|
707
|
+
expect(provider.class.get_salted_sha512_pbkdf2('entropy', pbkdf2_embedded_bplist_hash)).to eq(pbkdf2_password_hash)
|
729
708
|
end
|
730
709
|
it "should accept a hash containing a PBKDF2 password hash, salt, and iterations value and return the correct salt value" do
|
731
|
-
provider.class.get_salted_sha512_pbkdf2('salt', pbkdf2_embedded_bplist_hash).
|
710
|
+
expect(provider.class.get_salted_sha512_pbkdf2('salt', pbkdf2_embedded_bplist_hash)).to eq(pbkdf2_salt_value)
|
732
711
|
end
|
733
712
|
it "should accept a hash containing a PBKDF2 password hash, salt, and iterations value and return the correct iterations value" do
|
734
|
-
provider.class.get_salted_sha512_pbkdf2('iterations', pbkdf2_embedded_bplist_hash).
|
713
|
+
expect(provider.class.get_salted_sha512_pbkdf2('iterations', pbkdf2_embedded_bplist_hash)).to eq(pbkdf2_iterations_value)
|
735
714
|
end
|
736
715
|
it "should return a Fixnum value when looking up the PBKDF2 iterations value" do
|
737
|
-
provider.class.get_salted_sha512_pbkdf2('iterations', pbkdf2_embedded_bplist_hash).
|
716
|
+
expect(provider.class.get_salted_sha512_pbkdf2('iterations', pbkdf2_embedded_bplist_hash)).to be_a_kind_of(Fixnum)
|
738
717
|
end
|
739
718
|
it "should raise an error if a field other than 'entropy', 'salt', or 'iterations' is passed" do
|
740
719
|
expect { provider.class.get_salted_sha512_pbkdf2('othervalue', pbkdf2_embedded_bplist_hash) }.to raise_error(Puppet::Error, /Puppet has tried to read an incorrect value from the SALTED-SHA512-PBKDF2 hash. Acceptable fields are 'salt', 'entropy', or 'iterations'/)
|
@@ -752,25 +731,25 @@ describe Puppet::Type.type(:user).provider(:directoryservice) do
|
|
752
731
|
File.expects(:new).with(password_hash_file).returns(stub_password_file)
|
753
732
|
stub_password_file.expects(:read).returns('sha1_password_hash')
|
754
733
|
stub_password_file.expects(:close)
|
755
|
-
provider.class.get_sha1('user_guid').
|
734
|
+
expect(provider.class.get_sha1('user_guid')).to eq('sha1_password_hash')
|
756
735
|
end
|
757
736
|
|
758
737
|
it 'should return nil if the password_hash_file does not exist' do
|
759
738
|
Puppet::FileSystem.expects(:exist?).with(password_hash_file).returns(false)
|
760
|
-
provider.class.get_sha1('user_guid').
|
739
|
+
expect(provider.class.get_sha1('user_guid')).to eq(nil)
|
761
740
|
end
|
762
741
|
|
763
742
|
it 'should return nil if the password_hash_file is not a file' do
|
764
743
|
Puppet::FileSystem.expects(:exist?).with(password_hash_file).returns(true)
|
765
744
|
File.expects(:file?).with(password_hash_file).returns(false)
|
766
|
-
provider.class.get_sha1('user_guid').
|
745
|
+
expect(provider.class.get_sha1('user_guid')).to eq(nil)
|
767
746
|
end
|
768
747
|
|
769
748
|
it 'should raise an error if the password_hash_file is not readable' do
|
770
749
|
Puppet::FileSystem.expects(:exist?).with(password_hash_file).returns(true)
|
771
750
|
File.expects(:file?).with(password_hash_file).returns(true)
|
772
751
|
File.expects(:readable?).with(password_hash_file).returns(false)
|
773
|
-
expect { provider.class.get_sha1('user_guid').
|
752
|
+
expect { expect(provider.class.get_sha1('user_guid')).to eq(nil) }.to raise_error(Puppet::Error, /Could not read password hash file at #{password_hash_file}/)
|
774
753
|
end
|
775
754
|
end
|
776
755
|
|
@@ -914,35 +893,12 @@ describe Puppet::Type.type(:user).provider(:directoryservice) do
|
|
914
893
|
|
915
894
|
describe '#write_users_plist_to_disk' do
|
916
895
|
it 'should save the passed plist to disk and convert it to a binary plist' do
|
917
|
-
Plist::Emit.expects(:save_plist).with(user_plist_xml, "#{users_plist_dir}/
|
918
|
-
provider.expects(:plutil).with('-convert', 'binary1', "#{users_plist_dir}/
|
896
|
+
Plist::Emit.expects(:save_plist).with(user_plist_xml, "#{users_plist_dir}/nonexistent_user.plist")
|
897
|
+
provider.expects(:plutil).with('-convert', 'binary1', "#{users_plist_dir}/nonexistent_user.plist")
|
919
898
|
provider.write_users_plist_to_disk(user_plist_xml)
|
920
899
|
end
|
921
900
|
end
|
922
901
|
|
923
|
-
describe '#write_sha1_hash' do
|
924
|
-
let(:password_hash_dir) { '/var/db/shadow/hash' }
|
925
|
-
|
926
|
-
it "should write the sha1 hash to a file on disk named after the user's GUID and also ensure that ':ShadowHash;' is included in the user's AuthenticationAuthority" do
|
927
|
-
provider.class.expects(:get_attribute_from_dscl).with('Users', username, 'GeneratedUID').returns({'dsAttrTypeStandard:GeneratedUID' => ['GUID']})
|
928
|
-
provider.expects(:write_to_file).with("#{password_hash_dir}/GUID", 'sha1_password')
|
929
|
-
provider.expects(:dscl).with('.', '-merge', user_path, 'AuthenticationAuthority', ';ShadowHash;').returns(true)
|
930
|
-
provider.write_sha1_hash('sha1_password')
|
931
|
-
end
|
932
|
-
|
933
|
-
it "should raise an error if Puppet cannot write to the file in /var/db/shadow/hash named after the user's GUID" do
|
934
|
-
File.expects(:open).with('filename', 'w').raises(Errno::EACCES, 'boom')
|
935
|
-
expect { provider.write_to_file('filename', 'sha1_password') }.to raise_error Puppet::Error, /Could not write to file filename: Permission denied - boom/
|
936
|
-
end
|
937
|
-
|
938
|
-
it "should raise an error if dscl cannot merge ';ShadowHash;' into the user's AuthenticationAuthority" do
|
939
|
-
provider.class.expects(:get_attribute_from_dscl).with('Users', username, 'GeneratedUID').returns({'dsAttrTypeStandard:GeneratedUID' => ['GUID']})
|
940
|
-
provider.expects(:write_to_file).with("#{password_hash_dir}/GUID", 'sha1_password')
|
941
|
-
provider.expects(:dscl).with('.', '-merge', user_path, 'AuthenticationAuthority', ';ShadowHash;').raises(Puppet::ExecutionFailure, 'boom')
|
942
|
-
expect { provider.write_sha1_hash('sha1_password') }.to raise_error Puppet::Error, /Could not set the dscl AuthenticationAuthority key with value: ;ShadowHash;/
|
943
|
-
end
|
944
|
-
end
|
945
|
-
|
946
902
|
describe '#merge_attribute_with_dscl' do
|
947
903
|
it 'should raise an error if a dscl command raises an error' do
|
948
904
|
provider.expects(:dscl).with('.', '-merge', user_path, 'GeneratedUID', 'GUID').raises(Puppet::ExecutionFailure, 'boom')
|
@@ -964,7 +920,7 @@ describe Puppet::Type.type(:user).provider(:directoryservice) do
|
|
964
920
|
|
965
921
|
it 'should convert a plist to a valid Ruby hash' do
|
966
922
|
provider.expects(:plutil).with('-convert', 'xml1', '-o', '/dev/stdout', "#{users_plist_dir}/#{username}.plist").returns(test_plist)
|
967
|
-
provider.get_users_plist(username).
|
923
|
+
expect(provider.get_users_plist(username)).to eq(test_hash)
|
968
924
|
end
|
969
925
|
end
|
970
926
|
|
@@ -982,14 +938,14 @@ describe Puppet::Type.type(:user).provider(:directoryservice) do
|
|
982
938
|
end
|
983
939
|
|
984
940
|
it 'should return false if the passed users_plist does NOT have a ShadowHashData key' do
|
985
|
-
provider.get_shadow_hash_data(no_shadow_hash).
|
941
|
+
expect(provider.get_shadow_hash_data(no_shadow_hash)).to eq(false)
|
986
942
|
end
|
987
943
|
|
988
944
|
it 'should call convert_binary_to_xml() with the contents of the StringIO Object ' +
|
989
945
|
'located in the first element of the array of the ShadowHashData key if the ' +
|
990
946
|
'passed users_plist contains a ShadowHashData key' do
|
991
947
|
provider.class.expects(:convert_binary_to_xml).with('test').returns('returnvalue')
|
992
|
-
provider.get_shadow_hash_data(shadow_hash).
|
948
|
+
expect(provider.get_shadow_hash_data(shadow_hash)).to eq('returnvalue')
|
993
949
|
end
|
994
950
|
end
|
995
951
|
|
@@ -1002,16 +958,16 @@ describe Puppet::Type.type(:user).provider(:directoryservice) do
|
|
1002
958
|
it 'should call Facter.value(:macosx_productversion_major) ONLY ONCE no matter how ' +
|
1003
959
|
'many times get_os_version() is called' do
|
1004
960
|
Facter.expects(:value).with(:macosx_productversion_major).once.returns('10.8')
|
1005
|
-
provider.class.get_os_version.
|
1006
|
-
provider.class.get_os_version.
|
1007
|
-
provider.class.get_os_version.
|
1008
|
-
provider.class.get_os_version.
|
961
|
+
expect(provider.class.get_os_version).to eq('10.8')
|
962
|
+
expect(provider.class.get_os_version).to eq('10.8')
|
963
|
+
expect(provider.class.get_os_version).to eq('10.8')
|
964
|
+
expect(provider.class.get_os_version).to eq('10.8')
|
1009
965
|
end
|
1010
966
|
end
|
1011
967
|
|
1012
968
|
describe '#base64_decode_string' do
|
1013
969
|
it 'should return a Base64-decoded string appropriate for use in a user\'s plist' do
|
1014
|
-
provider.base64_decode_string(sha512_password_hash).
|
970
|
+
expect(provider.base64_decode_string(sha512_password_hash)).to eq(sha512_pw_string)
|
1015
971
|
end
|
1016
972
|
end
|
1017
973
|
|