puppet 5.5.22-x86-mingw32 → 6.0.0-x86-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.
- checksums.yaml +4 -4
- data/Gemfile +46 -72
- data/Gemfile.lock +86 -102
- data/MAINTAINERS +47 -0
- data/Rakefile +15 -19
- data/ext/build_defaults.yaml +0 -1
- data/ext/cert_inspector +3 -3
- data/ext/debian/copyright +0 -22
- data/ext/project_data.yaml +8 -10
- data/ext/puppet-test +2 -2
- data/ext/redhat/puppet.spec.erb +0 -4
- data/ext/regexp_nodes/regexp_nodes.rb +4 -4
- data/ext/solaris/smf/puppet.xml +0 -2
- data/ext/solaris/smf/svc-puppetd +1 -8
- data/ext/solaris/smf/svc-puppetmasterd +1 -8
- data/ext/windows/eventlog/Rakefile +32 -0
- data/ext/windows/eventlog/puppetres.dll +0 -0
- data/ext/windows/eventlog/puppetres.mc +18 -0
- data/ext/windows/service/daemon.rb +8 -54
- data/install.rb +24 -6
- data/lib/hiera/scope.rb +0 -7
- data/lib/puppet.rb +10 -21
- data/lib/puppet/agent.rb +13 -5
- data/lib/puppet/application.rb +10 -8
- data/lib/puppet/application/agent.rb +3 -21
- data/lib/puppet/application/apply.rb +22 -12
- data/lib/puppet/application/cert.rb +25 -180
- data/lib/puppet/application/describe.rb +9 -3
- data/lib/puppet/application/device.rb +41 -74
- data/lib/puppet/application/doc.rb +5 -3
- data/lib/puppet/application/filebucket.rb +1 -23
- data/lib/puppet/application/lookup.rb +2 -2
- data/lib/puppet/application/resource.rb +4 -4
- data/lib/puppet/application/script.rb +3 -3
- data/lib/puppet/application/ssl.rb +133 -0
- data/lib/puppet/application_support.rb +1 -2
- data/lib/puppet/configurer.rb +62 -127
- data/lib/puppet/configurer/downloader.rb +17 -34
- data/lib/puppet/configurer/fact_handler.rb +5 -1
- data/lib/puppet/configurer/plugin_handler.rb +2 -3
- data/lib/puppet/confine/false.rb +1 -7
- data/lib/puppet/confine/true.rb +1 -7
- data/lib/puppet/daemon.rb +2 -2
- data/lib/puppet/datatypes.rb +1 -1
- data/lib/puppet/defaults.rb +126 -286
- data/lib/puppet/environments.rb +2 -7
- data/lib/puppet/error.rb +14 -10
- data/lib/puppet/etc.rb +4 -25
- data/lib/puppet/external/dot.rb +23 -17
- data/lib/puppet/face/config.rb +50 -12
- data/lib/puppet/face/epp.rb +2 -2
- data/lib/puppet/face/facts.rb +1 -1
- data/lib/puppet/face/help.rb +21 -7
- data/lib/puppet/face/help/global.erb +2 -2
- data/lib/puppet/face/module/build.rb +4 -59
- data/lib/puppet/face/module/generate.rb +5 -247
- data/lib/puppet/face/module/install.rb +0 -4
- data/lib/puppet/face/module/list.rb +5 -10
- data/lib/puppet/face/module/search.rb +2 -2
- data/lib/puppet/face/module/uninstall.rb +1 -5
- data/lib/puppet/face/module/upgrade.rb +1 -5
- data/lib/puppet/face/node/clean.rb +14 -10
- data/lib/puppet/face/plugin.rb +2 -9
- data/lib/puppet/feature/base.rb +7 -26
- data/lib/puppet/feature/eventlog.rb +1 -1
- data/lib/puppet/file_bucket/dipper.rb +1 -1
- data/lib/puppet/file_serving/base.rb +7 -7
- data/lib/puppet/file_serving/fileset.rb +2 -2
- data/lib/puppet/file_serving/http_metadata.rb +1 -1
- data/lib/puppet/file_serving/metadata.rb +4 -3
- data/lib/puppet/file_serving/mount/locales.rb +2 -1
- data/lib/puppet/file_serving/mount/pluginfacts.rb +2 -1
- data/lib/puppet/file_serving/mount/plugins.rb +2 -1
- data/lib/puppet/file_system.rb +8 -0
- data/lib/puppet/file_system/memory_file.rb +1 -1
- data/lib/puppet/file_system/posix.rb +2 -3
- data/lib/puppet/file_system/uniquefile.rb +0 -4
- data/lib/puppet/forge.rb +8 -12
- data/lib/puppet/functions.rb +138 -0
- data/lib/puppet/functions/abs.rb +61 -0
- data/lib/puppet/functions/call.rb +38 -2
- data/lib/puppet/functions/camelcase.rb +62 -0
- data/lib/puppet/functions/capitalize.rb +61 -0
- data/lib/puppet/functions/ceiling.rb +37 -0
- data/lib/puppet/functions/chomp.rb +57 -0
- data/lib/puppet/functions/chop.rb +67 -0
- data/lib/puppet/functions/compare.rb +125 -0
- data/lib/puppet/functions/convert_to.rb +3 -2
- data/lib/puppet/functions/dig.rb +21 -1
- data/lib/puppet/functions/downcase.rb +89 -0
- data/lib/puppet/functions/epp.rb +4 -4
- data/lib/puppet/functions/eyaml_lookup_key.rb +4 -5
- data/lib/puppet/functions/filter.rb +7 -6
- data/lib/puppet/functions/floor.rb +37 -0
- data/lib/puppet/functions/get.rb +150 -0
- data/lib/puppet/functions/getvar.rb +87 -0
- data/lib/puppet/functions/inline_epp.rb +5 -5
- data/lib/puppet/functions/lstrip.rb +58 -0
- data/lib/puppet/functions/max.rb +183 -0
- data/lib/puppet/functions/min.rb +182 -0
- data/lib/puppet/functions/new.rb +3 -8
- data/lib/puppet/functions/reduce.rb +4 -2
- data/lib/puppet/functions/reverse_each.rb +1 -1
- data/lib/puppet/functions/round.rb +24 -0
- data/lib/puppet/functions/rstrip.rb +58 -0
- data/lib/puppet/functions/size.rb +15 -0
- data/lib/puppet/functions/sort.rb +74 -0
- data/lib/puppet/functions/step.rb +1 -1
- data/lib/puppet/functions/strip.rb +58 -0
- data/lib/puppet/functions/upcase.rb +89 -0
- data/lib/puppet/functions/yaml_data.rb +4 -5
- data/lib/puppet/gettext/config.rb +1 -1
- data/lib/puppet/gettext/module_translations.rb +1 -1
- data/lib/puppet/graph.rb +0 -2
- data/lib/puppet/graph/rb_tree_map.rb +2 -2
- data/lib/puppet/graph/simple_graph.rb +10 -7
- data/lib/puppet/indirector/catalog/compiler.rb +0 -8
- data/lib/puppet/indirector/catalog/json.rb +14 -3
- data/lib/puppet/indirector/catalog/yaml.rb +0 -16
- data/lib/puppet/indirector/certificate/file.rb +0 -1
- data/lib/puppet/indirector/facts/yaml.rb +4 -2
- data/lib/puppet/indirector/file_bucket_file/file.rb +1 -1
- data/lib/puppet/indirector/hiera.rb +0 -6
- data/lib/puppet/indirector/indirection.rb +8 -12
- data/lib/puppet/indirector/key/file.rb +1 -6
- data/lib/puppet/indirector/node/exec.rb +1 -3
- data/lib/puppet/indirector/node/yaml.rb +0 -6
- data/lib/puppet/indirector/request.rb +20 -27
- data/lib/puppet/indirector/resource/ral.rb +3 -1
- data/lib/puppet/indirector/resource/validator.rb +1 -1
- data/lib/puppet/indirector/rest.rb +7 -65
- data/lib/puppet/indirector/ssl_file.rb +3 -44
- data/lib/puppet/indirector/terminus.rb +1 -1
- data/lib/puppet/indirector/yaml.rb +4 -4
- data/lib/puppet/info_service/task_information_service.rb +7 -3
- data/lib/puppet/interface.rb +2 -3
- data/lib/puppet/interface/action.rb +2 -5
- data/lib/puppet/interface/face_collection.rb +3 -1
- data/lib/puppet/loaders.rb +2 -0
- data/lib/puppet/metatype/manager.rb +3 -5
- data/lib/puppet/module.rb +5 -31
- data/lib/puppet/module/task.rb +208 -30
- data/lib/puppet/module_tool.rb +2 -5
- data/lib/puppet/module_tool/applications.rb +0 -1
- data/lib/puppet/module_tool/applications/application.rb +1 -1
- data/lib/puppet/module_tool/applications/installer.rb +7 -8
- data/lib/puppet/module_tool/applications/uninstaller.rb +4 -5
- data/lib/puppet/module_tool/applications/unpacker.rb +1 -1
- data/lib/puppet/module_tool/applications/upgrader.rb +5 -6
- data/lib/puppet/module_tool/installed_modules.rb +2 -2
- data/lib/puppet/module_tool/local_tarball.rb +3 -3
- data/lib/puppet/module_tool/metadata.rb +1 -2
- data/lib/puppet/module_tool/shared_behaviors.rb +6 -6
- data/lib/puppet/module_tool/tar/mini.rb +2 -12
- data/lib/puppet/network/authconfig.rb +0 -13
- data/lib/puppet/network/format_support.rb +13 -8
- data/lib/puppet/network/formats.rb +93 -2
- data/lib/puppet/network/http.rb +0 -2
- data/lib/puppet/network/http/api.rb +1 -10
- data/lib/puppet/network/http/api/indirected_routes.rb +22 -16
- data/lib/puppet/network/http/api/master/v3/environment.rb +0 -3
- data/lib/puppet/network/http/connection.rb +14 -57
- data/lib/puppet/network/http/factory.rb +13 -7
- data/lib/puppet/network/http/handler.rb +59 -27
- data/lib/puppet/network/http/pool.rb +1 -7
- data/lib/puppet/network/http/site.rb +1 -1
- data/lib/puppet/network/resolver.rb +140 -67
- data/lib/puppet/node.rb +1 -2
- data/lib/puppet/node/environment.rb +5 -30
- data/lib/puppet/node/facts.rb +11 -1
- data/lib/puppet/parameter.rb +4 -7
- data/lib/puppet/parser/ast.rb +5 -9
- data/lib/puppet/parser/ast/branch.rb +3 -3
- data/lib/puppet/parser/ast/leaf.rb +5 -0
- data/lib/puppet/parser/ast/resourceparam.rb +1 -1
- data/lib/puppet/parser/catalog_compiler.rb +32 -0
- data/lib/puppet/parser/compiler.rb +2 -3
- data/lib/puppet/parser/compiler/catalog_validator/env_relationship_validator.rb +0 -2
- data/lib/puppet/parser/compiler/catalog_validator/site_validator.rb +0 -2
- data/lib/puppet/parser/environment_compiler.rb +0 -3
- data/lib/puppet/parser/functions.rb +48 -18
- data/lib/puppet/parser/functions/epp.rb +3 -3
- data/lib/puppet/parser/functions/filter.rb +1 -1
- data/lib/puppet/parser/functions/generate.rb +1 -1
- data/lib/puppet/parser/functions/inline_epp.rb +5 -5
- data/lib/puppet/parser/resource.rb +2 -4
- data/lib/puppet/parser/resource/param.rb +12 -11
- data/lib/puppet/parser/scope.rb +6 -8
- data/lib/puppet/parser/script_compiler.rb +7 -2
- data/lib/puppet/pops.rb +1 -0
- data/lib/puppet/pops/adaptable.rb +13 -7
- data/lib/puppet/pops/adapters.rb +18 -8
- data/lib/puppet/pops/evaluator/access_operator.rb +2 -2
- data/lib/puppet/pops/evaluator/collectors/abstract_collector.rb +4 -4
- data/lib/puppet/pops/evaluator/collectors/catalog_collector.rb +1 -1
- data/lib/puppet/pops/evaluator/collectors/exported_collector.rb +1 -1
- data/lib/puppet/pops/evaluator/compare_operator.rb +3 -1
- data/lib/puppet/pops/evaluator/deferred_resolver.rb +127 -0
- data/lib/puppet/pops/evaluator/evaluator_impl.rb +17 -2
- data/lib/puppet/pops/evaluator/external_syntax_support.rb +2 -3
- data/lib/puppet/pops/evaluator/runtime3_converter.rb +23 -4
- data/lib/puppet/pops/evaluator/runtime3_support.rb +7 -8
- data/lib/puppet/pops/functions/dispatch.rb +6 -0
- data/lib/puppet/pops/issues.rb +9 -10
- data/lib/puppet/pops/loader/loader.rb +1 -1
- data/lib/puppet/pops/loader/loader_paths.rb +5 -3
- data/lib/puppet/pops/loader/module_loaders.rb +47 -21
- data/lib/puppet/pops/loader/null_loader.rb +60 -0
- data/lib/puppet/pops/loader/ruby_legacy_function_instantiator.rb +54 -0
- data/lib/puppet/pops/loader/static_loader.rb +0 -36
- data/lib/puppet/pops/loader/task_instantiator.rb +72 -44
- data/lib/puppet/pops/loaders.rb +21 -33
- data/lib/puppet/pops/lookup/hiera_config.rb +1 -2
- data/lib/puppet/pops/lookup/sub_lookup.rb +1 -1
- data/lib/puppet/pops/merge_strategy.rb +18 -22
- data/lib/puppet/pops/model/ast.pp +16 -0
- data/lib/puppet/pops/model/ast.rb +94 -0
- data/lib/puppet/pops/model/factory.rb +17 -38
- data/lib/puppet/pops/model/model_label_provider.rb +8 -1
- data/lib/puppet/pops/parser/egrammar.ra +14 -3
- data/lib/puppet/pops/parser/eparser.rb +1537 -1492
- data/lib/puppet/pops/parser/epp_support.rb +6 -2
- data/lib/puppet/pops/parser/heredoc_support.rb +8 -17
- data/lib/puppet/pops/parser/interpolation_support.rb +4 -4
- data/lib/puppet/pops/parser/lexer2.rb +2 -7
- data/lib/puppet/pops/parser/locator.rb +87 -107
- data/lib/puppet/pops/parser/parser_support.rb +2 -11
- data/lib/puppet/pops/parser/pn_parser.rb +16 -17
- data/lib/puppet/pops/pcore.rb +19 -8
- data/lib/puppet/pops/puppet_stack.rb +48 -51
- data/lib/puppet/pops/resource/resource_type_impl.rb +0 -2
- data/lib/puppet/pops/serialization.rb +3 -2
- data/lib/puppet/pops/serialization/from_data_converter.rb +4 -3
- data/lib/puppet/pops/serialization/to_data_converter.rb +3 -3
- data/lib/puppet/pops/serialization/to_stringified_converter.rb +226 -0
- data/lib/puppet/pops/types/iterable.rb +8 -34
- data/lib/puppet/pops/types/p_binary_type.rb +1 -2
- data/lib/puppet/pops/types/p_meta_type.rb +1 -1
- data/lib/puppet/pops/types/p_object_type.rb +3 -0
- data/lib/puppet/pops/types/p_sensitive_type.rb +1 -1
- data/lib/puppet/pops/types/p_timespan_type.rb +2 -2
- data/lib/puppet/pops/types/p_type_set_type.rb +0 -4
- data/lib/puppet/pops/types/string_converter.rb +12 -21
- data/lib/puppet/pops/types/type_calculator.rb +0 -24
- data/lib/puppet/pops/types/type_factory.rb +17 -0
- data/lib/puppet/pops/types/type_mismatch_describer.rb +1 -1
- data/lib/puppet/pops/types/types.rb +7 -32
- data/lib/puppet/pops/validation/checker4_0.rb +23 -33
- data/lib/puppet/pops/validation/tasks_checker.rb +47 -6
- data/lib/puppet/pops/validation/validator_factory_4_0.rb +7 -10
- data/lib/puppet/property.rb +1 -1
- data/lib/puppet/property/ensure.rb +1 -1
- data/lib/puppet/provider.rb +14 -2
- data/lib/puppet/provider/exec.rb +58 -59
- data/lib/puppet/provider/file/posix.rb +0 -5
- data/lib/puppet/provider/file/windows.rb +2 -50
- data/lib/puppet/provider/group/aix.rb +2 -18
- data/lib/puppet/provider/group/groupadd.rb +19 -19
- data/lib/puppet/provider/group/windows_adsi.rb +4 -11
- data/lib/puppet/provider/nameservice.rb +28 -11
- data/lib/puppet/provider/nameservice/directoryservice.rb +1 -1
- data/lib/puppet/provider/nameservice/pw.rb +2 -2
- data/lib/puppet/provider/package.rb +0 -2
- data/lib/puppet/provider/package/aix.rb +2 -17
- data/lib/puppet/provider/package/apt.rb +3 -14
- data/lib/puppet/provider/package/dnf.rb +3 -3
- data/lib/puppet/provider/package/dpkg.rb +7 -18
- data/lib/puppet/provider/package/fink.rb +3 -20
- data/lib/puppet/provider/package/gem.rb +43 -105
- data/lib/puppet/provider/package/openbsd.rb +2 -14
- data/lib/puppet/provider/package/pip.rb +108 -160
- data/lib/puppet/provider/package/pip3.rb +1 -1
- data/lib/puppet/provider/package/pkg.rb +5 -18
- data/lib/puppet/provider/package/pkgdmg.rb +1 -1
- data/lib/puppet/provider/package/pkgng.rb +4 -16
- data/lib/puppet/provider/package/portage.rb +6 -6
- data/lib/puppet/provider/package/puppet_gem.rb +2 -7
- data/lib/puppet/provider/package/rpm.rb +33 -82
- data/lib/puppet/provider/package/windows.rb +2 -6
- data/lib/puppet/provider/package/windows/exe_package.rb +10 -16
- data/lib/puppet/provider/package/windows/msi_package.rb +0 -8
- data/lib/puppet/provider/package/windows/package.rb +2 -10
- data/lib/puppet/provider/package/yum.rb +25 -37
- data/lib/puppet/provider/package/zypper.rb +0 -1
- data/lib/puppet/provider/parsedfile.rb +5 -26
- data/lib/puppet/provider/service/base.rb +1 -1
- data/lib/puppet/provider/service/daemontools.rb +9 -9
- data/lib/puppet/provider/service/debian.rb +1 -0
- data/lib/puppet/provider/service/launchd.rb +8 -39
- data/lib/puppet/provider/service/openbsd.rb +1 -1
- data/lib/puppet/provider/service/rcng.rb +2 -2
- data/lib/puppet/provider/service/runit.rb +8 -2
- data/lib/puppet/provider/service/smf.rb +0 -54
- data/lib/puppet/provider/service/systemd.rb +24 -35
- data/lib/puppet/provider/service/upstart.rb +1 -3
- data/lib/puppet/provider/service/windows.rb +3 -23
- data/lib/puppet/provider/user/aix.rb +2 -48
- data/lib/puppet/provider/user/directoryservice.rb +8 -45
- data/lib/puppet/provider/user/hpux.rb +1 -1
- data/lib/puppet/provider/user/pw.rb +3 -12
- data/lib/puppet/provider/user/user_role_add.rb +1 -5
- data/lib/puppet/provider/user/useradd.rb +44 -74
- data/lib/puppet/provider/user/windows_adsi.rb +0 -7
- data/lib/puppet/reference/indirection.rb +2 -2
- data/lib/puppet/reference/metaparameter.rb +3 -1
- data/lib/puppet/reference/providers.rb +1 -1
- data/lib/puppet/reference/type.rb +9 -3
- data/lib/puppet/reports.rb +3 -3
- data/lib/puppet/resource.rb +22 -22
- data/lib/puppet/resource/catalog.rb +8 -14
- data/lib/puppet/resource/type.rb +1 -10
- data/lib/puppet/rest/client.rb +83 -0
- data/lib/puppet/rest/errors.rb +14 -0
- data/lib/puppet/rest/response.rb +34 -0
- data/lib/puppet/rest/route.rb +84 -0
- data/lib/puppet/rest/routes.rb +154 -0
- data/lib/puppet/rest/ssl_context.rb +13 -0
- data/lib/puppet/settings.rb +9 -54
- data/lib/puppet/settings/config_file.rb +1 -2
- data/lib/puppet/settings/environment_conf.rb +0 -1
- data/lib/puppet/settings/file_setting.rb +1 -1
- data/lib/puppet/settings/server_list_setting.rb +0 -9
- data/lib/puppet/ssl.rb +0 -1
- data/lib/puppet/ssl/base.rb +1 -9
- data/lib/puppet/ssl/certificate.rb +7 -4
- data/lib/puppet/ssl/certificate_request.rb +6 -14
- data/lib/puppet/ssl/certificate_request_attributes.rb +1 -1
- data/lib/puppet/ssl/host.rb +400 -174
- data/lib/puppet/ssl/key.rb +1 -5
- data/lib/puppet/ssl/oids.rb +3 -3
- data/lib/puppet/ssl/validator/default_validator.rb +33 -49
- data/lib/puppet/test/test_helper.rb +12 -18
- data/lib/puppet/transaction.rb +7 -12
- data/lib/puppet/transaction/event.rb +37 -14
- data/lib/puppet/transaction/event_manager.rb +3 -11
- data/lib/puppet/transaction/persistence.rb +1 -1
- data/lib/puppet/transaction/report.rb +1 -1
- data/lib/puppet/transaction/resource_harness.rb +2 -5
- data/lib/puppet/type.rb +7 -10
- data/lib/puppet/type/exec.rb +16 -50
- data/lib/puppet/type/file.rb +7 -16
- data/lib/puppet/type/file/content.rb +2 -3
- data/lib/puppet/type/file/data_sync.rb +1 -5
- data/lib/puppet/type/file/mode.rb +2 -7
- data/lib/puppet/type/file/source.rb +2 -1
- data/lib/puppet/type/filebucket.rb +8 -12
- data/lib/puppet/type/group.rb +3 -33
- data/lib/puppet/type/notify.rb +2 -3
- data/lib/puppet/type/package.rb +18 -154
- data/lib/puppet/type/resources.rb +2 -12
- data/lib/puppet/type/schedule.rb +34 -96
- data/lib/puppet/type/service.rb +10 -9
- data/lib/puppet/type/tidy.rb +1 -1
- data/lib/puppet/type/user.rb +30 -14
- data/lib/puppet/util.rb +28 -52
- data/lib/puppet/util/autoload.rb +62 -56
- data/lib/puppet/util/character_encoding.rb +0 -22
- data/lib/puppet/util/classgen.rb +0 -6
- data/lib/puppet/util/command_line.rb +4 -7
- data/lib/puppet/util/command_line/trollop.rb +1 -1
- data/lib/puppet/util/connection.rb +74 -0
- data/lib/puppet/util/execution.rb +7 -22
- data/lib/puppet/util/feature.rb +63 -41
- data/lib/puppet/util/fileparsing.rb +27 -5
- data/lib/puppet/util/filetype.rb +8 -56
- data/lib/puppet/util/http_proxy.rb +18 -27
- data/lib/puppet/util/instance_loader.rb +3 -21
- data/lib/puppet/util/json.rb +0 -8
- data/lib/puppet/util/ldap/connection.rb +7 -7
- data/lib/puppet/util/log.rb +3 -8
- data/lib/puppet/util/log/destinations.rb +13 -5
- data/lib/puppet/util/logging.rb +19 -31
- data/lib/puppet/util/metric.rb +2 -2
- data/lib/puppet/util/monkey_patches.rb +1 -1
- data/lib/puppet/util/network_device/base.rb +1 -1
- data/lib/puppet/util/pidlock.rb +3 -23
- data/lib/puppet/util/platform.rb +3 -0
- data/lib/puppet/util/plist.rb +0 -6
- data/lib/puppet/util/posix.rb +0 -15
- data/lib/puppet/util/provider_features.rb +6 -7
- data/lib/puppet/util/rdoc.rb +2 -2
- data/lib/puppet/util/rdoc/parser/puppet_parser_core.rb +1 -1
- data/lib/puppet/util/reference.rb +8 -7
- data/lib/puppet/util/resource_template.rb +1 -1
- data/lib/puppet/util/rubygems.rb +1 -13
- data/lib/puppet/util/run_mode.rb +1 -1
- data/lib/puppet/util/selinux.rb +3 -9
- data/lib/puppet/util/ssl.rb +40 -1
- data/lib/puppet/util/storage.rb +1 -13
- data/lib/puppet/util/suidmanager.rb +7 -5
- data/lib/puppet/util/tag_set.rb +1 -1
- data/lib/puppet/util/tagging.rb +1 -1
- data/lib/puppet/util/windows.rb +15 -0
- data/lib/puppet/util/windows/adsi.rb +7 -116
- data/lib/puppet/util/windows/api_types.rb +33 -46
- data/lib/puppet/util/windows/eventlog.rb +6 -1
- data/lib/puppet/util/windows/principal.rb +6 -8
- data/lib/puppet/util/windows/process.rb +3 -94
- data/lib/puppet/util/windows/registry.rb +14 -46
- data/lib/puppet/util/windows/security.rb +2 -40
- data/lib/puppet/util/windows/service.rb +72 -431
- data/lib/puppet/util/windows/sid.rb +3 -4
- data/lib/puppet/util/windows/user.rb +9 -17
- data/lib/puppet/util/yaml.rb +41 -5
- data/lib/puppet/vendor.rb +1 -1
- data/lib/puppet/version.rb +1 -1
- data/lib/puppet_pal.rb +246 -23
- data/locales/ja/puppet.po +11128 -0
- data/locales/puppet.pot +1321 -2527
- data/man/man5/puppet.conf.5 +31 -191
- data/man/man8/puppet-agent.8 +2 -2
- data/man/man8/puppet-apply.8 +1 -1
- data/man/man8/puppet-catalog.8 +1 -1
- data/man/man8/puppet-config.8 +3 -3
- data/man/man8/puppet-describe.8 +1 -1
- data/man/man8/puppet-device.8 +19 -23
- data/man/man8/puppet-doc.8 +1 -1
- data/man/man8/puppet-epp.8 +1 -1
- data/man/man8/puppet-facts.8 +1 -1
- data/man/man8/puppet-filebucket.8 +2 -21
- data/man/man8/puppet-generate.8 +1 -1
- data/man/man8/puppet-help.8 +1 -1
- data/man/man8/puppet-key.8 +1 -7
- data/man/man8/puppet-lookup.8 +1 -1
- data/man/man8/puppet-man.8 +1 -1
- data/man/man8/puppet-module.8 +10 -100
- data/man/man8/puppet-node.8 +4 -7
- data/man/man8/puppet-parser.8 +1 -1
- data/man/man8/puppet-plugin.8 +1 -1
- data/man/man8/puppet-report.8 +1 -1
- data/man/man8/puppet-resource.8 +1 -1
- data/man/man8/puppet-script.8 +1 -1
- data/man/man8/puppet-ssl.8 +28 -0
- data/man/man8/puppet-status.8 +1 -1
- data/man/man8/puppet.8 +12 -3
- data/spec/fixtures/unit/functions/hiera/hiera/backend/hieraspec_backend.rb +22 -0
- data/spec/fixtures/unit/functions/lookup/hiera/backend/custom_backend.rb +18 -0
- data/spec/fixtures/unit/functions/lookup/hiera/backend/other_backend.rb +7 -0
- data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/manifests/init.pp +6 -6
- data/spec/fixtures/unit/provider/package/pkgng/pkg.info +0 -1
- data/spec/fixtures/unit/provider/package/pkgng/pkg.version +0 -2
- data/spec/fixtures/unit/provider/service/systemd/list_unit_files_services +0 -9
- data/spec/integration/agent/logging_spec.rb +9 -7
- data/spec/integration/application/apply_spec.rb +31 -26
- data/spec/integration/application/doc_spec.rb +2 -1
- data/spec/integration/application/lookup_spec.rb +5 -5
- data/spec/integration/configurer_spec.rb +8 -76
- data/spec/integration/data_binding_spec.rb +1 -1
- data/spec/integration/defaults_spec.rb +13 -16
- data/spec/integration/directory_environments_spec.rb +1 -1
- data/spec/integration/faces/config_spec.rb +4 -3
- data/spec/integration/faces/documentation_spec.rb +1 -0
- data/spec/integration/faces/plugin_spec.rb +49 -29
- data/spec/integration/file_bucket/file_spec.rb +4 -19
- data/spec/integration/file_serving/content_spec.rb +1 -0
- data/spec/integration/file_serving/fileset_spec.rb +1 -0
- data/spec/integration/file_serving/metadata_spec.rb +1 -0
- data/spec/integration/file_serving/terminus_helper_spec.rb +1 -0
- data/spec/integration/file_system/uniquefile_spec.rb +26 -29
- data/spec/integration/indirector/catalog/compiler_spec.rb +11 -10
- data/spec/integration/indirector/direct_file_server_spec.rb +1 -1
- data/spec/integration/indirector/facts/facter_spec.rb +8 -22
- data/spec/integration/indirector/file_content/file_server_spec.rb +8 -7
- data/spec/integration/indirector/file_metadata/file_server_spec.rb +8 -7
- data/spec/integration/network/authconfig_spec.rb +24 -23
- data/spec/integration/network/formats_spec.rb +1 -0
- data/spec/integration/network/http/api/indirected_routes_spec.rb +6 -34
- data/spec/integration/node/environment_spec.rb +2 -1
- data/spec/integration/node/facts_spec.rb +10 -9
- data/spec/integration/node_spec.rb +7 -10
- data/spec/integration/parser/catalog_spec.rb +8 -6
- data/spec/integration/parser/collection_spec.rb +9 -4
- data/spec/integration/parser/compiler_spec.rb +7 -25
- data/spec/integration/parser/scope_spec.rb +1 -1
- data/spec/integration/parser/undef_param_spec.rb +1 -1
- data/spec/integration/provider/service/init_spec.rb +9 -6
- data/spec/integration/provider/service/systemd_spec.rb +14 -11
- data/spec/integration/provider/service/windows_spec.rb +11 -8
- data/spec/integration/reference/providers_spec.rb +7 -0
- data/spec/integration/reports_spec.rb +2 -1
- data/spec/integration/resource/catalog_spec.rb +17 -14
- data/spec/integration/resource/type_collection_spec.rb +5 -4
- data/spec/integration/ssl/certificate_request_spec.rb +1 -2
- data/spec/integration/ssl/host_spec.rb +17 -24
- data/spec/integration/ssl/key_spec.rb +7 -2
- data/spec/integration/test/test_helper_spec.rb +32 -0
- data/spec/integration/transaction/report_spec.rb +14 -9
- data/spec/integration/type/exec_spec.rb +2 -1
- data/spec/integration/type/file_spec.rb +38 -46
- data/spec/integration/type/package_spec.rb +25 -21
- data/spec/integration/type/tidy_spec.rb +2 -1
- data/spec/integration/type_spec.rb +1 -0
- data/spec/integration/util/autoload_spec.rb +11 -7
- data/spec/integration/util/execution_spec.rb +5 -32
- data/spec/integration/util/rdoc/parser_spec.rb +14 -23
- data/spec/integration/util/settings_spec.rb +2 -1
- data/spec/integration/util/windows/adsi_spec.rb +8 -11
- data/spec/integration/util/windows/principal_spec.rb +2 -1
- data/spec/integration/util/windows/process_spec.rb +9 -7
- data/spec/integration/util/windows/registry_spec.rb +46 -127
- data/spec/integration/util/windows/security_spec.rb +15 -16
- data/spec/integration/util/windows/user_spec.rb +29 -66
- data/spec/integration/util_spec.rb +10 -7
- data/spec/lib/matchers/json.rb +12 -18
- data/{lib/puppet/ssl → spec/lib/puppet}/certificate_factory.rb +5 -6
- data/spec/lib/puppet/test_ca.rb +109 -0
- data/spec/lib/puppet_spec/compiler.rb +28 -1
- data/spec/lib/puppet_spec/files.rb +29 -23
- data/spec/lib/puppet_spec/module_tool/shared_functions.rb +1 -1
- data/spec/lib/puppet_spec/modules.rb +11 -1
- data/spec/lib/puppet_spec/scope.rb +2 -1
- data/spec/lib/puppet_spec/ssl.rb +265 -0
- data/spec/lib/puppet_spec/validators.rb +37 -0
- data/spec/shared_behaviours/all_parsedfile_providers.rb +1 -1
- data/spec/shared_behaviours/file_server_terminus.rb +9 -8
- data/spec/shared_behaviours/file_serving.rb +8 -6
- data/spec/shared_behaviours/file_serving_model.rb +5 -22
- data/spec/shared_behaviours/hiera_indirections.rb +4 -3
- data/spec/shared_behaviours/iterative_functions.rb +1 -0
- data/spec/shared_behaviours/memory_terminus.rb +2 -2
- data/spec/shared_behaviours/path_parameters.rb +1 -1
- data/spec/shared_contexts/types_setup.rb +0 -2
- data/spec/shared_examples/rhel_package_provider.rb +70 -112
- data/spec/spec_helper.rb +1 -15
- data/spec/unit/agent/disabler_spec.rb +5 -4
- data/spec/unit/agent/locker_spec.rb +13 -12
- data/spec/unit/agent_spec.rb +102 -105
- data/spec/unit/application/agent_spec.rb +95 -114
- data/spec/unit/application/apply_spec.rb +92 -119
- data/spec/unit/application/config_spec.rb +1 -0
- data/spec/unit/application/describe_spec.rb +7 -6
- data/spec/unit/application/device_spec.rb +180 -181
- data/spec/unit/application/doc_spec.rb +46 -44
- data/spec/unit/application/face_base_spec.rb +62 -61
- data/spec/unit/application/facts_spec.rb +4 -3
- data/spec/unit/application/filebucket_spec.rb +74 -66
- data/spec/unit/application/indirection_base_spec.rb +6 -8
- data/spec/unit/application/lookup_spec.rb +44 -37
- data/spec/unit/application/resource_spec.rb +48 -42
- data/spec/unit/application/ssl_spec.rb +322 -0
- data/spec/unit/application_spec.rb +108 -90
- data/spec/unit/capability_spec.rb +15 -16
- data/spec/unit/{ssl/certificate_factory_spec.rb → certificate_factory_spec.rb} +13 -20
- data/spec/unit/configurer/downloader_spec.rb +22 -31
- data/spec/unit/configurer/fact_handler_spec.rb +7 -2
- data/spec/unit/configurer/plugin_handler_spec.rb +8 -41
- data/spec/unit/configurer_spec.rb +475 -520
- data/spec/unit/confine/exists_spec.rb +15 -17
- data/spec/unit/confine/false_spec.rb +6 -32
- data/spec/unit/confine/feature_spec.rb +5 -7
- data/spec/unit/confine/true_spec.rb +6 -32
- data/spec/unit/confine/variable_spec.rb +15 -14
- data/spec/unit/confine_collection_spec.rb +29 -28
- data/spec/unit/confine_spec.rb +14 -13
- data/spec/unit/confiner_spec.rb +11 -10
- data/spec/unit/context/trusted_information_spec.rb +4 -3
- data/spec/unit/daemon_spec.rb +38 -35
- data/spec/unit/data_providers/function_data_provider_spec.rb +1 -0
- data/spec/unit/data_providers/hiera_data_provider_spec.rb +1 -0
- data/spec/unit/datatypes_spec.rb +4 -3
- data/spec/unit/defaults_spec.rb +61 -32
- data/spec/unit/environments_spec.rb +7 -7
- data/spec/unit/etc_spec.rb +29 -52
- data/spec/unit/external/pson_spec.rb +1 -0
- data/spec/unit/face/catalog_spec.rb +1 -0
- data/spec/unit/face/config_spec.rb +35 -31
- data/spec/unit/face/epp_face_spec.rb +4 -3
- data/spec/unit/face/facts_spec.rb +6 -14
- data/spec/unit/face/generate_spec.rb +5 -4
- data/spec/unit/face/help_spec.rb +8 -7
- data/spec/unit/face/key_spec.rb +1 -0
- data/spec/unit/face/man_spec.rb +2 -1
- data/spec/unit/face/module/install_spec.rb +5 -3
- data/spec/unit/face/module/list_spec.rb +12 -62
- data/spec/unit/face/module/search_spec.rb +9 -11
- data/spec/unit/face/module/uninstall_spec.rb +8 -4
- data/spec/unit/face/node_spec.rb +30 -52
- data/spec/unit/face/parser_spec.rb +3 -3
- data/spec/unit/face/plugin_spec.rb +9 -44
- data/spec/unit/face/status_spec.rb +1 -0
- data/spec/unit/file_bucket/dipper_spec.rb +24 -28
- data/spec/unit/file_bucket/file_spec.rb +2 -0
- data/spec/unit/file_serving/base_spec.rb +18 -20
- data/spec/unit/file_serving/configuration/parser_spec.rb +28 -27
- data/spec/unit/file_serving/configuration_spec.rb +66 -63
- data/spec/unit/file_serving/content_spec.rb +11 -10
- data/spec/unit/file_serving/fileset_spec.rb +58 -63
- data/spec/unit/file_serving/http_metadata_spec.rb +7 -8
- data/spec/unit/file_serving/metadata_spec.rb +40 -40
- data/spec/unit/file_serving/mount/file_spec.rb +32 -31
- data/spec/unit/file_serving/mount/locales_spec.rb +26 -25
- data/spec/unit/file_serving/mount/modules_spec.rb +15 -14
- data/spec/unit/file_serving/mount/pluginfacts_spec.rb +26 -25
- data/spec/unit/file_serving/mount/plugins_spec.rb +26 -25
- data/spec/unit/file_serving/mount/tasks_spec.rb +15 -14
- data/spec/unit/file_serving/mount_spec.rb +1 -0
- data/spec/unit/file_serving/terminus_helper_spec.rb +42 -37
- data/spec/unit/file_serving/terminus_selector_spec.rb +13 -12
- data/spec/unit/file_system/path_pattern_spec.rb +1 -1
- data/spec/unit/file_system/uniquefile_spec.rb +6 -17
- data/spec/unit/file_system_spec.rb +9 -6
- data/spec/unit/forge/errors_spec.rb +1 -1
- data/spec/unit/forge/forge_spec.rb +16 -15
- data/spec/unit/forge/module_release_spec.rb +18 -18
- data/spec/unit/forge/repository_spec.rb +30 -27
- data/spec/unit/forge_spec.rb +11 -15
- data/spec/unit/functions/abs_spec.rb +70 -0
- data/spec/unit/functions/binary_file_spec.rb +3 -3
- data/spec/unit/functions/call_spec.rb +59 -5
- data/spec/unit/functions/camelcase_spec.rb +34 -0
- data/spec/unit/functions/capitalize_spec.rb +34 -0
- data/spec/unit/functions/ceiling_spec.rb +65 -0
- data/spec/unit/functions/chomp_spec.rb +46 -0
- data/spec/unit/functions/chop_spec.rb +38 -0
- data/spec/unit/functions/compare_spec.rb +147 -0
- data/spec/unit/functions/contain_spec.rb +2 -0
- data/spec/unit/functions/convert_to_spec.rb +3 -0
- data/spec/unit/functions/defined_spec.rb +1 -0
- data/spec/unit/functions/downcase_spec.rb +34 -0
- data/spec/unit/functions/epp_spec.rb +2 -2
- data/spec/unit/functions/filter_spec.rb +4 -4
- data/spec/unit/functions/find_file_spec.rb +7 -7
- data/spec/unit/functions/floor_spec.rb +65 -0
- data/spec/unit/functions/get_spec.rb +135 -0
- data/spec/unit/functions/getvar_spec.rb +121 -0
- data/spec/unit/functions/hiera_spec.rb +14 -48
- data/spec/unit/functions/include_spec.rb +4 -0
- data/spec/unit/functions/lookup_fixture_spec.rb +1 -0
- data/spec/unit/functions/lookup_spec.rb +37 -62
- data/spec/unit/functions/lstrip_spec.rb +30 -0
- data/spec/unit/functions/match_spec.rb +3 -4
- data/spec/unit/functions/max_spec.rb +129 -0
- data/spec/unit/functions/min_spec.rb +129 -0
- data/spec/unit/functions/module_directory_spec.rb +12 -12
- data/spec/unit/functions/new_spec.rb +0 -15
- data/spec/unit/functions/regsubst_spec.rb +3 -4
- data/spec/unit/functions/require_spec.rb +3 -0
- data/spec/unit/functions/round_spec.rb +41 -0
- data/spec/unit/functions/rstrip_spec.rb +30 -0
- data/spec/unit/functions/shared.rb +8 -5
- data/spec/unit/functions/size_spec.rb +50 -0
- data/spec/unit/functions/sort_spec.rb +79 -0
- data/spec/unit/functions/split_spec.rb +3 -4
- data/spec/unit/functions/strip_spec.rb +30 -0
- data/spec/unit/functions/upcase_spec.rb +34 -0
- data/spec/unit/functions/versioncmp_spec.rb +4 -4
- data/spec/unit/functions4_spec.rb +78 -51
- data/spec/unit/gettext/config_spec.rb +4 -4
- data/spec/unit/gettext/module_loading_spec.rb +7 -7
- data/spec/unit/graph/rb_tree_map_spec.rb +2 -0
- data/spec/unit/graph/relationship_graph_spec.rb +2 -1
- data/spec/unit/graph/simple_graph_spec.rb +52 -11
- data/spec/unit/hiera/scope_spec.rb +0 -7
- data/spec/unit/hiera_puppet_spec.rb +20 -20
- data/spec/unit/indirector/catalog/compiler_spec.rb +166 -183
- data/spec/unit/indirector/catalog/json_spec.rb +2 -1
- data/spec/unit/indirector/catalog/msgpack_spec.rb +1 -0
- data/spec/unit/indirector/catalog/rest_spec.rb +1 -0
- data/spec/unit/indirector/catalog/store_configs_spec.rb +1 -0
- data/spec/unit/indirector/catalog/yaml_spec.rb +1 -0
- data/spec/unit/indirector/certificate/file_spec.rb +1 -8
- data/spec/unit/indirector/certificate/rest_spec.rb +10 -8
- data/spec/unit/indirector/certificate_request/file_spec.rb +1 -0
- data/spec/unit/indirector/certificate_request/rest_spec.rb +1 -0
- data/spec/unit/indirector/direct_file_server_spec.rb +49 -57
- data/spec/unit/indirector/envelope_spec.rb +2 -1
- data/spec/unit/indirector/exec_spec.rb +31 -26
- data/spec/unit/indirector/face_spec.rb +9 -9
- data/spec/unit/indirector/facts/facter_spec.rb +43 -37
- data/spec/unit/indirector/facts/network_device_spec.rb +9 -8
- data/spec/unit/indirector/facts/rest_spec.rb +8 -7
- data/spec/unit/indirector/facts/store_configs_spec.rb +1 -0
- data/spec/unit/indirector/facts/yaml_spec.rb +90 -77
- data/spec/unit/indirector/file_bucket_file/file_spec.rb +13 -9
- data/spec/unit/indirector/file_bucket_file/rest_spec.rb +1 -0
- data/spec/unit/indirector/file_bucket_file/selector_spec.rb +5 -4
- data/spec/unit/indirector/file_content/file_server_spec.rb +1 -0
- data/spec/unit/indirector/file_content/file_spec.rb +1 -0
- data/spec/unit/indirector/file_content/rest_spec.rb +1 -0
- data/spec/unit/indirector/file_content/selector_spec.rb +1 -0
- data/spec/unit/indirector/file_metadata/file_server_spec.rb +1 -0
- data/spec/unit/indirector/file_metadata/file_spec.rb +13 -12
- data/spec/unit/indirector/file_metadata/rest_spec.rb +1 -0
- data/spec/unit/indirector/file_metadata/selector_spec.rb +1 -0
- data/spec/unit/indirector/file_server_spec.rb +145 -145
- data/spec/unit/indirector/indirection_spec.rb +226 -249
- data/spec/unit/indirector/json_spec.rb +9 -7
- data/spec/unit/indirector/key/file_spec.rb +22 -38
- data/spec/unit/indirector/memory_spec.rb +7 -6
- data/spec/unit/indirector/msgpack_spec.rb +9 -7
- data/spec/unit/indirector/node/exec_spec.rb +43 -22
- data/spec/unit/indirector/node/memory_spec.rb +4 -2
- data/spec/unit/indirector/node/msgpack_spec.rb +1 -0
- data/spec/unit/indirector/node/plain_spec.rb +4 -2
- data/spec/unit/indirector/node/rest_spec.rb +1 -0
- data/spec/unit/indirector/node/store_configs_spec.rb +1 -0
- data/spec/unit/indirector/node/yaml_spec.rb +1 -0
- data/spec/unit/indirector/none_spec.rb +5 -5
- data/spec/unit/indirector/plain_spec.rb +8 -7
- data/spec/unit/indirector/report/msgpack_spec.rb +1 -0
- data/spec/unit/indirector/report/processor_spec.rb +22 -21
- data/spec/unit/indirector/report/rest_spec.rb +12 -11
- data/spec/unit/indirector/report/yaml_spec.rb +1 -0
- data/spec/unit/indirector/request_spec.rb +18 -15
- data/spec/unit/indirector/resource/ral_spec.rb +55 -47
- data/spec/unit/indirector/resource/store_configs_spec.rb +1 -0
- data/spec/unit/indirector/rest_spec.rb +110 -113
- data/spec/unit/indirector/ssl_file_spec.rb +100 -119
- data/spec/unit/indirector/status/local_spec.rb +1 -0
- data/spec/unit/indirector/status/rest_spec.rb +1 -0
- data/spec/unit/indirector/store_configs_spec.rb +1 -0
- data/spec/unit/indirector/terminus_spec.rb +30 -32
- data/spec/unit/indirector/yaml_spec.rb +90 -68
- data/spec/unit/indirector_spec.rb +2 -1
- data/spec/unit/info_service_spec.rb +144 -10
- data/spec/unit/interface/action_builder_spec.rb +1 -0
- data/spec/unit/interface/action_manager_spec.rb +1 -0
- data/spec/unit/interface/action_spec.rb +3 -2
- data/spec/unit/interface/documentation_spec.rb +1 -0
- data/spec/unit/interface/face_collection_spec.rb +12 -19
- data/spec/unit/interface_spec.rb +3 -3
- data/spec/unit/man_spec.rb +4 -3
- data/spec/unit/module_spec.rb +52 -102
- data/spec/unit/module_tool/applications/installer_spec.rb +13 -12
- data/spec/unit/module_tool/applications/searcher_spec.rb +3 -3
- data/spec/unit/module_tool/applications/uninstaller_spec.rb +2 -1
- data/spec/unit/module_tool/applications/unpacker_spec.rb +13 -13
- data/spec/unit/module_tool/applications/upgrader_spec.rb +6 -6
- data/spec/unit/module_tool/install_directory_spec.rb +8 -8
- data/spec/unit/module_tool/installed_modules_spec.rb +3 -3
- data/spec/unit/module_tool/tar/gnu_spec.rb +6 -6
- data/spec/unit/module_tool/tar/mini_spec.rb +12 -12
- data/spec/unit/module_tool/tar_spec.rb +13 -12
- data/spec/unit/module_tool_spec.rb +12 -29
- data/spec/unit/network/auth_config_parser_spec.rb +13 -11
- data/spec/unit/network/authconfig_spec.rb +18 -17
- data/spec/unit/network/authorization_spec.rb +5 -4
- data/spec/unit/network/authstore_spec.rb +1 -0
- data/spec/unit/network/format_handler_spec.rb +1 -0
- data/spec/unit/network/format_spec.rb +10 -9
- data/spec/unit/network/format_support_spec.rb +29 -28
- data/spec/unit/network/formats_spec.rb +31 -4
- data/spec/unit/network/http/api/indirected_routes_spec.rb +41 -51
- data/spec/unit/network/http/api/master/v3/authorization_spec.rb +7 -9
- data/spec/unit/network/http/api/master/v3/environment_spec.rb +1 -2
- data/spec/unit/network/http/api/master/v3/environments_spec.rb +7 -6
- data/spec/unit/network/http/api_spec.rb +2 -26
- data/spec/unit/network/http/compression_spec.rb +28 -24
- data/spec/unit/network/http/connection_spec.rb +122 -72
- data/spec/unit/network/http/factory_spec.rb +11 -40
- data/spec/unit/network/http/handler_spec.rb +18 -9
- data/spec/unit/network/http/nocache_pool_spec.rb +7 -6
- data/spec/unit/network/http/pool_spec.rb +29 -60
- data/spec/unit/network/http/request_spec.rb +2 -0
- data/spec/unit/network/http/response_spec.rb +13 -11
- data/spec/unit/network/http/route_spec.rb +1 -0
- data/spec/unit/network/http/session_spec.rb +2 -1
- data/spec/unit/network/http/site_spec.rb +1 -0
- data/spec/unit/network/http_pool_spec.rb +9 -18
- data/spec/unit/network/http_spec.rb +1 -0
- data/spec/unit/network/resolver_spec.rb +104 -28
- data/spec/unit/network/rights_spec.rb +53 -52
- data/spec/unit/node/environment_spec.rb +17 -18
- data/spec/unit/node/facts_spec.rb +21 -6
- data/spec/unit/node_spec.rb +23 -17
- data/spec/unit/other/selinux_spec.rb +1 -71
- data/spec/unit/parameter/boolean_spec.rb +2 -1
- data/spec/unit/parameter/package_options_spec.rb +2 -1
- data/spec/unit/parameter/path_spec.rb +1 -0
- data/spec/unit/parameter/value_collection_spec.rb +1 -0
- data/spec/unit/parameter/value_spec.rb +1 -0
- data/spec/unit/parameter_spec.rb +9 -9
- data/spec/unit/parser/ast/block_expression_spec.rb +8 -6
- data/spec/unit/parser/ast/leaf_spec.rb +21 -20
- data/spec/unit/parser/compiler_spec.rb +96 -84
- data/spec/unit/parser/environment_compiler_spec.rb +16 -23
- data/spec/unit/parser/files_spec.rb +1 -0
- data/spec/unit/parser/functions/create_resources_spec.rb +1 -1
- data/spec/unit/parser/functions/digest_spec.rb +1 -4
- data/spec/unit/parser/functions/fail_spec.rb +2 -5
- data/spec/unit/parser/functions/file_spec.rb +14 -17
- data/spec/unit/parser/functions/fqdn_rand_spec.rb +6 -5
- data/spec/unit/parser/functions/generate_spec.rb +37 -38
- data/spec/unit/parser/functions/inline_template_spec.rb +1 -4
- data/spec/unit/parser/functions/regsubst_spec.rb +1 -4
- data/spec/unit/parser/functions/scanf_spec.rb +1 -4
- data/spec/unit/parser/functions/shellquote_spec.rb +1 -0
- data/spec/unit/parser/functions/split_spec.rb +1 -4
- data/spec/unit/parser/functions/sprintf_spec.rb +1 -4
- data/spec/unit/parser/functions/tag_spec.rb +2 -5
- data/spec/unit/parser/functions/tagged_spec.rb +3 -6
- data/spec/unit/parser/functions/template_spec.rb +13 -17
- data/spec/unit/parser/functions/versioncmp_spec.rb +2 -5
- data/spec/unit/parser/functions_spec.rb +29 -3
- data/spec/unit/parser/relationship_spec.rb +1 -0
- data/spec/unit/parser/resource/param_spec.rb +1 -1
- data/spec/unit/parser/resource_spec.rb +42 -42
- data/spec/unit/parser/scope_spec.rb +35 -39
- data/spec/unit/parser/templatewrapper_spec.rb +12 -11
- data/spec/unit/parser/type_loader_spec.rb +19 -17
- data/spec/unit/pops/adaptable_spec.rb +1 -0
- data/spec/unit/pops/benchmark_spec.rb +1 -0
- data/spec/unit/pops/evaluator/access_ops_spec.rb +1 -0
- data/spec/unit/pops/evaluator/arithmetic_ops_spec.rb +11 -0
- data/spec/unit/pops/evaluator/basic_expressions_spec.rb +1 -0
- data/spec/unit/pops/evaluator/collections_ops_spec.rb +1 -0
- data/spec/unit/pops/evaluator/comparison_ops_spec.rb +1 -0
- data/spec/unit/pops/evaluator/conditionals_spec.rb +1 -0
- data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +78 -18
- data/spec/unit/pops/evaluator/logical_ops_spec.rb +1 -0
- data/spec/unit/pops/evaluator/runtime3_converter_spec.rb +5 -4
- data/spec/unit/pops/evaluator/string_interpolation_spec.rb +1 -0
- data/spec/unit/pops/evaluator/variables_spec.rb +1 -0
- data/spec/unit/pops/factory_spec.rb +4 -3
- data/spec/unit/pops/issues_spec.rb +20 -19
- data/spec/unit/pops/loaders/dependency_loader_spec.rb +2 -2
- data/spec/unit/pops/loaders/loader_spec.rb +12 -36
- data/spec/unit/pops/loaders/loaders_spec.rb +57 -54
- data/spec/unit/pops/loaders/module_loaders_spec.rb +35 -3
- data/spec/unit/pops/loaders/static_loader_spec.rb +0 -36
- data/spec/unit/pops/lookup/context_spec.rb +1 -0
- data/spec/unit/pops/lookup/interpolation_spec.rb +3 -2
- data/spec/unit/pops/merge_strategy_spec.rb +1 -0
- data/spec/unit/pops/migration_spec.rb +5 -3
- data/spec/unit/pops/model/model_spec.rb +1 -0
- data/spec/unit/pops/model/pn_transformer_spec.rb +1 -0
- data/spec/unit/pops/parser/lexer2_spec.rb +60 -21
- data/spec/unit/pops/parser/locator_spec.rb +6 -48
- data/spec/unit/pops/parser/parse_application_spec.rb +1 -0
- data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +1 -0
- data/spec/unit/pops/parser/parse_calls_spec.rb +1 -0
- data/spec/unit/pops/parser/parse_capabilities_spec.rb +1 -0
- data/spec/unit/pops/parser/parse_conditionals_spec.rb +1 -0
- data/spec/unit/pops/parser/parse_containers_spec.rb +1 -0
- data/spec/unit/pops/parser/parse_heredoc_spec.rb +12 -124
- data/spec/unit/pops/parser/parse_plan_spec.rb +1 -0
- data/spec/unit/pops/parser/parse_resource_spec.rb +1 -0
- data/spec/unit/pops/parser/parse_site_spec.rb +1 -0
- data/spec/unit/pops/parser/pn_parser_spec.rb +1 -0
- data/spec/unit/pops/pn_spec.rb +1 -0
- data/spec/unit/pops/resource/resource_type_impl_spec.rb +1 -0
- data/spec/unit/pops/serialization/serialization_spec.rb +7 -5
- data/spec/unit/pops/serialization/to_from_hr_spec.rb +29 -4
- data/spec/unit/pops/serialization/to_stringified_spec.rb +157 -0
- data/spec/unit/pops/types/deferred_spec.rb +87 -0
- data/spec/unit/pops/types/p_object_type_spec.rb +20 -0
- data/spec/unit/pops/types/p_timespan_type_spec.rb +0 -22
- data/spec/unit/pops/types/p_timestamp_type_spec.rb +0 -19
- data/spec/unit/pops/types/recursion_guard_spec.rb +10 -10
- data/spec/unit/pops/types/ruby_generator_spec.rb +2 -2
- data/spec/unit/pops/types/string_converter_spec.rb +11 -22
- data/spec/unit/pops/types/task_spec.rb +148 -16
- data/spec/unit/pops/types/type_asserter_spec.rb +2 -2
- data/spec/unit/pops/types/type_calculator_spec.rb +36 -36
- data/spec/unit/pops/types/type_mismatch_describer_spec.rb +0 -9
- data/spec/unit/pops/types/type_parser_spec.rb +13 -13
- data/spec/unit/pops/types/types_spec.rb +12 -6
- data/spec/unit/pops/validator/validator_spec.rb +162 -82
- data/spec/unit/pops/visitor_spec.rb +1 -0
- data/spec/unit/property/boolean_spec.rb +1 -1
- data/spec/unit/property/ensure_spec.rb +1 -0
- data/spec/unit/property/keyvalue_spec.rb +34 -32
- data/spec/unit/property/list_spec.rb +27 -26
- data/spec/unit/property/ordered_list_spec.rb +14 -10
- data/spec/unit/property_spec.rb +53 -43
- data/spec/unit/provider/aix_object_spec.rb +45 -47
- data/spec/unit/provider/command_spec.rb +9 -9
- data/spec/unit/provider/exec/posix_spec.rb +9 -8
- data/spec/unit/provider/exec/shell_spec.rb +3 -1
- data/spec/unit/provider/exec/windows_spec.rb +6 -4
- data/spec/unit/provider/exec_spec.rb +1 -209
- data/spec/unit/provider/file/posix_spec.rb +24 -22
- data/spec/unit/provider/file/windows_spec.rb +19 -17
- data/spec/unit/provider/group/aix_spec.rb +7 -22
- data/spec/unit/provider/group/groupadd_spec.rb +27 -60
- data/spec/unit/provider/group/ldap_spec.rb +36 -33
- data/spec/unit/provider/group/pw_spec.rb +18 -15
- data/spec/unit/provider/group/windows_adsi_spec.rb +80 -128
- data/spec/unit/provider/ldap_spec.rb +62 -61
- data/spec/unit/provider/nameservice/directoryservice_spec.rb +109 -102
- data/spec/unit/provider/nameservice_spec.rb +41 -39
- data/spec/unit/provider/package/aix_spec.rb +22 -48
- data/spec/unit/provider/package/appdmg_spec.rb +13 -13
- data/spec/unit/provider/package/apt_spec.rb +35 -60
- data/spec/unit/provider/package/aptitude_spec.rb +7 -7
- data/spec/unit/provider/package/aptrpm_spec.rb +13 -8
- data/spec/unit/provider/package/base_spec.rb +4 -4
- data/spec/unit/provider/package/dnf_spec.rb +23 -34
- data/spec/unit/provider/package/dpkg_spec.rb +72 -114
- data/spec/unit/provider/package/freebsd_spec.rb +18 -15
- data/spec/unit/provider/package/gem_spec.rb +86 -163
- data/spec/unit/provider/package/hpux_spec.rb +18 -15
- data/spec/unit/provider/package/macports_spec.rb +54 -56
- data/spec/unit/provider/package/nim_spec.rb +49 -33
- data/spec/unit/provider/package/openbsd_spec.rb +49 -60
- data/spec/unit/provider/package/opkg_spec.rb +26 -23
- data/spec/unit/provider/package/pacman_spec.rb +118 -97
- data/spec/unit/provider/package/pip3_spec.rb +6 -20
- data/spec/unit/provider/package/pip_spec.rb +129 -185
- data/spec/unit/provider/package/pkg_spec.rb +119 -129
- data/spec/unit/provider/package/pkgdmg_spec.rb +63 -65
- data/spec/unit/provider/package/pkgin_spec.rb +23 -20
- data/spec/unit/provider/package/pkgng_spec.rb +35 -67
- data/spec/unit/provider/package/pkgutil_spec.rb +49 -45
- data/spec/unit/provider/package/portage_spec.rb +76 -72
- data/spec/unit/provider/package/puppet_gem_spec.rb +21 -45
- data/spec/unit/provider/package/rpm_spec.rb +79 -291
- data/spec/unit/provider/package/sun_spec.rb +18 -16
- data/spec/unit/provider/package/tdnf_spec.rb +12 -9
- data/spec/unit/provider/package/up2date_spec.rb +4 -2
- data/spec/unit/provider/package/urpmi_spec.rb +17 -15
- data/spec/unit/provider/package/windows/exe_package_spec.rb +18 -15
- data/spec/unit/provider/package/windows/msi_package_spec.rb +23 -20
- data/spec/unit/provider/package/windows/package_spec.rb +43 -38
- data/spec/unit/provider/package/windows_spec.rb +36 -51
- data/spec/unit/provider/package/yum_spec.rb +24 -128
- data/spec/unit/provider/package/zypper_spec.rb +106 -117
- data/spec/unit/provider/parsedfile_spec.rb +45 -44
- data/spec/unit/provider/service/base_spec.rb +6 -5
- data/spec/unit/provider/service/bsd_spec.rb +54 -47
- data/spec/unit/provider/service/daemontools_spec.rb +53 -70
- data/spec/unit/provider/service/debian_spec.rb +58 -46
- data/spec/unit/provider/service/freebsd_spec.rb +23 -20
- data/spec/unit/provider/service/gentoo_spec.rb +81 -74
- data/spec/unit/provider/service/init_spec.rb +66 -65
- data/spec/unit/provider/service/launchd_spec.rb +114 -181
- data/spec/unit/provider/service/openbsd_spec.rb +94 -87
- data/spec/unit/provider/service/openrc_spec.rb +74 -70
- data/spec/unit/provider/service/openwrt_spec.rb +38 -30
- data/spec/unit/provider/service/rcng_spec.rb +24 -19
- data/spec/unit/provider/service/redhat_spec.rb +60 -60
- data/spec/unit/provider/service/runit_spec.rb +44 -61
- data/spec/unit/provider/service/smf_spec.rb +74 -143
- data/spec/unit/provider/service/src_spec.rb +69 -60
- data/spec/unit/provider/service/systemd_spec.rb +160 -222
- data/spec/unit/provider/service/upstart_spec.rb +99 -83
- data/spec/unit/provider/service/windows_spec.rb +42 -84
- data/spec/unit/provider/user/aix_spec.rb +24 -65
- data/spec/unit/provider/user/directoryservice_spec.rb +114 -187
- data/spec/unit/provider/user/hpux_spec.rb +21 -17
- data/spec/unit/provider/user/ldap_spec.rb +83 -80
- data/spec/unit/provider/user/openbsd_spec.rb +12 -11
- data/spec/unit/provider/user/pw_spec.rb +44 -80
- data/spec/unit/provider/user/user_role_add_spec.rb +94 -94
- data/spec/unit/provider/user/useradd_spec.rb +100 -208
- data/spec/unit/provider/user/windows_adsi_spec.rb +63 -62
- data/spec/unit/provider_spec.rb +189 -41
- data/spec/unit/puppet_pal_2pec.rb +26 -12
- data/spec/unit/puppet_pal_catalog_spec.rb +801 -0
- data/spec/unit/puppet_pal_spec.rb +2 -8
- data/spec/unit/puppet_spec.rb +7 -27
- data/spec/unit/relationship_spec.rb +1 -0
- data/spec/unit/reports/http_spec.rb +23 -21
- data/spec/unit/reports/store_spec.rb +4 -3
- data/spec/unit/reports_spec.rb +14 -12
- data/spec/unit/resource/capability_finder_spec.rb +26 -29
- data/spec/unit/resource/catalog_spec.rb +77 -81
- data/spec/unit/resource/status_spec.rb +8 -6
- data/spec/unit/resource/type_collection_spec.rb +18 -17
- data/spec/unit/resource/type_spec.rb +35 -34
- data/spec/unit/resource_spec.rb +79 -67
- data/spec/unit/rest/client_spec.rb +135 -0
- data/spec/unit/rest/route_spec.rb +132 -0
- data/spec/unit/scheduler/job_spec.rb +1 -0
- data/spec/unit/scheduler/scheduler_spec.rb +1 -0
- data/spec/unit/scheduler/splay_job_spec.rb +2 -1
- data/spec/unit/settings/array_setting_spec.rb +1 -1
- data/spec/unit/settings/autosign_setting_spec.rb +9 -9
- data/spec/unit/settings/certificate_revocation_setting_spec.rb +1 -1
- data/spec/unit/settings/config_file_spec.rb +10 -0
- data/spec/unit/settings/directory_setting_spec.rb +7 -2
- data/spec/unit/settings/duration_setting_spec.rb +2 -1
- data/spec/unit/settings/enum_setting_spec.rb +1 -1
- data/spec/unit/settings/environment_conf_spec.rb +6 -4
- data/spec/unit/settings/file_setting_spec.rb +50 -46
- data/spec/unit/settings/ini_file_spec.rb +2 -4
- data/spec/unit/settings/path_setting_spec.rb +3 -2
- data/spec/unit/settings/priority_setting_spec.rb +2 -1
- data/spec/unit/settings/string_setting_spec.rb +15 -14
- data/spec/unit/settings/terminus_setting_spec.rb +2 -1
- data/spec/unit/settings/value_translator_spec.rb +1 -0
- data/spec/unit/settings_spec.rb +226 -253
- data/spec/unit/ssl/base_spec.rb +15 -14
- data/spec/unit/ssl/certificate_request_attributes_spec.rb +22 -8
- data/spec/unit/ssl/certificate_request_spec.rb +63 -92
- data/spec/unit/ssl/certificate_spec.rb +29 -37
- data/spec/unit/ssl/digest_spec.rb +1 -0
- data/spec/unit/ssl/host_spec.rb +305 -685
- data/spec/unit/ssl/key_spec.rb +34 -46
- data/spec/unit/ssl/validator_spec.rb +70 -203
- data/spec/unit/task_spec.rb +172 -26
- data/spec/unit/transaction/additional_resource_generator_spec.rb +68 -67
- data/spec/unit/transaction/event_manager_spec.rb +84 -95
- data/spec/unit/transaction/event_spec.rb +15 -16
- data/spec/unit/transaction/persistence_spec.rb +18 -17
- data/spec/unit/transaction/report_spec.rb +24 -18
- data/spec/unit/transaction/resource_harness_spec.rb +33 -72
- data/spec/unit/transaction_spec.rb +106 -176
- data/spec/unit/type/component_spec.rb +1 -0
- data/spec/unit/type/exec_spec.rb +66 -120
- data/spec/unit/type/file/checksum_spec.rb +11 -10
- data/spec/unit/type/file/checksum_value_spec.rb +32 -31
- data/spec/unit/type/file/content_spec.rb +62 -65
- data/spec/unit/type/file/ctime_spec.rb +1 -0
- data/spec/unit/type/file/ensure_spec.rb +13 -12
- data/spec/unit/type/file/group_spec.rb +7 -5
- data/spec/unit/type/file/mode_spec.rb +6 -4
- data/spec/unit/type/file/mtime_spec.rb +1 -0
- data/spec/unit/type/file/owner_spec.rb +8 -6
- data/spec/unit/type/file/selinux_spec.rb +19 -17
- data/spec/unit/type/file/source_spec.rb +110 -113
- data/spec/unit/type/file/type_spec.rb +1 -0
- data/spec/unit/type/file_spec.rb +190 -204
- data/spec/unit/type/filebucket_spec.rb +10 -11
- data/spec/unit/type/group_spec.rb +9 -15
- data/spec/unit/type/noop_metaparam_spec.rb +2 -1
- data/spec/unit/type/package/package_settings_spec.rb +23 -44
- data/spec/unit/type/package_spec.rb +64 -61
- data/spec/unit/type/resources_spec.rb +101 -103
- data/spec/unit/type/schedule_spec.rb +28 -28
- data/spec/unit/type/service_spec.rb +85 -76
- data/spec/unit/type/stage_spec.rb +1 -0
- data/spec/unit/type/tidy_spec.rb +63 -62
- data/spec/unit/type/user_spec.rb +26 -147
- data/spec/unit/type/whit_spec.rb +1 -0
- data/spec/unit/type_spec.rb +164 -125
- data/spec/unit/util/at_fork_spec.rb +19 -18
- data/spec/unit/util/autoload_spec.rb +122 -93
- data/spec/unit/util/backups_spec.rb +35 -34
- data/spec/unit/util/character_encoding_spec.rb +5 -48
- data/spec/unit/util/checksums_spec.rb +39 -38
- data/spec/unit/util/colors_spec.rb +2 -1
- data/spec/unit/util/command_line_spec.rb +20 -40
- data/spec/unit/util/constant_inflector_spec.rb +1 -0
- data/spec/unit/util/diff_spec.rb +8 -7
- data/spec/unit/util/errors_spec.rb +1 -0
- data/spec/unit/util/execution_spec.rb +167 -285
- data/spec/unit/util/execution_stub_spec.rb +3 -2
- data/spec/unit/util/feature_spec.rb +46 -28
- data/spec/unit/util/filetype_spec.rb +53 -61
- data/spec/unit/util/http_proxy_spec.rb +13 -133
- data/spec/unit/util/inifile_spec.rb +31 -26
- data/spec/unit/util/json_lockfile_spec.rb +5 -3
- data/spec/unit/util/ldap/connection_spec.rb +25 -26
- data/spec/unit/util/ldap/generator_spec.rb +1 -0
- data/spec/unit/util/ldap/manager_spec.rb +102 -118
- data/spec/unit/util/lockfile_spec.rb +2 -1
- data/spec/unit/util/log/destinations_spec.rb +40 -23
- data/spec/unit/util/log_spec.rb +146 -48
- data/spec/unit/util/logging_spec.rb +114 -252
- data/spec/unit/util/metric_spec.rb +1 -0
- data/spec/unit/util/monkey_patches_spec.rb +12 -24
- data/spec/unit/util/multi_match_spec.rb +1 -0
- data/spec/unit/util/network_device/config_spec.rb +1 -0
- data/spec/unit/util/network_device/transport/base_spec.rb +6 -5
- data/spec/unit/util/network_device_spec.rb +9 -7
- data/spec/unit/util/package_spec.rb +1 -0
- data/spec/unit/util/pidlock_spec.rb +14 -86
- data/spec/unit/util/plist_spec.rb +33 -60
- data/spec/unit/util/posix_spec.rb +47 -78
- data/spec/unit/util/profiler/object_counts_spec.rb +2 -1
- data/spec/unit/util/rdoc_spec.rb +10 -9
- data/spec/unit/util/reference_spec.rb +1 -0
- data/spec/unit/util/resource_template_spec.rb +20 -20
- data/spec/unit/util/retry_action_spec.rb +8 -7
- data/spec/unit/util/rubygems_spec.rb +7 -41
- data/spec/unit/util/run_mode_spec.rb +11 -10
- data/spec/unit/util/selinux_spec.rb +73 -84
- data/spec/unit/util/splayer_spec.rb +9 -8
- data/spec/unit/util/ssl_spec.rb +1 -0
- data/spec/unit/util/storage_spec.rb +17 -111
- data/spec/unit/util/suidmanager_spec.rb +58 -47
- data/spec/unit/util/symbolic_file_mode_spec.rb +1 -0
- data/spec/unit/util/tag_set_spec.rb +9 -1
- data/spec/unit/util/tagging_spec.rb +12 -0
- data/spec/unit/util/terminal_spec.rb +10 -9
- data/spec/unit/util/user_attr_spec.rb +2 -1
- data/spec/unit/util/warnings_spec.rb +4 -3
- data/spec/unit/util/watcher/periodic_watcher_spec.rb +2 -2
- data/spec/unit/util/watcher_spec.rb +21 -51
- data/spec/unit/util/windows/access_control_entry_spec.rb +2 -1
- data/spec/unit/util/windows/access_control_list_spec.rb +2 -1
- data/spec/unit/util/windows/adsi_spec.rb +134 -278
- data/spec/unit/util/windows/api_types_spec.rb +42 -105
- data/spec/unit/util/windows/eventlog_spec.rb +13 -10
- data/spec/unit/util/windows/file_spec.rb +1 -0
- data/spec/unit/util/windows/root_certs_spec.rb +1 -0
- data/spec/unit/util/windows/security_descriptor_spec.rb +3 -1
- data/spec/unit/util/windows/service_spec.rb +180 -432
- data/spec/unit/util/windows/sid_spec.rb +17 -15
- data/spec/unit/util/windows/string_spec.rb +2 -1
- data/spec/unit/util/yaml_spec.rb +162 -28
- data/spec/unit/util_spec.rb +74 -119
- data/spec/unit/version_spec.rb +6 -6
- data/tasks/benchmark.rake +5 -1
- data/tasks/ci.rake +0 -5
- data/tasks/manpages.rake +9 -2
- data/tasks/parser.rake +11 -3
- metadata +162 -479
- data/CODEOWNERS +0 -30
- data/ext/rack/config.ru +0 -44
- data/ext/rack/example-passenger-vhost.conf +0 -57
- data/lib/puppet/application/ca.rb +0 -11
- data/lib/puppet/application/certificate.rb +0 -17
- data/lib/puppet/application/certificate_request.rb +0 -7
- data/lib/puppet/application/certificate_revocation_list.rb +0 -7
- data/lib/puppet/application/master.rb +0 -319
- data/lib/puppet/confine/boolean.rb +0 -45
- data/lib/puppet/external/nagios.rb +0 -46
- data/lib/puppet/external/nagios/base.rb +0 -472
- data/lib/puppet/external/nagios/grammar.ry +0 -248
- data/lib/puppet/external/nagios/makefile +0 -9
- data/lib/puppet/external/nagios/parser.rb +0 -400
- data/lib/puppet/face/ca.rb +0 -266
- data/lib/puppet/face/certificate.rb +0 -167
- data/lib/puppet/face/certificate_request.rb +0 -56
- data/lib/puppet/face/certificate_revocation_list.rb +0 -56
- data/lib/puppet/feature/rack.rb +0 -19
- data/lib/puppet/graph/random_prioritizer.rb +0 -16
- data/lib/puppet/graph/title_hash_prioritizer.rb +0 -16
- data/lib/puppet/indirector/certificate/ca.rb +0 -9
- data/lib/puppet/indirector/certificate/disabled_ca.rb +0 -22
- data/lib/puppet/indirector/certificate_request/ca.rb +0 -22
- data/lib/puppet/indirector/certificate_request/disabled_ca.rb +0 -22
- data/lib/puppet/indirector/certificate_revocation_list/ca.rb +0 -8
- data/lib/puppet/indirector/certificate_revocation_list/disabled_ca.rb +0 -22
- data/lib/puppet/indirector/certificate_revocation_list/file.rb +0 -8
- data/lib/puppet/indirector/certificate_revocation_list/rest.rb +0 -22
- data/lib/puppet/indirector/certificate_status.rb +0 -4
- data/lib/puppet/indirector/certificate_status/file.rb +0 -91
- data/lib/puppet/indirector/certificate_status/rest.rb +0 -11
- data/lib/puppet/indirector/key/ca.rb +0 -16
- data/lib/puppet/indirector/key/disabled_ca.rb +0 -22
- data/lib/puppet/indirector/ldap.rb +0 -86
- data/lib/puppet/indirector/node/ldap.rb +0 -275
- data/lib/puppet/indirector/node/write_only_yaml.rb +0 -39
- data/lib/puppet/module_tool/applications/builder.rb +0 -152
- data/lib/puppet/module_tool/skeleton/templates/generator/Gemfile +0 -18
- data/lib/puppet/module_tool/skeleton/templates/generator/README.md.erb +0 -89
- data/lib/puppet/module_tool/skeleton/templates/generator/Rakefile +0 -32
- data/lib/puppet/module_tool/skeleton/templates/generator/examples/init.pp.erb +0 -12
- data/lib/puppet/module_tool/skeleton/templates/generator/manifests/init.pp.erb +0 -48
- data/lib/puppet/module_tool/skeleton/templates/generator/metadata.json.erb +0 -1
- data/lib/puppet/module_tool/skeleton/templates/generator/spec/classes/init_spec.rb.erb +0 -6
- data/lib/puppet/module_tool/skeleton/templates/generator/spec/spec_helper.rb +0 -1
- data/lib/puppet/network/http/api/ca.rb +0 -2
- data/lib/puppet/network/http/api/ca/v1.rb +0 -11
- data/lib/puppet/network/http/rack.rb +0 -33
- data/lib/puppet/network/http/rack/rest.rb +0 -162
- data/lib/puppet/network/http/webrick.rb +0 -124
- data/lib/puppet/network/http/webrick/rest.rb +0 -114
- data/lib/puppet/network/server.rb +0 -39
- data/lib/puppet/provider/augeas/augeas.rb +0 -767
- data/lib/puppet/provider/cisco.rb +0 -9
- data/lib/puppet/provider/computer/computer.rb +0 -20
- data/lib/puppet/provider/cron/crontab.rb +0 -297
- data/lib/puppet/provider/host/parsed.rb +0 -46
- data/lib/puppet/provider/interface/cisco.rb +0 -27
- data/lib/puppet/provider/macauthorization/macauthorization.rb +0 -298
- data/lib/puppet/provider/mailalias/aliases.rb +0 -50
- data/lib/puppet/provider/maillist/mailman.rb +0 -108
- data/lib/puppet/provider/mcx/mcxcontent.rb +0 -173
- data/lib/puppet/provider/mount.rb +0 -76
- data/lib/puppet/provider/mount/parsed.rb +0 -285
- data/lib/puppet/provider/naginator.rb +0 -63
- data/lib/puppet/provider/package/dnfmodule.rb +0 -141
- data/lib/puppet/provider/package_targetable.rb +0 -69
- data/lib/puppet/provider/scheduled_task/win32_taskscheduler.rb +0 -590
- data/lib/puppet/provider/selboolean/getsetsebool.rb +0 -47
- data/lib/puppet/provider/selmodule/semodule.rb +0 -157
- data/lib/puppet/provider/ssh_authorized_key/parsed.rb +0 -105
- data/lib/puppet/provider/sshkey/parsed.rb +0 -50
- data/lib/puppet/provider/vlan/cisco.rb +0 -28
- data/lib/puppet/provider/yumrepo/inifile.rb +0 -315
- data/lib/puppet/provider/zfs/zfs.rb +0 -108
- data/lib/puppet/provider/zone/solaris.rb +0 -364
- data/lib/puppet/provider/zpool/zpool.rb +0 -125
- data/lib/puppet/ssl/certificate_authority.rb +0 -554
- data/lib/puppet/ssl/certificate_authority/autosign_command.rb +0 -45
- data/lib/puppet/ssl/certificate_authority/interface.rb +0 -324
- data/lib/puppet/ssl/certificate_revocation_list.rb +0 -111
- data/lib/puppet/ssl/configuration.rb +0 -61
- data/lib/puppet/ssl/inventory.rb +0 -55
- data/lib/puppet/type/augeas.rb +0 -211
- data/lib/puppet/type/computer.rb +0 -66
- data/lib/puppet/type/cron.rb +0 -480
- data/lib/puppet/type/host.rb +0 -95
- data/lib/puppet/type/interface.rb +0 -121
- data/lib/puppet/type/k5login.rb +0 -165
- data/lib/puppet/type/macauthorization.rb +0 -167
- data/lib/puppet/type/mailalias.rb +0 -46
- data/lib/puppet/type/maillist.rb +0 -62
- data/lib/puppet/type/mcx.rb +0 -98
- data/lib/puppet/type/mount.rb +0 -314
- data/lib/puppet/type/nagios_command.rb +0 -3
- data/lib/puppet/type/nagios_contact.rb +0 -3
- data/lib/puppet/type/nagios_contactgroup.rb +0 -3
- data/lib/puppet/type/nagios_host.rb +0 -3
- data/lib/puppet/type/nagios_hostdependency.rb +0 -3
- data/lib/puppet/type/nagios_hostescalation.rb +0 -3
- data/lib/puppet/type/nagios_hostextinfo.rb +0 -3
- data/lib/puppet/type/nagios_hostgroup.rb +0 -3
- data/lib/puppet/type/nagios_service.rb +0 -3
- data/lib/puppet/type/nagios_servicedependency.rb +0 -3
- data/lib/puppet/type/nagios_serviceescalation.rb +0 -3
- data/lib/puppet/type/nagios_serviceextinfo.rb +0 -3
- data/lib/puppet/type/nagios_servicegroup.rb +0 -3
- data/lib/puppet/type/nagios_timeperiod.rb +0 -3
- data/lib/puppet/type/router.rb +0 -17
- data/lib/puppet/type/scheduled_task.rb +0 -183
- data/lib/puppet/type/selboolean.rb +0 -40
- data/lib/puppet/type/selmodule.rb +0 -58
- data/lib/puppet/type/ssh_authorized_key.rb +0 -143
- data/lib/puppet/type/sshkey.rb +0 -83
- data/lib/puppet/type/vlan.rb +0 -26
- data/lib/puppet/type/yumrepo.rb +0 -430
- data/lib/puppet/type/zfs.rb +0 -154
- data/lib/puppet/type/zone.rb +0 -382
- data/lib/puppet/type/zpool.rb +0 -91
- data/lib/puppet/util/methodhelper.rb +0 -32
- data/lib/puppet/util/nagios_maker.rb +0 -85
- data/lib/puppet/util/network_device/cisco.rb +0 -4
- data/lib/puppet/util/network_device/cisco/device.rb +0 -285
- data/lib/puppet/util/network_device/cisco/facts.rb +0 -72
- data/lib/puppet/util/network_device/cisco/interface.rb +0 -94
- data/lib/puppet/util/network_device/ipcalc.rb +0 -68
- data/lib/puppet/util/network_device/transport/ssh.rb +0 -126
- data/lib/puppet/util/network_device/transport/telnet.rb +0 -47
- data/lib/puppet/util/windows/taskscheduler.rb +0 -1267
- data/lib/puppet/vendor/load_semantic.rb +0 -1
- data/lib/puppet/vendor/load_semantic_puppet.rb +0 -1
- data/lib/puppet/vendor/semantic/lib/semantic.rb +0 -5
- data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet.rb +0 -11
- data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency.rb +0 -181
- data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/graph.rb +0 -60
- data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/graph_node.rb +0 -117
- data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/module_release.rb +0 -58
- data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/source.rb +0 -25
- data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/unsatisfiable_graph.rb +0 -31
- data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/gem_version.rb +0 -3
- data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/version.rb +0 -203
- data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/version_range.rb +0 -758
- data/lib/puppet/vendor/semantic_puppet/locales/config.yaml +0 -21
- data/man/man8/puppet-ca.8 +0 -196
- data/man/man8/puppet-cert.8 +0 -118
- data/man/man8/puppet-certificate.8 +0 -240
- data/man/man8/puppet-certificate_request.8 +0 -161
- data/man/man8/puppet-certificate_revocation_list.8 +0 -139
- data/man/man8/puppet-master.8 +0 -85
- data/spec/fixtures/integration/provider/cron/crontab/create_normal_entry +0 -19
- data/spec/fixtures/integration/provider/cron/crontab/create_special_entry +0 -18
- data/spec/fixtures/integration/provider/cron/crontab/crontab_user1 +0 -15
- data/spec/fixtures/integration/provider/cron/crontab/crontab_user2 +0 -4
- data/spec/fixtures/integration/provider/cron/crontab/modify_entry +0 -13
- data/spec/fixtures/integration/provider/cron/crontab/moved_cronjob_input1 +0 -15
- data/spec/fixtures/integration/provider/cron/crontab/moved_cronjob_input2 +0 -6
- data/spec/fixtures/integration/provider/cron/crontab/purged +0 -8
- data/spec/fixtures/integration/provider/cron/crontab/remove_named_resource +0 -12
- data/spec/fixtures/integration/provider/cron/crontab/remove_unnamed_resource +0 -14
- data/spec/fixtures/integration/provider/cron/crontab/unspecialized +0 -15
- data/spec/fixtures/integration/provider/mailalias/aliases/test1 +0 -32
- data/spec/fixtures/integration/provider/sshkey/sample +0 -21
- data/spec/fixtures/unit/provider/augeas/augeas/augeas/lenses/test.aug +0 -13
- data/spec/fixtures/unit/provider/augeas/augeas/etc/fstab +0 -10
- data/spec/fixtures/unit/provider/augeas/augeas/etc/hosts +0 -6
- data/spec/fixtures/unit/provider/augeas/augeas/etc/test +0 -3
- data/spec/fixtures/unit/provider/augeas/augeas/test.aug +0 -13
- data/spec/fixtures/unit/provider/host/parsed/valid_hosts +0 -19
- data/spec/fixtures/unit/provider/mount/mount-output.aix.txt +0 -7
- data/spec/fixtures/unit/provider/mount/parsed/aix.filesystems +0 -152
- data/spec/fixtures/unit/provider/mount/parsed/aix.mount +0 -11
- data/spec/fixtures/unit/provider/mount/parsed/darwin.mount +0 -6
- data/spec/fixtures/unit/provider/mount/parsed/freebsd.fstab +0 -9
- data/spec/fixtures/unit/provider/mount/parsed/freebsd.mount +0 -4
- data/spec/fixtures/unit/provider/mount/parsed/hpux.mount +0 -17
- data/spec/fixtures/unit/provider/mount/parsed/linux.fstab +0 -12
- data/spec/fixtures/unit/provider/mount/parsed/linux.mount +0 -6
- data/spec/fixtures/unit/provider/mount/parsed/netbsd.fstab +0 -10
- data/spec/fixtures/unit/provider/mount/parsed/netbsd.mount +0 -9
- data/spec/fixtures/unit/provider/mount/parsed/openbsd.fstab +0 -5
- data/spec/fixtures/unit/provider/mount/parsed/openbsd.mount +0 -5
- data/spec/fixtures/unit/provider/mount/parsed/solaris.fstab +0 -11
- data/spec/fixtures/unit/provider/mount/parsed/solaris.mount +0 -6
- data/spec/fixtures/unit/provider/naginator/define_empty_param +0 -6
- data/spec/fixtures/unit/provider/package/dnfmodule/dnf-module-list.txt +0 -19
- data/spec/fixtures/unit/provider/package/yum/yum-check-update-subscription-manager.txt +0 -9
- data/spec/fixtures/unit/provider/service/smf/svcs_fmri.out +0 -6
- data/spec/fixtures/unit/provider/service/smf/svcs_multiple_fmris.out +0 -13
- data/spec/fixtures/unit/provider/ssh_authorized_key/parsed/authorized_keys +0 -7
- data/spec/fixtures/unit/provider/ssh_authorized_key/parsed/authorized_keys1 +0 -3
- data/spec/fixtures/unit/provider/ssh_authorized_key/parsed/authorized_keys2 +0 -1
- data/spec/fixtures/unit/provider/sshkey/parsed/sample +0 -21
- data/spec/fixtures/unit/provider/sshkey/parsed/sample_with_blank_lines +0 -8
- data/spec/fixtures/unit/provider/zfs/zfs/zfs-list.out +0 -2
- data/spec/fixtures/unit/provider/zpool/zpool/zpool-list.out +0 -2
- data/spec/integration/faces/ca_spec.rb +0 -353
- data/spec/integration/indirector/node/ldap_spec.rb +0 -13
- data/spec/integration/network/http_pool_spec.rb +0 -120
- data/spec/integration/provider/cron/crontab_spec.rb +0 -240
- data/spec/integration/provider/file/windows_spec.rb +0 -162
- data/spec/integration/provider/mailalias/aliases_spec.rb +0 -9
- data/spec/integration/provider/mount_spec.rb +0 -163
- data/spec/integration/provider/ssh_authorized_key_spec.rb +0 -217
- data/spec/integration/provider/sshkey_spec.rb +0 -153
- data/spec/integration/provider/yumrepo_spec.rb +0 -126
- data/spec/integration/ssl/autosign_spec.rb +0 -145
- data/spec/integration/ssl/certificate_authority_spec.rb +0 -161
- data/spec/integration/ssl/certificate_revocation_list_spec.rb +0 -33
- data/spec/integration/transaction_spec.rb +0 -553
- data/spec/integration/type/nagios_spec.rb +0 -69
- data/spec/integration/type/notify_spec.rb +0 -46
- data/spec/integration/type/user_spec.rb +0 -63
- data/spec/lib/puppet_spec/https.rb +0 -166
- data/spec/unit/application/cert_spec.rb +0 -272
- data/spec/unit/application/certificate_spec.rb +0 -21
- data/spec/unit/application/master_spec.rb +0 -414
- data/spec/unit/face/ca_spec.rb +0 -9
- data/spec/unit/face/certificate_request_spec.rb +0 -9
- data/spec/unit/face/certificate_revocation_list_spec.rb +0 -9
- data/spec/unit/face/certificate_spec.rb +0 -228
- data/spec/unit/face/module/build_spec.rb +0 -69
- data/spec/unit/graph/title_hash_prioritizer_spec.rb +0 -50
- data/spec/unit/indirector/certificate/ca_spec.rb +0 -21
- data/spec/unit/indirector/certificate/disabled_ca_spec.rb +0 -32
- data/spec/unit/indirector/certificate_request/ca_spec.rb +0 -56
- data/spec/unit/indirector/certificate_request/disabled_ca_spec.rb +0 -32
- data/spec/unit/indirector/certificate_revocation_list/ca_spec.rb +0 -15
- data/spec/unit/indirector/certificate_revocation_list/disabled_ca_spec.rb +0 -32
- data/spec/unit/indirector/certificate_revocation_list/file_spec.rb +0 -16
- data/spec/unit/indirector/certificate_revocation_list/rest_spec.rb +0 -33
- data/spec/unit/indirector/certificate_status/file_spec.rb +0 -190
- data/spec/unit/indirector/certificate_status/rest_spec.rb +0 -17
- data/spec/unit/indirector/code_spec.rb +0 -30
- data/spec/unit/indirector/key/ca_spec.rb +0 -22
- data/spec/unit/indirector/key/disabled_ca_spec.rb +0 -32
- data/spec/unit/indirector/ldap_spec.rb +0 -151
- data/spec/unit/indirector/node/ldap_spec.rb +0 -463
- data/spec/unit/indirector/node/write_only_yaml_spec.rb +0 -11
- data/spec/unit/module_tool/applications/builder_spec.rb +0 -439
- data/spec/unit/network/http/api/ca/v1_spec.rb +0 -26
- data/spec/unit/network/http/rack/rest_spec.rb +0 -322
- data/spec/unit/network/http/rack_spec.rb +0 -42
- data/spec/unit/network/http/webrick/rest_spec.rb +0 -230
- data/spec/unit/network/http/webrick_spec.rb +0 -277
- data/spec/unit/network/server_spec.rb +0 -94
- data/spec/unit/provider/augeas/augeas_spec.rb +0 -1096
- data/spec/unit/provider/cisco_spec.rb +0 -14
- data/spec/unit/provider/cron/crontab_spec.rb +0 -206
- data/spec/unit/provider/cron/parsed_spec.rb +0 -355
- data/spec/unit/provider/host/parsed_spec.rb +0 -219
- data/spec/unit/provider/interface/cisco_spec.rb +0 -53
- data/spec/unit/provider/macauthorization_spec.rb +0 -134
- data/spec/unit/provider/mcx/mcxcontent_spec.rb +0 -190
- data/spec/unit/provider/mount/parsed_spec.rb +0 -318
- data/spec/unit/provider/mount_spec.rb +0 -169
- data/spec/unit/provider/naginator_spec.rb +0 -78
- data/spec/unit/provider/network_device_spec.rb +0 -152
- data/spec/unit/provider/package/dnfmodule_spec.rb +0 -247
- data/spec/unit/provider/package_targetable_spec.rb +0 -60
- data/spec/unit/provider/scheduled_task/win32_taskscheduler_spec.rb +0 -2050
- data/spec/unit/provider/selboolean_spec.rb +0 -34
- data/spec/unit/provider/selmodule-example.pp +0 -0
- data/spec/unit/provider/selmodule_spec.rb +0 -154
- data/spec/unit/provider/ssh_authorized_key/parsed_spec.rb +0 -259
- data/spec/unit/provider/sshkey/parsed_spec.rb +0 -92
- data/spec/unit/provider/vlan/cisco_spec.rb +0 -53
- data/spec/unit/provider/yumrepo/inifile_spec.rb +0 -413
- data/spec/unit/provider/zfs/zfs_spec.rb +0 -171
- data/spec/unit/provider/zone/solaris_spec.rb +0 -261
- data/spec/unit/provider/zpool/zpool_spec.rb +0 -250
- data/spec/unit/settings/server_list_setting_spec.rb +0 -21
- data/spec/unit/ssl/certificate_authority/autosign_command_spec.rb +0 -29
- data/spec/unit/ssl/certificate_authority/interface_spec.rb +0 -563
- data/spec/unit/ssl/certificate_authority_spec.rb +0 -1165
- data/spec/unit/ssl/certificate_revocation_list_spec.rb +0 -196
- data/spec/unit/ssl/configuration_spec.rb +0 -138
- data/spec/unit/ssl/inventory_spec.rb +0 -155
- data/spec/unit/test/test_helper_spec.rb +0 -17
- data/spec/unit/type/augeas_spec.rb +0 -120
- data/spec/unit/type/computer_spec.rb +0 -77
- data/spec/unit/type/cron_spec.rb +0 -539
- data/spec/unit/type/host_spec.rb +0 -680
- data/spec/unit/type/interface_spec.rb +0 -128
- data/spec/unit/type/k5login_spec.rb +0 -204
- data/spec/unit/type/macauthorization_spec.rb +0 -111
- data/spec/unit/type/mailalias_spec.rb +0 -48
- data/spec/unit/type/maillist_spec.rb +0 -38
- data/spec/unit/type/mcx_spec.rb +0 -75
- data/spec/unit/type/mount_spec.rb +0 -622
- data/spec/unit/type/nagios_spec.rb +0 -312
- data/spec/unit/type/scheduled_task_spec.rb +0 -117
- data/spec/unit/type/selboolean_spec.rb +0 -41
- data/spec/unit/type/selmodule_spec.rb +0 -16
- data/spec/unit/type/ssh_authorized_key_spec.rb +0 -228
- data/spec/unit/type/sshkey_spec.rb +0 -75
- data/spec/unit/type/vlan_spec.rb +0 -42
- data/spec/unit/type/yumrepo_spec.rb +0 -476
- data/spec/unit/type/zfs_spec.rb +0 -45
- data/spec/unit/type/zone_spec.rb +0 -182
- data/spec/unit/type/zpool_spec.rb +0 -108
- data/spec/unit/util/nagios_maker_spec.rb +0 -121
- data/spec/unit/util/network_device/cisco/device_spec.rb +0 -491
- data/spec/unit/util/network_device/cisco/facts_spec.rb +0 -63
- data/spec/unit/util/network_device/cisco/interface_spec.rb +0 -97
- data/spec/unit/util/network_device/ipcalc_spec.rb +0 -61
- data/spec/unit/util/network_device/transport/ssh_spec.rb +0 -252
- data/spec/unit/util/network_device/transport/telnet_spec.rb +0 -90
data/spec/unit/type/user_spec.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
|
-
|
1
|
+
#! /usr/bin/env ruby
|
2
|
+
# encoding: UTF-8
|
2
3
|
require 'spec_helper'
|
3
4
|
|
4
5
|
describe Puppet::Type.type(:user) do
|
@@ -12,7 +13,7 @@ describe Puppet::Type.type(:user) do
|
|
12
13
|
def flush; end
|
13
14
|
def self.instances; []; end
|
14
15
|
end
|
15
|
-
|
16
|
+
described_class.stubs(:defaultprovider).returns @provider_class
|
16
17
|
end
|
17
18
|
|
18
19
|
it "should be able to create an instance" do
|
@@ -64,12 +65,12 @@ describe Puppet::Type.type(:user) do
|
|
64
65
|
end
|
65
66
|
|
66
67
|
it "cannot be set to true for a provider that does not manage homedirs" do
|
67
|
-
|
68
|
+
provider.class.stubs(:manages_homedir?).returns false
|
68
69
|
expect { instance[:managehome] = 'yes' }.to raise_error(Puppet::Error, /can not manage home directories/)
|
69
70
|
end
|
70
71
|
|
71
72
|
it "can be set to true for a provider that does manage homedirs" do
|
72
|
-
|
73
|
+
provider.class.stubs(:manages_homedir?).returns true
|
73
74
|
instance[:managehome] = 'yes'
|
74
75
|
end
|
75
76
|
end
|
@@ -126,8 +127,8 @@ describe Puppet::Type.type(:user) do
|
|
126
127
|
end
|
127
128
|
|
128
129
|
it "should set all values to :absent if the user is absent" do
|
129
|
-
|
130
|
-
|
130
|
+
@user.property(:ensure).expects(:retrieve).returns :absent
|
131
|
+
@user.property(:uid).expects(:retrieve).never
|
131
132
|
expect(@user.retrieve[@user.property(:uid)]).to eq(:absent)
|
132
133
|
end
|
133
134
|
|
@@ -147,13 +148,13 @@ describe Puppet::Type.type(:user) do
|
|
147
148
|
|
148
149
|
it "should call :create on the provider when asked to sync to the :present state" do
|
149
150
|
@provider = @provider_class.new(:name => 'foo', :ensure => :absent)
|
150
|
-
|
151
|
+
@provider.expects(:create)
|
151
152
|
described_class.new(:name => 'foo', :ensure => :present, :provider => @provider).parameter(:ensure).sync
|
152
153
|
end
|
153
154
|
|
154
155
|
it "should call :delete on the provider when asked to sync to the :absent state" do
|
155
156
|
@provider = @provider_class.new(:name => 'foo', :ensure => :present)
|
156
|
-
|
157
|
+
@provider.expects(:delete)
|
157
158
|
described_class.new(:name => 'foo', :ensure => :absent, :provider => @provider).parameter(:ensure).sync
|
158
159
|
end
|
159
160
|
|
@@ -211,27 +212,27 @@ describe Puppet::Type.type(:user) do
|
|
211
212
|
end
|
212
213
|
|
213
214
|
it "should return true if any of the specified groups are equal to the current integer" do
|
214
|
-
|
215
|
-
|
215
|
+
Puppet::Util.expects(:gid).with("foo").returns 300
|
216
|
+
Puppet::Util.expects(:gid).with("bar").returns 500
|
216
217
|
expect(described_class.new(:name => 'baz', :gid => [ 'foo', 'bar' ]).parameter(:gid)).to be_safe_insync(500)
|
217
218
|
end
|
218
219
|
|
219
220
|
it "should return false if none of the specified groups are equal to the current integer" do
|
220
|
-
|
221
|
-
|
221
|
+
Puppet::Util.expects(:gid).with("foo").returns 300
|
222
|
+
Puppet::Util.expects(:gid).with("bar").returns 500
|
222
223
|
expect(described_class.new(:name => 'baz', :gid => [ 'foo', 'bar' ]).parameter(:gid)).to_not be_safe_insync(700)
|
223
224
|
end
|
224
225
|
end
|
225
226
|
|
226
227
|
describe "when syncing" do
|
227
228
|
it "should use the first found, specified group as the desired value and send it to the provider" do
|
228
|
-
|
229
|
-
|
229
|
+
Puppet::Util.expects(:gid).with("foo").returns nil
|
230
|
+
Puppet::Util.expects(:gid).with("bar").returns 500
|
230
231
|
|
231
232
|
@provider = @provider_class.new(:name => 'foo')
|
232
233
|
resource = described_class.new(:name => 'foo', :provider => @provider, :gid => [ 'foo', 'bar' ])
|
233
234
|
|
234
|
-
|
235
|
+
@provider.expects(:gid=).with 500
|
235
236
|
resource.parameter(:gid).sync
|
236
237
|
end
|
237
238
|
end
|
@@ -256,6 +257,7 @@ describe Puppet::Type.type(:user) do
|
|
256
257
|
end
|
257
258
|
|
258
259
|
describe "when testing is in sync" do
|
260
|
+
|
259
261
|
before :each do
|
260
262
|
# the useradd provider uses a single string to represent groups and so does Puppet::Property::List when converting to should values
|
261
263
|
@provider = @provider_class.new(:name => 'foo', :groups => 'a,b,e,f')
|
@@ -364,7 +366,7 @@ describe Puppet::Type.type(:user) do
|
|
364
366
|
# useradd subclasses nameservice and thus inherits #comments_insync?
|
365
367
|
user = described_class.new(:name => 'foo', :comment => @value, :provider => :useradd)
|
366
368
|
comment_property = user.properties.find {|p| p.name == :comment}
|
367
|
-
|
369
|
+
user.provider.expects(:comments_insync?)
|
368
370
|
comment_property.insync?('bar')
|
369
371
|
end
|
370
372
|
|
@@ -372,7 +374,6 @@ describe Puppet::Type.type(:user) do
|
|
372
374
|
let(:is) { "\u2603" }
|
373
375
|
let(:should) { "\u06FF" }
|
374
376
|
let(:comment_property) { @user.properties.find { |p| p.name == :comment } }
|
375
|
-
|
376
377
|
context "given is and should strings with incompatible encoding" do
|
377
378
|
it "should return a formatted string" do
|
378
379
|
is.force_encoding(Encoding::ASCII_8BIT)
|
@@ -408,7 +409,7 @@ describe Puppet::Type.type(:user) do
|
|
408
409
|
Puppet::Resource::Catalog.new :testing do |conf|
|
409
410
|
[testuser, testrole].each { |resource| conf.add_resource resource }
|
410
411
|
end
|
411
|
-
|
412
|
+
Puppet::Type::User::ProviderDirectoryservice.stubs(:get_macosx_version_major).returns "10.5"
|
412
413
|
|
413
414
|
rel = testuser.autorequire[0]
|
414
415
|
expect(rel.source.ref).to eq(testrole.ref)
|
@@ -430,15 +431,15 @@ describe Puppet::Type.type(:user) do
|
|
430
431
|
def check_valid_shell; end
|
431
432
|
end
|
432
433
|
|
433
|
-
|
434
|
+
described_class.stubs(:defaultprovider).returns @shell_provider_class
|
434
435
|
end
|
435
436
|
|
436
437
|
it "should call :check_valid_shell on the provider when changing shell value" do
|
437
438
|
@provider = @shell_provider_class.new(:name => 'foo', :shell => '/bin/bash', :ensure => :present)
|
438
|
-
|
439
|
+
@provider.expects(:check_valid_shell)
|
439
440
|
resource = described_class.new(:name => 'foo', :shell => '/bin/zsh', :provider => @provider)
|
440
|
-
|
441
|
-
|
441
|
+
Puppet::Util::Storage.stubs(:load)
|
442
|
+
Puppet::Util::Storage.stubs(:store)
|
442
443
|
catalog = Puppet::Resource::Catalog.new
|
443
444
|
catalog.add_resource resource
|
444
445
|
catalog.apply
|
@@ -446,135 +447,13 @@ describe Puppet::Type.type(:user) do
|
|
446
447
|
|
447
448
|
it "should call :check_valid_shell on the provider when changing ensure from present to absent" do
|
448
449
|
@provider = @shell_provider_class.new(:name => 'foo', :shell => '/bin/bash', :ensure => :absent)
|
449
|
-
|
450
|
+
@provider.expects(:check_valid_shell)
|
450
451
|
resource = described_class.new(:name => 'foo', :shell => '/bin/zsh', :provider => @provider)
|
451
|
-
|
452
|
-
|
452
|
+
Puppet::Util::Storage.stubs(:load)
|
453
|
+
Puppet::Util::Storage.stubs(:store)
|
453
454
|
catalog = Puppet::Resource::Catalog.new
|
454
455
|
catalog.add_resource resource
|
455
456
|
catalog.apply
|
456
457
|
end
|
457
458
|
end
|
458
|
-
|
459
|
-
describe "when purging ssh keys" do
|
460
|
-
it "should not accept a keyfile with a relative path" do
|
461
|
-
expect {
|
462
|
-
described_class.new(:name => "a", :purge_ssh_keys => "keys")
|
463
|
-
}.to raise_error(Puppet::Error, /Paths to keyfiles must be absolute, not keys/)
|
464
|
-
end
|
465
|
-
|
466
|
-
context "with a home directory specified" do
|
467
|
-
it "should accept true" do
|
468
|
-
described_class.new(:name => "a", :home => "/tmp", :purge_ssh_keys => true)
|
469
|
-
end
|
470
|
-
|
471
|
-
it "should accept the ~ wildcard" do
|
472
|
-
described_class.new(:name => "a", :home => "/tmp", :purge_ssh_keys => "~/keys")
|
473
|
-
end
|
474
|
-
|
475
|
-
it "should accept the %h wildcard" do
|
476
|
-
described_class.new(:name => "a", :home => "/tmp", :purge_ssh_keys => "%h/keys")
|
477
|
-
end
|
478
|
-
|
479
|
-
it "raises when given a relative path" do
|
480
|
-
expect {
|
481
|
-
described_class.new(:name => "a", :home => "/tmp", :purge_ssh_keys => "keys")
|
482
|
-
}.to raise_error(Puppet::Error, /Paths to keyfiles must be absolute/)
|
483
|
-
end
|
484
|
-
end
|
485
|
-
|
486
|
-
context "with no home directory specified" do
|
487
|
-
before(:each) do
|
488
|
-
allow(Dir).to receive(:home).with('a').and_return('/home/a')
|
489
|
-
end
|
490
|
-
|
491
|
-
it "should accept true" do
|
492
|
-
described_class.new(:name => "a", :purge_ssh_keys => true)
|
493
|
-
end
|
494
|
-
|
495
|
-
it "should accept the ~ wildcard" do
|
496
|
-
described_class.new(:name => "a", :purge_ssh_keys => "~/keys")
|
497
|
-
end
|
498
|
-
|
499
|
-
it "should accept the %h wildcard" do
|
500
|
-
described_class.new(:name => "a", :purge_ssh_keys => "%h/keys")
|
501
|
-
end
|
502
|
-
end
|
503
|
-
|
504
|
-
context "with a valid parameter" do
|
505
|
-
let(:paths) do
|
506
|
-
[ "/dev/null", "/tmp/keyfile" ].map { |path| File.expand_path(path) }
|
507
|
-
end
|
508
|
-
|
509
|
-
before(:each) do
|
510
|
-
allow(Dir).to receive(:home).with('test').and_return('/home/test')
|
511
|
-
end
|
512
|
-
|
513
|
-
subject do
|
514
|
-
res = described_class.new(:name => "test", :purge_ssh_keys => paths)
|
515
|
-
res.catalog = Puppet::Resource::Catalog.new
|
516
|
-
res
|
517
|
-
end
|
518
|
-
|
519
|
-
it "should not just return from generate" do
|
520
|
-
expect(subject).to receive(:find_unmanaged_keys)
|
521
|
-
subject.generate
|
522
|
-
end
|
523
|
-
|
524
|
-
it "should check each keyfile for readability" do
|
525
|
-
paths.each do |path|
|
526
|
-
expect(File).to receive(:readable?).with(path)
|
527
|
-
end
|
528
|
-
subject.generate
|
529
|
-
end
|
530
|
-
end
|
531
|
-
|
532
|
-
describe "generated keys" do
|
533
|
-
subject do
|
534
|
-
res = described_class.new(:name => "test_user_name", :purge_ssh_keys => purge_param)
|
535
|
-
res.catalog = Puppet::Resource::Catalog.new
|
536
|
-
res
|
537
|
-
end
|
538
|
-
|
539
|
-
before(:each) do
|
540
|
-
allow(Dir).to receive(:home).with('test_user_name').and_return('/home/test_user_name')
|
541
|
-
end
|
542
|
-
|
543
|
-
context "when purging is disabled" do
|
544
|
-
let(:purge_param) { false }
|
545
|
-
|
546
|
-
its(:generate) { should be_empty }
|
547
|
-
end
|
548
|
-
|
549
|
-
context "when purging is enabled" do
|
550
|
-
let(:purge_param) { my_fixture('authorized_keys') }
|
551
|
-
let(:resources) { subject.generate }
|
552
|
-
|
553
|
-
it "should contain a resource for each key" do
|
554
|
-
names = resources.collect { |res| res.name }
|
555
|
-
expect(names).to include("key1 name")
|
556
|
-
expect(names).to include("keyname2")
|
557
|
-
end
|
558
|
-
|
559
|
-
it "should not include keys in comment lines" do
|
560
|
-
names = resources.collect { |res| res.name }
|
561
|
-
expect(names).not_to include("keyname3")
|
562
|
-
end
|
563
|
-
|
564
|
-
it "should generate names for unnamed keys" do
|
565
|
-
names = resources.collect { |res| res.name }
|
566
|
-
fixture_path = File.join(my_fixture_dir, 'authorized_keys')
|
567
|
-
expect(names).to include("#{fixture_path}:unnamed-1")
|
568
|
-
end
|
569
|
-
|
570
|
-
it "should each have a value for the user property" do
|
571
|
-
expect(resources.map { |res|
|
572
|
-
res[:user]
|
573
|
-
}.reject { |user_name|
|
574
|
-
user_name == "test_user_name"
|
575
|
-
}).to be_empty
|
576
|
-
end
|
577
|
-
end
|
578
|
-
end
|
579
|
-
end
|
580
459
|
end
|
data/spec/unit/type/whit_spec.rb
CHANGED
data/spec/unit/type_spec.rb
CHANGED
@@ -1,10 +1,45 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
1
2
|
require 'spec_helper'
|
2
3
|
require 'puppet_spec/compiler'
|
4
|
+
require 'puppet/property/boolean'
|
5
|
+
|
6
|
+
Puppet::Type.newtype(:type_test) do
|
7
|
+
ensurable
|
8
|
+
newparam(:name, isnamevar: true)
|
9
|
+
newproperty(:device)
|
10
|
+
newproperty(:blockdevice)
|
11
|
+
newproperty(:fstype)
|
12
|
+
newproperty(:options)
|
13
|
+
newproperty(:pass)
|
14
|
+
newproperty(:atboot, parent: Puppet::Property::Boolean) do
|
15
|
+
def munge(value)
|
16
|
+
munged = super
|
17
|
+
if munged
|
18
|
+
:yes
|
19
|
+
else
|
20
|
+
:no
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
newparam(:remounts) do
|
25
|
+
newvalues(:true, :false)
|
26
|
+
defaultto do
|
27
|
+
true
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
Puppet::Type.type(:type_test).provide(:type_test) do
|
32
|
+
mk_resource_methods
|
33
|
+
end
|
3
34
|
|
4
|
-
describe Puppet::Type, :unless => Puppet.
|
35
|
+
describe Puppet::Type, :unless => Puppet::Util::Platform.windows? do
|
5
36
|
include PuppetSpec::Files
|
6
37
|
include PuppetSpec::Compiler
|
7
38
|
|
39
|
+
let(:resource_type) { :type_test }
|
40
|
+
let(:klass) { Puppet::Type.type(resource_type) }
|
41
|
+
let(:ref_type) { klass.name.to_s.capitalize }
|
42
|
+
|
8
43
|
it "should be Comparable" do
|
9
44
|
a = Puppet::Type.type(:notify).new(:name => "a")
|
10
45
|
b = Puppet::Type.type(:notify).new(:name => "b")
|
@@ -28,34 +63,34 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
|
|
28
63
|
end
|
29
64
|
|
30
65
|
it "should consider a parameter to be valid if it is a valid parameter" do
|
31
|
-
expect(
|
66
|
+
expect(klass).to be_valid_parameter(:name)
|
32
67
|
end
|
33
68
|
|
34
69
|
it "should consider a parameter to be valid if it is a valid property" do
|
35
|
-
expect(
|
70
|
+
expect(klass).to be_valid_parameter(:fstype)
|
36
71
|
end
|
37
72
|
|
38
73
|
it "should consider a parameter to be valid if it is a valid metaparam" do
|
39
|
-
expect(
|
74
|
+
expect(klass).to be_valid_parameter(:noop)
|
40
75
|
end
|
41
76
|
|
42
77
|
it "should be able to retrieve a property by name" do
|
43
|
-
resource =
|
44
|
-
expect(resource.property(:fstype)).to be_instance_of(
|
78
|
+
resource = klass.new(:name => "foo", :fstype => "bar", :pass => 1, :ensure => :present)
|
79
|
+
expect(resource.property(:fstype)).to be_instance_of(klass.attrclass(:fstype))
|
45
80
|
end
|
46
81
|
|
47
82
|
it "should be able to retrieve a parameter by name" do
|
48
|
-
resource =
|
49
|
-
expect(resource.parameter(:name)).to be_instance_of(
|
83
|
+
resource = klass.new(:name => "foo", :fstype => "bar", :pass => 1, :ensure => :present)
|
84
|
+
expect(resource.parameter(:name)).to be_instance_of(klass.attrclass(:name))
|
50
85
|
end
|
51
86
|
|
52
87
|
it "should be able to retrieve a property by name using the :parameter method" do
|
53
|
-
resource =
|
54
|
-
expect(resource.parameter(:fstype)).to be_instance_of(
|
88
|
+
resource = klass.new(:name => "foo", :fstype => "bar", :pass => 1, :ensure => :present)
|
89
|
+
expect(resource.parameter(:fstype)).to be_instance_of(klass.attrclass(:fstype))
|
55
90
|
end
|
56
91
|
|
57
92
|
it "should be able to retrieve all set properties" do
|
58
|
-
resource =
|
93
|
+
resource = klass.new(:name => "foo", :fstype => "bar", :pass => 1, :ensure => :present)
|
59
94
|
props = resource.properties
|
60
95
|
expect(props).not_to be_include(nil)
|
61
96
|
[:fstype, :ensure, :pass].each do |name|
|
@@ -64,15 +99,15 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
|
|
64
99
|
end
|
65
100
|
|
66
101
|
it "can retrieve all set parameters" do
|
67
|
-
resource =
|
102
|
+
resource = klass.new(:name => "foo", :fstype => "bar", :pass => 1, :ensure => :present, :tag => 'foo')
|
68
103
|
params = resource.parameters_with_value
|
69
|
-
[:name, :provider, :ensure, :fstype, :pass, :
|
104
|
+
[:name, :provider, :ensure, :fstype, :pass, :loglevel, :tag].each do |name|
|
70
105
|
expect(params).to be_include(resource.parameter(name))
|
71
106
|
end
|
72
107
|
end
|
73
108
|
|
74
109
|
it "can not return any `nil` values when retrieving all set parameters" do
|
75
|
-
resource =
|
110
|
+
resource = klass.new(:name => "foo", :fstype => "bar", :pass => 1, :ensure => :present, :tag => 'foo')
|
76
111
|
params = resource.parameters_with_value
|
77
112
|
expect(params).not_to be_include(nil)
|
78
113
|
end
|
@@ -86,49 +121,49 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
|
|
86
121
|
end
|
87
122
|
|
88
123
|
it "should have a method for setting default values for resources" do
|
89
|
-
expect(
|
124
|
+
expect(klass.new(:name => "foo")).to respond_to(:set_default)
|
90
125
|
end
|
91
126
|
|
92
127
|
it "should do nothing for attributes that have no defaults and no specified value" do
|
93
|
-
expect(
|
128
|
+
expect(klass.new(:name => "foo").parameter(:noop)).to be_nil
|
94
129
|
end
|
95
130
|
|
96
131
|
it "should have a method for adding tags" do
|
97
|
-
expect(
|
132
|
+
expect(klass.new(:name => "foo")).to respond_to(:tags)
|
98
133
|
end
|
99
134
|
|
100
135
|
it "should use the tagging module" do
|
101
|
-
expect(
|
136
|
+
expect(klass.ancestors).to be_include(Puppet::Util::Tagging)
|
102
137
|
end
|
103
138
|
|
104
139
|
it "should delegate to the tagging module when tags are added" do
|
105
|
-
resource =
|
106
|
-
|
140
|
+
resource = klass.new(:name => "foo")
|
141
|
+
resource.stubs(:tag).with(resource_type)
|
107
142
|
|
108
|
-
|
143
|
+
resource.expects(:tag).with(:tag1, :tag2)
|
109
144
|
|
110
145
|
resource.tags = [:tag1,:tag2]
|
111
146
|
end
|
112
147
|
|
113
148
|
it "should add the current type as tag" do
|
114
|
-
resource =
|
115
|
-
|
149
|
+
resource = klass.new(:name => "foo")
|
150
|
+
resource.stubs(:tag)
|
116
151
|
|
117
|
-
|
152
|
+
resource.expects(:tag).with(resource_type)
|
118
153
|
|
119
154
|
resource.tags = [:tag1,:tag2]
|
120
155
|
end
|
121
156
|
|
122
157
|
it "should have a method to know if the resource is exported" do
|
123
|
-
expect(
|
158
|
+
expect(klass.new(:name => "foo")).to respond_to(:exported?)
|
124
159
|
end
|
125
160
|
|
126
161
|
it "should have a method to know if the resource is virtual" do
|
127
|
-
expect(
|
162
|
+
expect(klass.new(:name => "foo")).to respond_to(:virtual?)
|
128
163
|
end
|
129
164
|
|
130
165
|
it "should consider its version to be zero if it has no catalog" do
|
131
|
-
expect(
|
166
|
+
expect(klass.new(:name => "foo").version).to eq(0)
|
132
167
|
end
|
133
168
|
|
134
169
|
it "reports the correct path even after path is used during setup of the type" do
|
@@ -163,7 +198,7 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
|
|
163
198
|
|
164
199
|
context "resource attributes" do
|
165
200
|
let(:resource) {
|
166
|
-
resource =
|
201
|
+
resource = klass.new(:name => "foo")
|
167
202
|
catalog = Puppet::Resource::Catalog.new
|
168
203
|
catalog.version = 50
|
169
204
|
catalog.add_resource resource
|
@@ -175,30 +210,30 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
|
|
175
210
|
end
|
176
211
|
|
177
212
|
it "should have tags" do
|
178
|
-
expect(resource).to be_tagged(
|
213
|
+
expect(resource).to be_tagged(resource_type.to_s)
|
179
214
|
expect(resource).to be_tagged("foo")
|
180
215
|
end
|
181
216
|
|
182
217
|
it "should have a path" do
|
183
|
-
expect(resource.path).to eq("
|
218
|
+
expect(resource.path).to eq("/#{ref_type}[foo]")
|
184
219
|
end
|
185
220
|
end
|
186
221
|
|
187
222
|
it "should consider its type to be the name of its class" do
|
188
|
-
expect(
|
223
|
+
expect(klass.new(:name => "foo").type).to eq(resource_type)
|
189
224
|
end
|
190
225
|
|
191
226
|
it "should use any provided noop value" do
|
192
|
-
expect(
|
227
|
+
expect(klass.new(:name => "foo", :noop => true)).to be_noop
|
193
228
|
end
|
194
229
|
|
195
230
|
it "should use the global noop value if none is provided" do
|
196
231
|
Puppet[:noop] = true
|
197
|
-
expect(
|
232
|
+
expect(klass.new(:name => "foo")).to be_noop
|
198
233
|
end
|
199
234
|
|
200
235
|
it "should not be noop if in a non-host_config catalog" do
|
201
|
-
resource =
|
236
|
+
resource = klass.new(:name => "foo")
|
202
237
|
catalog = Puppet::Resource::Catalog.new
|
203
238
|
catalog.add_resource resource
|
204
239
|
expect(resource).not_to be_noop
|
@@ -206,11 +241,11 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
|
|
206
241
|
|
207
242
|
describe "when creating an event" do
|
208
243
|
before do
|
209
|
-
@resource =
|
244
|
+
@resource = klass.new :name => "foo"
|
210
245
|
end
|
211
246
|
|
212
247
|
it "should have the resource's reference as the resource" do
|
213
|
-
expect(@resource.event.resource).to eq("
|
248
|
+
expect(@resource.event.resource).to eq("#{ref_type}[foo]")
|
214
249
|
end
|
215
250
|
|
216
251
|
it "should have the resource's log level as the default log level" do
|
@@ -220,7 +255,7 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
|
|
220
255
|
|
221
256
|
{:file => "/my/file", :line => 50}.each do |attr, value|
|
222
257
|
it "should set the #{attr}" do
|
223
|
-
|
258
|
+
@resource.stubs(attr).returns value
|
224
259
|
expect(@resource.event.send(attr)).to eq(value)
|
225
260
|
end
|
226
261
|
end
|
@@ -359,8 +394,8 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
|
|
359
394
|
basic = type.provide(:basic) {}
|
360
395
|
greater = type.provide(:greater) {}
|
361
396
|
|
362
|
-
|
363
|
-
|
397
|
+
basic.stubs(:specificity).returns 1
|
398
|
+
greater.stubs(:specificity).returns 2
|
364
399
|
|
365
400
|
expect(type.defaultprovider).to equal(greater)
|
366
401
|
end
|
@@ -523,87 +558,87 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
|
|
523
558
|
describe "when initializing" do
|
524
559
|
describe "and passed a Puppet::Resource instance" do
|
525
560
|
it "should set its title to the title of the resource if the resource type is equal to the current type" do
|
526
|
-
resource = Puppet::Resource.new(
|
527
|
-
expect(
|
561
|
+
resource = Puppet::Resource.new(resource_type, "/foo", :parameters => {:name => "/other"})
|
562
|
+
expect(klass.new(resource).title).to eq("/foo")
|
528
563
|
end
|
529
564
|
|
530
565
|
it "should set its title to the resource reference if the resource type is not equal to the current type" do
|
531
566
|
resource = Puppet::Resource.new(:user, "foo")
|
532
|
-
expect(
|
567
|
+
expect(klass.new(resource).title).to eq("User[foo]")
|
533
568
|
end
|
534
569
|
|
535
570
|
[:line, :file, :catalog, :exported, :virtual].each do |param|
|
536
571
|
it "should copy '#{param}' from the resource if present" do
|
537
|
-
resource = Puppet::Resource.new(
|
572
|
+
resource = Puppet::Resource.new(resource_type, "/foo")
|
538
573
|
resource.send(param.to_s + "=", "foo")
|
539
574
|
resource.send(param.to_s + "=", "foo")
|
540
|
-
expect(
|
575
|
+
expect(klass.new(resource).send(param)).to eq("foo")
|
541
576
|
end
|
542
577
|
end
|
543
578
|
|
544
579
|
it "should copy any tags from the resource" do
|
545
|
-
resource = Puppet::Resource.new(
|
580
|
+
resource = Puppet::Resource.new(resource_type, "/foo")
|
546
581
|
resource.tag "one", "two"
|
547
|
-
tags =
|
582
|
+
tags = klass.new(resource).tags
|
548
583
|
expect(tags).to be_include("one")
|
549
584
|
expect(tags).to be_include("two")
|
550
585
|
end
|
551
586
|
|
552
587
|
it "should copy the resource's parameters as its own" do
|
553
|
-
resource = Puppet::Resource.new(
|
554
|
-
params =
|
588
|
+
resource = Puppet::Resource.new(resource_type, "/foo", :parameters => {:atboot => :yes, :fstype => "boo"})
|
589
|
+
params = klass.new(resource).to_hash
|
555
590
|
expect(params[:fstype]).to eq("boo")
|
556
591
|
expect(params[:atboot]).to eq(:yes)
|
557
592
|
end
|
558
593
|
|
559
594
|
it "copies sensitive parameters to the appropriate properties" do
|
560
|
-
resource = Puppet::Resource.new(
|
595
|
+
resource = Puppet::Resource.new(resource_type, "/foo",
|
561
596
|
:parameters => {:atboot => :yes, :fstype => "boo"},
|
562
597
|
:sensitive_parameters => [:fstype])
|
563
|
-
type =
|
598
|
+
type = klass.new(resource)
|
564
599
|
expect(type.property(:fstype).sensitive).to eq true
|
565
600
|
end
|
566
601
|
|
567
602
|
it "logs a warning when a parameter is marked as sensitive" do
|
568
|
-
resource = Puppet::Resource.new(
|
603
|
+
resource = Puppet::Resource.new(resource_type, "/foo",
|
569
604
|
:parameters => {:atboot => :yes, :fstype => "boo", :remounts => true},
|
570
605
|
:sensitive_parameters => [:remounts])
|
571
|
-
|
572
|
-
|
606
|
+
klass.any_instance.expects(:warning).with(regexp_matches(/Unable to mark 'remounts' as sensitive: remounts is a parameter and not a property/))
|
607
|
+
klass.new(resource)
|
573
608
|
end
|
574
609
|
|
575
610
|
it "logs a warning when a property is not set but is marked as sensitive" do
|
576
|
-
resource = Puppet::Resource.new(
|
611
|
+
resource = Puppet::Resource.new(resource_type, "/foo",
|
577
612
|
:parameters => {:atboot => :yes, :fstype => "boo"},
|
578
613
|
:sensitive_parameters => [:device])
|
579
|
-
|
580
|
-
|
614
|
+
klass.any_instance.expects(:warning).with("Unable to mark 'device' as sensitive: the property itself was not assigned a value.")
|
615
|
+
klass.new(resource)
|
581
616
|
end
|
582
617
|
|
583
618
|
it "logs an error when a property is not defined on the type but is marked as sensitive" do
|
584
|
-
resource = Puppet::Resource.new(
|
619
|
+
resource = Puppet::Resource.new(resource_type, "/foo",
|
585
620
|
:parameters => {:atboot => :yes, :fstype => "boo"},
|
586
621
|
:sensitive_parameters => [:content])
|
587
|
-
|
588
|
-
|
622
|
+
klass.any_instance.expects(:err).with("Unable to mark 'content' as sensitive: the property itself is not defined on #{resource_type}.")
|
623
|
+
klass.new(resource)
|
589
624
|
end
|
590
625
|
end
|
591
626
|
|
592
627
|
describe "and passed a Hash" do
|
593
628
|
it "should extract the title from the hash" do
|
594
|
-
expect(
|
629
|
+
expect(klass.new(:title => "/yay").title).to eq("/yay")
|
595
630
|
end
|
596
631
|
|
597
632
|
it "should work when hash keys are provided as strings" do
|
598
|
-
expect(
|
633
|
+
expect(klass.new("title" => "/yay").title).to eq("/yay")
|
599
634
|
end
|
600
635
|
|
601
636
|
it "should work when hash keys are provided as symbols" do
|
602
|
-
expect(
|
637
|
+
expect(klass.new(:title => "/yay").title).to eq("/yay")
|
603
638
|
end
|
604
639
|
|
605
640
|
it "should use the name from the hash as the title if no explicit title is provided" do
|
606
|
-
expect(
|
641
|
+
expect(klass.new(:name => "/yay").title).to eq("/yay")
|
607
642
|
end
|
608
643
|
|
609
644
|
it "should use the Resource Type's namevar to determine how to find the name in the hash" do
|
@@ -613,19 +648,19 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
|
|
613
648
|
|
614
649
|
[:catalog].each do |param|
|
615
650
|
it "should extract '#{param}' from the hash if present" do
|
616
|
-
expect(
|
651
|
+
expect(klass.new(:name => "/yay", param => "foo").send(param)).to eq("foo")
|
617
652
|
end
|
618
653
|
end
|
619
654
|
|
620
655
|
it "should use any remaining hash keys as its parameters" do
|
621
|
-
resource =
|
656
|
+
resource = klass.new(:title => "/foo", :catalog => "foo", :atboot => :yes, :fstype => "boo")
|
622
657
|
expect(resource[:fstype]).to eq("boo")
|
623
658
|
expect(resource[:atboot]).to eq(:yes)
|
624
659
|
end
|
625
660
|
end
|
626
661
|
|
627
662
|
it "should fail if any invalid attributes have been provided" do
|
628
|
-
expect {
|
663
|
+
expect { klass.new(:title => "/foo", :nosuchattr => "whatever") }.to raise_error(Puppet::Error, /no parameter named 'nosuchattr'/)
|
629
664
|
end
|
630
665
|
|
631
666
|
context "when an attribute fails validation" do
|
@@ -638,59 +673,65 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
|
|
638
673
|
end
|
639
674
|
|
640
675
|
it "should include the file/line in the error" do
|
641
|
-
|
642
|
-
|
676
|
+
Puppet::Type.type(:file).any_instance.stubs(:file).returns("example.pp")
|
677
|
+
Puppet::Type.type(:file).any_instance.stubs(:line).returns(42)
|
643
678
|
expect { Puppet::Type.type(:file).new(:title => "/foo", :source => "unknown:///") }.to raise_error(Puppet::ResourceError, /\(file: example\.pp, line: 42\)/)
|
644
679
|
end
|
645
680
|
end
|
646
681
|
|
647
682
|
it "should set its name to the resource's title if the resource does not have a :name or namevar parameter set" do
|
648
|
-
resource = Puppet::Resource.new(
|
683
|
+
resource = Puppet::Resource.new(resource_type, "/foo")
|
649
684
|
|
650
|
-
expect(
|
685
|
+
expect(klass.new(resource).name).to eq("/foo")
|
651
686
|
end
|
652
687
|
|
653
688
|
it "should fail if no title, name, or namevar are provided" do
|
654
|
-
expect {
|
689
|
+
expect { klass.new(:atboot => :yes) }.to raise_error(Puppet::Error)
|
655
690
|
end
|
656
691
|
|
657
692
|
it "should set the attributes in the order returned by the class's :allattrs method" do
|
658
|
-
|
659
|
-
resource = Puppet::Resource.new(
|
693
|
+
klass.stubs(:allattrs).returns([:name, :atboot, :noop])
|
694
|
+
resource = Puppet::Resource.new(resource_type, "/foo", :parameters => {:name => "myname", :atboot => :yes, :noop => "whatever"})
|
660
695
|
|
661
696
|
set = []
|
662
697
|
|
663
|
-
|
698
|
+
klass.any_instance.stubs(:newattr).with do |param, hash|
|
664
699
|
set << param
|
665
|
-
|
666
|
-
end
|
700
|
+
true
|
701
|
+
end.returns(stub_everything("a property"))
|
667
702
|
|
668
|
-
|
703
|
+
klass.new(resource)
|
669
704
|
|
670
705
|
expect(set[-1]).to eq(:noop)
|
671
706
|
expect(set[-2]).to eq(:atboot)
|
672
707
|
end
|
673
708
|
|
674
709
|
it "should always set the name and then default provider before anything else" do
|
675
|
-
|
676
|
-
resource = Puppet::Resource.new(
|
710
|
+
klass.stubs(:allattrs).returns([:provider, :name, :atboot])
|
711
|
+
resource = Puppet::Resource.new(resource_type, "/foo", :parameters => {:name => "myname", :atboot => :yes})
|
677
712
|
|
678
713
|
set = []
|
679
714
|
|
680
|
-
|
715
|
+
klass.any_instance.stubs(:newattr).with do |param, hash|
|
681
716
|
set << param
|
682
|
-
|
683
|
-
end
|
717
|
+
true
|
718
|
+
end.returns(stub_everything("a property"))
|
684
719
|
|
685
|
-
|
720
|
+
klass.new(resource)
|
686
721
|
expect(set[0]).to eq(:name)
|
687
722
|
expect(set[1]).to eq(:provider)
|
688
723
|
end
|
689
724
|
|
690
725
|
# This one is really hard to test :/
|
691
726
|
it "should set each default immediately if no value is provided" do
|
727
|
+
# We have a :confine block that calls execute in our upstart provider, which fails
|
728
|
+
# on jruby. Thus, we stub it out here since we don't care to do any assertions on it.
|
729
|
+
# This is only an issue if you're running these unit tests on a platform where upstart
|
730
|
+
# is a default provider, like Ubuntu trusty.
|
731
|
+
Puppet::Util::Execution.stubs(:execute)
|
732
|
+
|
692
733
|
defaults = []
|
693
|
-
|
734
|
+
Puppet::Type.type(:service).any_instance.stubs(:set_default).with { |value| defaults << value; true }
|
694
735
|
|
695
736
|
Puppet::Type.type(:service).new :name => "whatever"
|
696
737
|
|
@@ -698,7 +739,7 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
|
|
698
739
|
end
|
699
740
|
|
700
741
|
it "should retain a copy of the originally provided parameters" do
|
701
|
-
expect(
|
742
|
+
expect(klass.new(:name => "foo", :atboot => :yes, :noop => false).original_parameters).to eq({:atboot => :yes, :noop => false})
|
702
743
|
end
|
703
744
|
|
704
745
|
it "should delete the name via the namevar from the originally provided parameters" do
|
@@ -707,7 +748,7 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
|
|
707
748
|
|
708
749
|
context "when validating the resource" do
|
709
750
|
it "should call the type's validate method if present" do
|
710
|
-
|
751
|
+
Puppet::Type.type(:file).any_instance.expects(:validate)
|
711
752
|
Puppet::Type.type(:file).new(:name => make_absolute('/foo'))
|
712
753
|
end
|
713
754
|
|
@@ -722,8 +763,8 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
|
|
722
763
|
end
|
723
764
|
|
724
765
|
it "should raise Puppet::ResourceError with manifest file and line on failure" do
|
725
|
-
|
726
|
-
|
766
|
+
Puppet::Type.type(:file).any_instance.stubs(:file).returns("example.pp")
|
767
|
+
Puppet::Type.type(:file).any_instance.stubs(:line).returns(42)
|
727
768
|
expect do
|
728
769
|
Puppet::Type.type(:file).new(
|
729
770
|
:name => make_absolute('/foo'),
|
@@ -798,12 +839,12 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
|
|
798
839
|
end
|
799
840
|
|
800
841
|
it "should have a class method for converting a hash into a Puppet::Resource instance" do
|
801
|
-
expect(
|
842
|
+
expect(klass).to respond_to(:hash2resource)
|
802
843
|
end
|
803
844
|
|
804
845
|
describe "when converting a hash to a Puppet::Resource instance" do
|
805
846
|
before do
|
806
|
-
@type =
|
847
|
+
@type = klass
|
807
848
|
end
|
808
849
|
|
809
850
|
it "should treat a :title key as the title of the resource" do
|
@@ -815,7 +856,7 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
|
|
815
856
|
end
|
816
857
|
|
817
858
|
it "should use the Resource Type's namevar to determine how to find the name in the hash" do
|
818
|
-
|
859
|
+
@type.stubs(:key_attributes).returns([ :myname ])
|
819
860
|
|
820
861
|
expect(@type.hash2resource(:myname => "foo").title).to eq("foo")
|
821
862
|
end
|
@@ -848,34 +889,34 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
|
|
848
889
|
|
849
890
|
describe "when retrieving current property values" do
|
850
891
|
before do
|
851
|
-
@resource =
|
852
|
-
|
892
|
+
@resource = klass.new(:name => "foo", :fstype => "bar", :pass => 1, :ensure => :present)
|
893
|
+
@resource.property(:ensure).stubs(:retrieve).returns :absent
|
853
894
|
end
|
854
895
|
|
855
896
|
it "should always retrieve the ensure value by default" do
|
856
897
|
@ensurable_resource = Puppet::Type.type(:file).new(:name => "/not/existent", :mode => "0644")
|
857
|
-
|
858
|
-
|
898
|
+
Puppet::Type::File::Ensure.stubs(:ensure).returns :absent
|
899
|
+
Puppet::Type::File::Ensure.any_instance.expects(:retrieve).once
|
859
900
|
@ensurable_resource.retrieve_resource
|
860
901
|
end
|
861
902
|
|
862
903
|
it "should not retrieve the ensure value if specified" do
|
863
904
|
@ensurable_resource = Puppet::Type.type(:service).new(:name => "DummyService", :enable => true)
|
864
|
-
@ensurable_resource.properties.each { |prop|
|
865
|
-
|
905
|
+
@ensurable_resource.properties.each { |prop| prop.stubs(:retrieve) }
|
906
|
+
Puppet::Type::Service::Ensure.any_instance.expects(:retrieve).never
|
866
907
|
@ensurable_resource.retrieve_resource
|
867
908
|
end
|
868
909
|
|
869
910
|
it "should fail if its provider is unsuitable" do
|
870
|
-
@resource =
|
871
|
-
|
911
|
+
@resource = klass.new(:name => "foo", :fstype => "bar", :pass => 1, :ensure => :present)
|
912
|
+
@resource.provider.class.expects(:suitable?).returns false
|
872
913
|
expect { @resource.retrieve_resource }.to raise_error(Puppet::Error)
|
873
914
|
end
|
874
915
|
|
875
916
|
it "should return a Puppet::Resource instance with its type and title set appropriately" do
|
876
917
|
result = @resource.retrieve_resource
|
877
918
|
expect(result).to be_instance_of(Puppet::Resource)
|
878
|
-
expect(result.type).to eq(
|
919
|
+
expect(result.type).to eq(ref_type)
|
879
920
|
expect(result.title).to eq("foo")
|
880
921
|
end
|
881
922
|
|
@@ -895,21 +936,21 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
|
|
895
936
|
end
|
896
937
|
|
897
938
|
it "should not call retrieve on non-ensure properties if the resource is absent and should consider the property absent" do
|
898
|
-
|
899
|
-
|
939
|
+
@resource.property(:ensure).expects(:retrieve).returns :absent
|
940
|
+
@resource.property(:fstype).expects(:retrieve).never
|
900
941
|
expect(@resource.retrieve_resource[:fstype]).to eq(:absent)
|
901
942
|
end
|
902
943
|
|
903
944
|
it "should include the result of retrieving each property's current value if the resource is present" do
|
904
|
-
|
905
|
-
|
945
|
+
@resource.property(:ensure).expects(:retrieve).returns :present
|
946
|
+
@resource.property(:fstype).expects(:retrieve).returns 15
|
906
947
|
@resource.retrieve_resource[:fstype] == 15
|
907
948
|
end
|
908
949
|
end
|
909
950
|
|
910
951
|
describe "#to_resource" do
|
911
952
|
it "should return a Puppet::Resource that includes properties, parameters and tags" do
|
912
|
-
type_resource =
|
953
|
+
type_resource = klass.new(
|
913
954
|
:ensure => :present,
|
914
955
|
:name => "foo",
|
915
956
|
:fstype => "bar",
|
@@ -921,15 +962,15 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
|
|
921
962
|
expect(type_resource.parameters[:remounts]).not_to be_a(Puppet::Property)
|
922
963
|
expect(type_resource.parameters[:fstype].is_a?(Puppet::Property)).to be_truthy
|
923
964
|
|
924
|
-
|
925
|
-
|
965
|
+
type_resource.property(:ensure).expects(:retrieve).returns :present
|
966
|
+
type_resource.property(:fstype).expects(:retrieve).returns 15
|
926
967
|
|
927
968
|
resource = type_resource.to_resource
|
928
969
|
|
929
970
|
expect(resource).to be_a Puppet::Resource
|
930
971
|
expect(resource[:fstype]).to eq(15)
|
931
972
|
expect(resource[:remounts]).to eq(:true)
|
932
|
-
expect(resource.tags).to eq(Puppet::Util::TagSet.new(%w{foo bar baz
|
973
|
+
expect(resource.tags).to eq(Puppet::Util::TagSet.new(%w{foo bar baz} + [resource_type.to_s]))
|
933
974
|
end
|
934
975
|
end
|
935
976
|
|
@@ -937,7 +978,7 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
|
|
937
978
|
describe "when there's one namevar" do
|
938
979
|
before do
|
939
980
|
@type_class = Puppet::Type.type(:notify)
|
940
|
-
|
981
|
+
@type_class.stubs(:key_attributes).returns([:one])
|
941
982
|
end
|
942
983
|
|
943
984
|
it "should have a default pattern for when there's one namevar" do
|
@@ -992,7 +1033,7 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
|
|
992
1033
|
let(:provider) { resource.provider }
|
993
1034
|
|
994
1035
|
it "should be suitable if its type doesn't use providers" do
|
995
|
-
|
1036
|
+
type.stubs(:paramclass).with(:provider).returns nil
|
996
1037
|
expect(resource).to be_suitable
|
997
1038
|
end
|
998
1039
|
|
@@ -1001,18 +1042,18 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
|
|
1001
1042
|
end
|
1002
1043
|
|
1003
1044
|
it "should not be suitable if it has a provider which is not suitable" do
|
1004
|
-
|
1045
|
+
provider.class.stubs(:suitable?).returns false
|
1005
1046
|
expect(resource).not_to be_suitable
|
1006
1047
|
end
|
1007
1048
|
|
1008
1049
|
it "should be suitable if it does not have a provider and there is a default provider" do
|
1009
|
-
|
1050
|
+
resource.stubs(:provider).returns nil
|
1010
1051
|
expect(resource).to be_suitable
|
1011
1052
|
end
|
1012
1053
|
|
1013
1054
|
it "should not be suitable if it doesn't have a provider and there is not default provider" do
|
1014
|
-
|
1015
|
-
|
1055
|
+
resource.stubs(:provider).returns nil
|
1056
|
+
type.stubs(:defaultprovider).returns nil
|
1016
1057
|
|
1017
1058
|
expect(resource).not_to be_suitable
|
1018
1059
|
end
|
@@ -1144,29 +1185,27 @@ describe Puppet::Type::RelationshipMetaparam do
|
|
1144
1185
|
end
|
1145
1186
|
|
1146
1187
|
it "should be able to validate relationships" do
|
1147
|
-
expect(Puppet::Type.metaparamclass(:require).new(:resource =>
|
1188
|
+
expect(Puppet::Type.metaparamclass(:require).new(:resource => mock("resource"))).to respond_to(:validate_relationship)
|
1148
1189
|
end
|
1149
1190
|
|
1150
1191
|
describe 'if any specified resource is not in the catalog' do
|
1151
|
-
let(:catalog) {
|
1192
|
+
let(:catalog) { mock 'catalog' }
|
1152
1193
|
|
1153
1194
|
let(:resource) do
|
1154
|
-
|
1155
|
-
'resource',
|
1195
|
+
stub 'resource',
|
1156
1196
|
:catalog => catalog,
|
1157
1197
|
:ref => 'resource',
|
1158
1198
|
:line= => nil,
|
1159
1199
|
:line => nil,
|
1160
1200
|
:file= => nil,
|
1161
1201
|
:file => nil
|
1162
|
-
)
|
1163
1202
|
end
|
1164
1203
|
|
1165
1204
|
let(:param) { Puppet::Type.metaparamclass(:require).new(:resource => resource, :value => %w{Foo[bar] Class[test]}) }
|
1166
1205
|
|
1167
1206
|
before do
|
1168
|
-
|
1169
|
-
|
1207
|
+
catalog.expects(:resource).with("Foo[bar]").returns "something"
|
1208
|
+
catalog.expects(:resource).with("Class[Test]").returns nil
|
1170
1209
|
end
|
1171
1210
|
|
1172
1211
|
describe "and the resource doesn't have a file or line number" do
|
@@ -1180,8 +1219,8 @@ describe Puppet::Type::RelationshipMetaparam do
|
|
1180
1219
|
|
1181
1220
|
describe "and the resource has a file or line number" do
|
1182
1221
|
before do
|
1183
|
-
|
1184
|
-
|
1222
|
+
resource.stubs(:line).returns '42'
|
1223
|
+
resource.stubs(:file).returns '/hitchhikers/guide/to/the/galaxy'
|
1185
1224
|
end
|
1186
1225
|
|
1187
1226
|
it "raises an error with context" do
|
@@ -1241,8 +1280,8 @@ describe Puppet::Type.metaparamclass(:audit) do
|
|
1241
1280
|
|
1242
1281
|
describe "when generating the uniqueness key" do
|
1243
1282
|
it "should include all of the key_attributes in alphabetical order by attribute name" do
|
1244
|
-
|
1245
|
-
|
1283
|
+
Puppet::Type.type(:file).stubs(:key_attributes).returns [:path, :mode, :owner]
|
1284
|
+
Puppet::Type.type(:file).stubs(:title_patterns).returns(
|
1246
1285
|
[ [ /(.*)/, [ [:path, lambda{|x| x} ] ] ] ]
|
1247
1286
|
)
|
1248
1287
|
myfile = make_absolute('/my/file')
|