puppet 6.25.1-x86-mingw32 → 7.0.0-x86-mingw32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of puppet might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/CODEOWNERS +16 -2
- data/CONTRIBUTING.md +5 -5
- data/Gemfile +3 -5
- data/Gemfile.lock +39 -51
- data/README.md +5 -5
- data/conf/fileserver.conf +5 -10
- data/ext/README.environment +8 -0
- data/ext/build_defaults.yaml +1 -1
- data/ext/dbfix.sql +132 -0
- data/ext/debian/README.Debian +8 -0
- data/ext/debian/README.source +2 -0
- data/ext/debian/TODO.Debian +1 -0
- data/ext/debian/changelog.erb +1122 -0
- data/ext/debian/compat +1 -0
- data/ext/debian/control +144 -0
- data/ext/debian/copyright +339 -0
- data/ext/debian/docs +1 -0
- data/ext/debian/fileserver.conf +41 -0
- data/ext/debian/puppet-common.dirs +13 -0
- data/ext/debian/puppet-common.install +3 -0
- data/ext/debian/puppet-common.lintian-overrides +5 -0
- data/ext/debian/puppet-common.manpages +28 -0
- data/ext/debian/puppet-common.postinst +35 -0
- data/ext/debian/puppet-common.postrm +33 -0
- data/ext/debian/puppet-el.dirs +1 -0
- data/ext/debian/puppet-el.emacsen-install +25 -0
- data/ext/debian/puppet-el.emacsen-remove +11 -0
- data/ext/debian/puppet-el.emacsen-startup +9 -0
- data/ext/debian/puppet-el.install +1 -0
- data/ext/debian/puppet-testsuite.install +2 -0
- data/ext/debian/puppet-testsuite.lintian-overrides +4 -0
- data/ext/debian/puppet.lintian-overrides +3 -0
- data/ext/debian/puppet.logrotate +20 -0
- data/ext/debian/puppet.postinst +20 -0
- data/ext/debian/puppet.postrm +20 -0
- data/ext/debian/puppet.preinst +20 -0
- data/ext/debian/puppetmaster-common.install +2 -0
- data/ext/debian/puppetmaster-common.manpages +2 -0
- data/ext/debian/puppetmaster-common.postinst +6 -0
- data/ext/debian/puppetmaster-passenger.dirs +4 -0
- data/ext/debian/puppetmaster-passenger.postinst +162 -0
- data/ext/debian/puppetmaster-passenger.postrm +61 -0
- data/ext/debian/puppetmaster.README.debian +17 -0
- data/ext/debian/puppetmaster.default +14 -0
- data/ext/debian/puppetmaster.init +137 -0
- data/ext/debian/puppetmaster.lintian-overrides +3 -0
- data/ext/debian/puppetmaster.postinst +20 -0
- data/ext/debian/puppetmaster.postrm +5 -0
- data/ext/debian/puppetmaster.preinst +22 -0
- data/ext/debian/rules +132 -0
- data/ext/debian/source/format +1 -0
- data/ext/debian/source/options +1 -0
- data/ext/debian/vim-puppet.README.Debian +13 -0
- data/ext/debian/vim-puppet.dirs +5 -0
- data/ext/debian/vim-puppet.yaml +7 -0
- data/ext/debian/watch +2 -0
- data/ext/freebsd/puppetd +26 -0
- data/ext/freebsd/puppetmasterd +26 -0
- data/ext/gentoo/conf.d/puppet +5 -0
- data/ext/gentoo/conf.d/puppetmaster +12 -0
- data/ext/gentoo/init.d/puppet +38 -0
- data/ext/gentoo/init.d/puppetmaster +51 -0
- data/ext/gentoo/puppet/fileserver.conf +41 -0
- data/ext/ips/puppet-agent +44 -0
- data/ext/ips/puppet-master +44 -0
- data/ext/ips/puppet.p5m.erb +12 -0
- data/ext/ips/puppetagent.xml +42 -0
- data/ext/ips/puppetmaster.xml +42 -0
- data/ext/ips/rules +19 -0
- data/ext/ips/transforms +34 -0
- data/ext/ldap/puppet.schema +24 -0
- data/ext/logcheck/puppet +23 -0
- data/{examples → ext}/nagios/check_puppet.rb +2 -2
- data/ext/osx/file_mapping.yaml +28 -0
- data/ext/osx/postflight.erb +109 -0
- data/ext/osx/preflight.erb +52 -0
- data/ext/osx/prototype.plist.erb +38 -0
- data/ext/osx/puppet.plist +0 -2
- data/ext/project_data.yaml +1 -15
- data/ext/redhat/fileserver.conf +41 -0
- data/ext/redhat/logrotate +21 -0
- data/ext/redhat/puppet.spec.erb +841 -0
- data/ext/redhat/server.init +128 -0
- data/ext/redhat/server.sysconfig +13 -0
- data/{examples/enc → ext}/regexp_nodes/classes/databases +0 -0
- data/{examples/enc → ext}/regexp_nodes/classes/webservers +0 -0
- data/{examples/enc → ext}/regexp_nodes/environment/development +0 -0
- data/{examples/enc → ext}/regexp_nodes/parameters/service/prod +0 -0
- data/{examples/enc → ext}/regexp_nodes/parameters/service/qa +0 -0
- data/{examples/enc → ext}/regexp_nodes/parameters/service/sandbox +0 -0
- data/{examples/enc → ext}/regexp_nodes/regexp_nodes.rb +0 -0
- data/ext/solaris/pkginfo +6 -0
- data/ext/solaris/smf/puppetd.xml +77 -0
- data/ext/solaris/smf/puppetmasterd.xml +77 -0
- data/ext/solaris/smf/svc-puppetd +71 -0
- data/ext/solaris/smf/svc-puppetmasterd +67 -0
- data/ext/suse/puppet.spec +310 -0
- data/ext/suse/server.init +173 -0
- data/ext/windows/service/daemon.rb +6 -5
- data/ext/yaml_nodes.rb +105 -0
- data/install.rb +21 -17
- data/lib/puppet/application/agent.rb +4 -16
- data/lib/puppet/application/apply.rb +4 -24
- data/lib/puppet/application/device.rb +100 -106
- data/lib/puppet/application/filebucket.rb +13 -10
- data/lib/puppet/application/resource.rb +16 -32
- data/lib/puppet/application/script.rb +0 -2
- data/lib/puppet/application/ssl.rb +1 -13
- data/lib/puppet/application.rb +178 -108
- data/lib/puppet/application_support.rb +0 -7
- data/lib/puppet/concurrent/thread_local_singleton.rb +0 -1
- data/lib/puppet/configurer/downloader.rb +1 -2
- data/lib/puppet/configurer/plugin_handler.rb +21 -19
- data/lib/puppet/configurer.rb +86 -189
- data/lib/puppet/confine/variable.rb +1 -1
- data/lib/puppet/defaults.rb +128 -232
- data/lib/puppet/environments.rb +82 -146
- data/lib/puppet/face/facts.rb +5 -103
- data/lib/puppet/face/help/action.erb +0 -1
- data/lib/puppet/face/help/face.erb +0 -1
- data/lib/puppet/face/help.rb +1 -1
- data/lib/puppet/face/node/clean.rb +0 -11
- data/lib/puppet/face/plugin.rb +5 -8
- data/lib/puppet/ffi/windows/api_types.rb +311 -0
- data/lib/puppet/ffi/windows/constants.rb +404 -0
- data/lib/puppet/ffi/windows/functions.rb +628 -0
- data/lib/puppet/ffi/windows/structs.rb +338 -0
- data/lib/puppet/ffi/windows.rb +12 -0
- data/lib/puppet/file_serving/configuration/parser.rb +3 -34
- data/lib/puppet/file_serving/configuration.rb +0 -8
- data/lib/puppet/file_serving/fileset.rb +2 -14
- data/lib/puppet/file_serving/http_metadata.rb +1 -1
- data/lib/puppet/file_serving/mount/file.rb +4 -4
- data/lib/puppet/file_serving/mount.rb +1 -2
- data/lib/puppet/file_system/file_impl.rb +1 -3
- data/lib/puppet/file_system/memory_file.rb +1 -8
- data/lib/puppet/file_system/windows.rb +2 -4
- data/lib/puppet/forge/repository.rb +0 -1
- data/lib/puppet/forge.rb +4 -4
- data/lib/puppet/functions/all.rb +1 -1
- data/lib/puppet/functions/camelcase.rb +1 -1
- data/lib/puppet/functions/capitalize.rb +2 -2
- data/lib/puppet/functions/downcase.rb +2 -2
- data/lib/puppet/functions/empty.rb +0 -8
- data/lib/puppet/functions/find_template.rb +2 -2
- data/lib/puppet/functions/get.rb +5 -5
- data/lib/puppet/functions/group_by.rb +5 -13
- data/lib/puppet/functions/lest.rb +1 -1
- data/lib/puppet/functions/new.rb +100 -100
- data/lib/puppet/functions/partition.rb +4 -12
- data/lib/puppet/functions/require.rb +5 -5
- data/lib/puppet/functions/sort.rb +3 -3
- data/lib/puppet/functions/strftime.rb +0 -1
- data/lib/puppet/functions/tree_each.rb +9 -7
- data/lib/puppet/functions/type.rb +4 -4
- data/lib/puppet/functions/unwrap.rb +2 -17
- data/lib/puppet/functions/upcase.rb +2 -2
- data/lib/puppet/generate/models/type/type.rb +4 -1
- data/lib/puppet/http/client.rb +165 -115
- data/lib/puppet/{network/resolver.rb → http/dns.rb} +2 -2
- data/lib/puppet/http/errors.rb +16 -0
- data/lib/puppet/http/external_client.rb +5 -7
- data/lib/puppet/{network/http → http}/factory.rb +8 -15
- data/lib/puppet/{network/http → http}/pool.rb +61 -26
- data/lib/puppet/{network/http/session.rb → http/pool_entry.rb} +2 -3
- data/lib/puppet/http/proxy.rb +137 -0
- data/lib/puppet/http/redirector.rb +4 -17
- data/lib/puppet/http/resolver/server_list.rb +10 -25
- data/lib/puppet/http/resolver/settings.rb +4 -7
- data/lib/puppet/http/resolver/srv.rb +7 -11
- data/lib/puppet/http/resolver.rb +5 -15
- data/lib/puppet/http/response.rb +36 -54
- data/lib/puppet/http/response_converter.rb +24 -0
- data/lib/puppet/http/response_net_http.rb +42 -0
- data/lib/puppet/http/retry_after_handler.rb +4 -13
- data/lib/puppet/http/service/ca.rb +11 -22
- data/lib/puppet/http/service/compiler.rb +23 -144
- data/lib/puppet/http/service/file_server.rb +19 -29
- data/lib/puppet/http/service/puppetserver.rb +26 -12
- data/lib/puppet/http/service/report.rb +8 -10
- data/lib/puppet/http/service.rb +12 -26
- data/lib/puppet/http/session.rb +11 -20
- data/lib/puppet/{network/http → http}/site.rb +1 -2
- data/lib/puppet/http.rb +22 -13
- data/lib/puppet/indirector/catalog/compiler.rb +6 -25
- data/lib/puppet/indirector/catalog/rest.rb +2 -5
- data/lib/puppet/indirector/facts/facter.rb +6 -6
- data/lib/puppet/indirector/facts/rest.rb +3 -22
- data/lib/puppet/indirector/file_bucket_file/rest.rb +3 -9
- data/lib/puppet/indirector/file_content/rest.rb +2 -6
- data/lib/puppet/indirector/file_metadata/rest.rb +3 -10
- data/lib/puppet/indirector/file_server.rb +1 -8
- data/lib/puppet/indirector/generic_http.rb +0 -11
- data/lib/puppet/indirector/indirection.rb +1 -1
- data/lib/puppet/indirector/node/rest.rb +2 -4
- data/lib/puppet/indirector/report/rest.rb +3 -8
- data/lib/puppet/indirector/request.rb +0 -101
- data/lib/puppet/indirector/resource/ral.rb +1 -6
- data/lib/puppet/indirector/rest.rb +12 -263
- data/lib/puppet/indirector/terminus.rb +0 -4
- data/lib/puppet/interface/documentation.rb +0 -1
- data/lib/puppet/module/plan.rb +1 -0
- data/lib/puppet/module/task.rb +1 -1
- data/lib/puppet/module.rb +0 -1
- data/lib/puppet/module_tool/applications/installer.rb +2 -56
- data/lib/puppet/module_tool/applications/uninstaller.rb +1 -1
- data/lib/puppet/module_tool/applications/upgrader.rb +1 -1
- data/lib/puppet/module_tool/applications.rb +0 -1
- data/lib/puppet/module_tool/errors/shared.rb +2 -34
- data/lib/puppet/network/authconfig.rb +2 -96
- data/lib/puppet/network/authorization.rb +13 -35
- data/lib/puppet/network/formats.rb +0 -67
- data/lib/puppet/network/http/api/indirected_routes.rb +3 -21
- data/lib/puppet/network/http/api/master/v3.rb +11 -13
- data/lib/puppet/network/http/connection.rb +247 -316
- data/lib/puppet/network/http/handler.rb +0 -1
- data/lib/puppet/network/http.rb +3 -3
- data/lib/puppet/network/http_pool.rb +16 -34
- data/lib/puppet/node/environment.rb +11 -10
- data/lib/puppet/node.rb +1 -30
- data/lib/puppet/pal/json_catalog_encoder.rb +4 -0
- data/lib/puppet/pal/pal_impl.rb +4 -2
- data/lib/puppet/parser/ast/leaf.rb +2 -3
- data/lib/puppet/parser/ast/pops_bridge.rb +0 -38
- data/lib/puppet/parser/compiler/catalog_validator/relationship_validator.rb +14 -39
- data/lib/puppet/parser/compiler.rb +0 -198
- data/lib/puppet/parser/functions/fqdn_rand.rb +6 -14
- data/lib/puppet/parser/resource.rb +1 -70
- data/lib/puppet/parser/scope.rb +0 -1
- data/lib/puppet/parser/templatewrapper.rb +1 -2
- data/lib/puppet/pops/evaluator/closure.rb +5 -7
- data/lib/puppet/pops/evaluator/deferred_resolver.rb +3 -5
- data/lib/puppet/pops/evaluator/evaluator_impl.rb +0 -5
- data/lib/puppet/pops/evaluator/runtime3_resource_support.rb +3 -4
- data/lib/puppet/pops/evaluator/runtime3_support.rb +1 -1
- data/lib/puppet/pops/issues.rb +0 -5
- data/lib/puppet/pops/loader/ruby_legacy_function_instantiator.rb +6 -8
- data/lib/puppet/pops/lookup/lookup_adapter.rb +2 -3
- data/lib/puppet/pops/model/ast.pp +0 -42
- data/lib/puppet/pops/model/ast.rb +0 -291
- data/lib/puppet/pops/model/ast_transformer.rb +1 -1
- data/lib/puppet/pops/model/factory.rb +1 -47
- data/lib/puppet/pops/model/model_label_provider.rb +0 -5
- data/lib/puppet/pops/model/model_tree_dumper.rb +0 -22
- data/lib/puppet/pops/model/pn_transformer.rb +0 -16
- data/lib/puppet/pops/parser/egrammar.ra +0 -56
- data/lib/puppet/pops/parser/eparser.rb +1691 -1883
- data/lib/puppet/pops/parser/lexer2.rb +91 -92
- data/lib/puppet/pops/parser/parser_support.rb +0 -5
- data/lib/puppet/pops/parser/slurp_support.rb +0 -1
- data/lib/puppet/pops/resource/resource_type_impl.rb +2 -24
- data/lib/puppet/pops/serialization/to_data_converter.rb +6 -18
- data/lib/puppet/pops/serialization/to_stringified_converter.rb +1 -1
- data/lib/puppet/pops/types/p_sem_ver_type.rb +2 -8
- data/lib/puppet/pops/types/p_sensitive_type.rb +0 -10
- data/lib/puppet/pops/types/type_calculator.rb +0 -7
- data/lib/puppet/pops/types/type_formatter.rb +3 -4
- data/lib/puppet/pops/types/type_mismatch_describer.rb +1 -1
- data/lib/puppet/pops/types/type_parser.rb +0 -4
- data/lib/puppet/pops/types/types.rb +1 -2
- data/lib/puppet/pops/validation/checker4_0.rb +9 -37
- data/lib/puppet/pops/validation/tasks_checker.rb +0 -12
- data/lib/puppet/pops/validation/validator_factory_4_0.rb +1 -2
- data/lib/puppet/property/list.rb +1 -1
- data/lib/puppet/provider/aix_object.rb +1 -1
- data/lib/puppet/provider/exec/posix.rb +4 -16
- data/lib/puppet/provider/group/groupadd.rb +10 -18
- data/lib/puppet/provider/nameservice.rb +0 -18
- data/lib/puppet/provider/package/apt.rb +2 -34
- data/lib/puppet/provider/package/aptitude.rb +0 -6
- data/lib/puppet/provider/package/dnfmodule.rb +1 -1
- data/lib/puppet/provider/package/dpkg.rb +0 -10
- data/lib/puppet/provider/package/gem.rb +23 -3
- data/lib/puppet/provider/package/nim.rb +6 -11
- data/lib/puppet/provider/package/pip.rb +3 -16
- data/lib/puppet/provider/package/pkg.rb +2 -23
- data/lib/puppet/provider/package/portage.rb +1 -1
- data/lib/puppet/provider/package/puppet_gem.rb +1 -4
- data/lib/puppet/provider/package/puppetserver_gem.rb +1 -1
- data/lib/puppet/provider/package/yum.rb +1 -1
- data/lib/puppet/provider/parsedfile.rb +0 -3
- data/lib/puppet/provider/service/base.rb +1 -1
- data/lib/puppet/provider/service/debian.rb +0 -2
- data/lib/puppet/provider/service/init.rb +5 -5
- data/lib/puppet/provider/service/launchd.rb +2 -2
- data/lib/puppet/provider/service/redhat.rb +1 -1
- data/lib/puppet/provider/service/smf.rb +194 -76
- data/lib/puppet/provider/service/systemd.rb +6 -16
- data/lib/puppet/provider/service/upstart.rb +5 -5
- data/lib/puppet/provider/service/windows.rb +0 -38
- data/lib/puppet/provider/user/aix.rb +3 -46
- data/lib/puppet/provider/user/directoryservice.rb +11 -34
- data/lib/puppet/provider/user/useradd.rb +24 -134
- data/lib/puppet/provider.rb +1 -14
- data/lib/puppet/reference/configuration.rb +8 -7
- data/lib/puppet/reference/indirection.rb +1 -1
- data/lib/puppet/reference/providers.rb +2 -2
- data/lib/puppet/resource/catalog.rb +2 -15
- data/lib/puppet/resource/type.rb +3 -119
- data/lib/puppet/resource/type_collection.rb +3 -49
- data/lib/puppet/resource.rb +6 -127
- data/lib/puppet/runtime.rb +2 -13
- data/lib/puppet/settings/environment_conf.rb +0 -1
- data/lib/puppet/settings/integer_setting.rb +17 -0
- data/lib/puppet/settings/port_setting.rb +15 -0
- data/lib/puppet/settings/priority_setting.rb +5 -4
- data/lib/puppet/settings.rb +82 -98
- data/lib/puppet/ssl/base.rb +3 -5
- data/lib/puppet/ssl/certificate.rb +0 -6
- data/lib/puppet/ssl/certificate_request.rb +1 -12
- data/lib/puppet/ssl/certificate_signer.rb +6 -0
- data/lib/puppet/ssl/oids.rb +3 -1
- data/lib/puppet/ssl/ssl_provider.rb +17 -0
- data/lib/puppet/ssl/state_machine.rb +3 -1
- data/lib/puppet/ssl/verifier.rb +2 -0
- data/lib/puppet/ssl.rb +10 -6
- data/lib/puppet/test/test_helper.rb +2 -7
- data/lib/puppet/transaction/additional_resource_generator.rb +1 -1
- data/lib/puppet/transaction/persistence.rb +1 -11
- data/lib/puppet/transaction/report.rb +3 -19
- data/lib/puppet/transaction.rb +1 -7
- data/lib/puppet/type/exec.rb +5 -35
- data/lib/puppet/type/file/checksum.rb +1 -1
- data/lib/puppet/type/file/mode.rb +0 -6
- data/lib/puppet/type/file/selcontext.rb +1 -1
- data/lib/puppet/type/file/source.rb +1 -1
- data/lib/puppet/type/file.rb +12 -32
- data/lib/puppet/type/filebucket.rb +4 -4
- data/lib/puppet/type/group.rb +1 -0
- data/lib/puppet/type/package.rb +8 -16
- data/lib/puppet/type/resources.rb +1 -1
- data/lib/puppet/type/service.rb +41 -26
- data/lib/puppet/type/tidy.rb +3 -22
- data/lib/puppet/type/user.rb +21 -38
- data/lib/puppet/type.rb +1 -77
- data/lib/puppet/util/autoload.rb +8 -1
- data/lib/puppet/util/command_line.rb +1 -1
- data/lib/puppet/util/execution.rb +0 -11
- data/lib/puppet/util/filetype.rb +2 -2
- data/lib/puppet/util/http_proxy.rb +2 -215
- data/lib/puppet/util/json.rb +0 -3
- data/lib/puppet/util/log.rb +2 -1
- data/lib/puppet/util/logging.rb +25 -1
- data/lib/puppet/util/monkey_patches.rb +0 -53
- data/lib/puppet/util/pidlock.rb +1 -1
- data/lib/puppet/util/posix.rb +5 -54
- data/lib/puppet/util/rdoc/parser/puppet_parser_core.rb +1 -1
- data/lib/puppet/util/rdoc.rb +0 -7
- data/lib/puppet/util/retry_action.rb +1 -1
- data/lib/puppet/util/run_mode.rb +9 -1
- data/lib/puppet/util/selinux.rb +4 -30
- data/lib/puppet/util/suidmanager.rb +2 -1
- data/lib/puppet/util/symbolic_file_mode.rb +17 -29
- data/lib/puppet/util/tagging.rb +0 -1
- data/lib/puppet/util/windows/adsi.rb +0 -46
- data/lib/puppet/util/windows/daemon.rb +360 -0
- data/lib/puppet/util/windows/error.rb +1 -0
- data/lib/puppet/util/windows/eventlog.rb +4 -9
- data/lib/puppet/util/windows/file.rb +8 -242
- data/lib/puppet/util/windows/monkey_patches/process.rb +414 -0
- data/lib/puppet/util/windows/principal.rb +2 -9
- data/lib/puppet/util/windows/process.rb +4 -226
- data/lib/puppet/util/windows/service.rb +11 -457
- data/lib/puppet/util/windows/sid.rb +2 -6
- data/lib/puppet/util/windows/string.rb +12 -13
- data/lib/puppet/util/windows/user.rb +2 -0
- data/lib/puppet/util/windows.rb +3 -11
- data/lib/puppet/util/yaml.rb +0 -22
- data/lib/puppet/util.rb +3 -4
- data/lib/puppet/vendor/require_vendored.rb +0 -1
- data/lib/puppet/version.rb +1 -1
- data/lib/puppet/x509/cert_provider.rb +29 -1
- data/lib/puppet/x509.rb +5 -1
- data/lib/puppet.rb +20 -25
- data/locales/puppet.pot +816 -1637
- data/man/man5/puppet.conf.5 +286 -382
- data/man/man8/puppet-agent.8 +2 -5
- data/man/man8/puppet-apply.8 +2 -2
- data/man/man8/puppet-catalog.8 +9 -9
- data/man/man8/puppet-config.8 +1 -1
- data/man/man8/puppet-describe.8 +1 -1
- data/man/man8/puppet-device.8 +2 -2
- data/man/man8/puppet-doc.8 +1 -1
- data/man/man8/puppet-epp.8 +1 -1
- data/man/man8/puppet-facts.8 +8 -51
- data/man/man8/puppet-filebucket.8 +4 -4
- data/man/man8/puppet-generate.8 +1 -1
- data/man/man8/puppet-help.8 +1 -1
- data/man/man8/puppet-lookup.8 +1 -1
- data/man/man8/puppet-module.8 +3 -60
- data/man/man8/puppet-node.8 +5 -5
- data/man/man8/puppet-parser.8 +1 -1
- data/man/man8/puppet-plugin.8 +1 -1
- data/man/man8/puppet-report.8 +5 -5
- data/man/man8/puppet-resource.8 +1 -1
- data/man/man8/puppet-script.8 +2 -2
- data/man/man8/puppet-ssl.8 +1 -5
- data/man/man8/puppet.8 +2 -2
- data/spec/fixtures/ssl/127.0.0.1-key.pem +57 -107
- data/spec/fixtures/ssl/127.0.0.1.pem +31 -52
- data/spec/fixtures/ssl/bad-basic-constraints.pem +35 -57
- data/spec/fixtures/ssl/bad-int-basic-constraints.pem +35 -57
- data/spec/fixtures/ssl/ca.pem +35 -57
- data/spec/fixtures/ssl/crl.pem +18 -28
- data/spec/fixtures/ssl/ec-key.pem +11 -11
- data/spec/fixtures/ssl/ec.pem +24 -33
- data/spec/fixtures/ssl/encrypted-ec-key.pem +12 -12
- data/spec/fixtures/ssl/encrypted-key.pem +58 -108
- data/spec/fixtures/ssl/intermediate-agent-crl.pem +19 -28
- data/spec/fixtures/ssl/intermediate-agent.pem +36 -57
- data/spec/fixtures/ssl/intermediate-crl.pem +21 -31
- data/spec/fixtures/ssl/intermediate.pem +36 -57
- data/spec/fixtures/ssl/pluto-key.pem +57 -107
- data/spec/fixtures/ssl/pluto.pem +30 -52
- data/spec/fixtures/ssl/request-key.pem +57 -107
- data/spec/fixtures/ssl/request.pem +26 -47
- data/spec/fixtures/ssl/revoked-key.pem +57 -107
- data/spec/fixtures/ssl/revoked.pem +30 -52
- data/spec/fixtures/ssl/signed-key.pem +57 -107
- data/spec/fixtures/ssl/signed.pem +30 -52
- data/spec/fixtures/ssl/tampered-cert.pem +30 -52
- data/spec/fixtures/ssl/tampered-csr.pem +26 -47
- data/spec/fixtures/ssl/unknown-127.0.0.1-key.pem +57 -107
- data/spec/fixtures/ssl/unknown-127.0.0.1.pem +29 -50
- data/spec/fixtures/ssl/unknown-ca-key.pem +57 -107
- data/spec/fixtures/ssl/unknown-ca.pem +33 -55
- data/spec/fixtures/unit/provider/service/smf/{svcs.out → svcs_instances.out} +0 -0
- data/spec/fixtures/unit/provider/user/aix/aix_passwd_file.out +0 -4
- data/spec/integration/application/agent_spec.rb +51 -299
- data/spec/integration/application/apply_spec.rb +1 -20
- data/spec/integration/application/filebucket_spec.rb +16 -32
- data/spec/integration/application/help_spec.rb +2 -0
- data/spec/integration/application/module_spec.rb +0 -21
- data/spec/integration/application/plugin_spec.rb +24 -2
- data/spec/integration/configurer_spec.rb +2 -18
- data/spec/integration/defaults_spec.rb +14 -3
- data/spec/integration/environments/settings_interpolation_spec.rb +4 -0
- data/spec/integration/http/client_spec.rb +0 -12
- data/spec/integration/indirector/direct_file_server_spec.rb +3 -1
- data/spec/integration/indirector/facts/facter_spec.rb +39 -93
- data/spec/integration/network/http_pool_spec.rb +3 -21
- data/spec/integration/parser/catalog_spec.rb +0 -38
- data/spec/integration/parser/node_spec.rb +0 -9
- data/spec/integration/parser/pcore_resource_spec.rb +0 -47
- data/spec/integration/resource/type_collection_spec.rb +6 -2
- data/spec/integration/transaction/report_spec.rb +1 -1
- data/spec/integration/transaction_spec.rb +9 -4
- data/spec/integration/type/exec_spec.rb +45 -70
- data/spec/integration/type/file_spec.rb +7 -6
- data/spec/integration/type/package_spec.rb +6 -6
- data/spec/integration/util/rdoc/parser_spec.rb +1 -1
- data/spec/integration/util/windows/adsi_spec.rb +1 -21
- data/spec/integration/util/windows/monkey_patches/process_spec.rb +231 -0
- data/spec/integration/util/windows/principal_spec.rb +0 -21
- data/spec/integration/util/windows/process_spec.rb +9 -1
- data/spec/integration/util/windows/registry_spec.rb +10 -6
- data/spec/integration/util/windows/security_spec.rb +1 -1
- data/spec/lib/matchers/include.rb +27 -0
- data/spec/lib/matchers/include_spec.rb +32 -0
- data/spec/lib/puppet/test_ca.rb +2 -7
- data/spec/lib/puppet_spec/modules.rb +2 -13
- data/spec/lib/puppet_spec/puppetserver.rb +1 -16
- data/spec/lib/puppet_spec/settings.rb +1 -1
- data/spec/shared_behaviours/documentation_on_faces.rb +2 -0
- data/spec/spec_helper.rb +17 -13
- data/spec/unit/agent_spec.rb +6 -10
- data/spec/unit/application/agent_spec.rb +3 -7
- data/spec/unit/application/apply_spec.rb +56 -76
- data/spec/unit/application/facts_spec.rb +12 -456
- data/spec/unit/application/filebucket_spec.rb +43 -39
- data/spec/unit/application/resource_spec.rb +0 -29
- data/spec/unit/application/ssl_spec.rb +2 -25
- data/spec/unit/application_spec.rb +9 -51
- data/spec/unit/certificate_factory_spec.rb +1 -1
- data/spec/unit/configurer/downloader_spec.rb +6 -8
- data/spec/unit/configurer/plugin_handler_spec.rb +56 -18
- data/spec/unit/configurer_spec.rb +68 -264
- data/spec/unit/confine/feature_spec.rb +1 -1
- data/spec/unit/confine_spec.rb +2 -8
- data/spec/unit/context/trusted_information_spec.rb +2 -6
- data/spec/unit/defaults_spec.rb +68 -55
- data/spec/unit/environments_spec.rb +68 -408
- data/spec/unit/face/node_spec.rb +11 -0
- data/spec/unit/face/plugin_spec.rb +73 -33
- data/spec/unit/file_bucket/dipper_spec.rb +2 -2
- data/spec/unit/file_bucket/file_spec.rb +1 -1
- data/spec/unit/file_serving/configuration/parser_spec.rb +15 -41
- data/spec/unit/file_serving/configuration_spec.rb +10 -26
- data/spec/unit/file_serving/fileset_spec.rb +0 -60
- data/spec/unit/file_serving/metadata_spec.rb +3 -3
- data/spec/unit/file_serving/terminus_helper_spec.rb +4 -11
- data/spec/unit/file_system_spec.rb +0 -22
- data/spec/unit/forge/module_release_spec.rb +7 -2
- data/spec/unit/functions/assert_type_spec.rb +1 -1
- data/spec/unit/functions/camelcase_spec.rb +1 -1
- data/spec/unit/functions/capitalize_spec.rb +1 -1
- data/spec/unit/functions/downcase_spec.rb +1 -1
- data/spec/unit/functions/empty_spec.rb +0 -10
- data/spec/unit/functions/logging_spec.rb +0 -1
- data/spec/unit/functions/lookup_spec.rb +0 -64
- data/spec/unit/functions/unwrap_spec.rb +0 -8
- data/spec/unit/functions/upcase_spec.rb +1 -1
- data/spec/unit/functions4_spec.rb +2 -2
- data/spec/unit/gettext/config_spec.rb +0 -12
- data/spec/unit/http/client_spec.rb +8 -66
- data/spec/unit/{network/resolver_spec.rb → http/dns_spec.rb} +3 -3
- data/spec/unit/http/external_client_spec.rb +4 -4
- data/spec/unit/{network/http → http}/factory_spec.rb +5 -30
- data/spec/unit/{network/http/session_spec.rb → http/pool_entry_spec.rb} +3 -3
- data/spec/unit/{network/http → http}/pool_spec.rb +12 -17
- data/spec/unit/{util/http_proxy_spec.rb → http/proxy_spec.rb} +2 -69
- data/spec/unit/http/resolver_spec.rb +13 -13
- data/spec/unit/http/service/compiler_spec.rb +0 -193
- data/spec/unit/http/service/file_server_spec.rb +3 -3
- data/spec/unit/http/service/puppetserver_spec.rb +34 -4
- data/spec/unit/http/service_spec.rb +0 -1
- data/spec/unit/http/session_spec.rb +16 -14
- data/spec/unit/{network/http → http}/site_spec.rb +3 -3
- data/spec/unit/indirector/catalog/compiler_spec.rb +10 -101
- data/spec/unit/indirector/catalog/rest_spec.rb +0 -8
- data/spec/unit/indirector/face_spec.rb +1 -0
- data/spec/unit/indirector/facts/facter_spec.rb +3 -0
- data/spec/unit/indirector/file_bucket_file/file_spec.rb +5 -3
- data/spec/unit/indirector/file_bucket_file/selector_spec.rb +8 -26
- data/spec/unit/indirector/file_content/rest_spec.rb +0 -4
- data/spec/unit/indirector/file_metadata/rest_spec.rb +0 -4
- data/spec/unit/indirector/file_server_spec.rb +1 -15
- data/spec/unit/indirector/indirection_spec.rb +15 -18
- data/spec/unit/indirector/report/rest_spec.rb +2 -17
- data/spec/unit/indirector/request_spec.rb +0 -264
- data/spec/unit/indirector/resource/ral_spec.rb +75 -40
- data/spec/unit/indirector/rest_spec.rb +98 -752
- data/spec/unit/indirector/store_configs_spec.rb +7 -0
- data/spec/unit/indirector_spec.rb +2 -2
- data/spec/unit/interface/action_spec.rb +9 -0
- data/spec/unit/module_spec.rb +1 -15
- data/spec/unit/module_tool/applications/installer_spec.rb +0 -105
- data/spec/unit/network/authconfig_spec.rb +2 -129
- data/spec/unit/network/authorization_spec.rb +2 -55
- data/spec/unit/network/formats_spec.rb +4 -51
- data/spec/unit/network/http/api/indirected_routes_spec.rb +5 -92
- data/spec/unit/network/http/api/master/v3_spec.rb +28 -7
- data/spec/unit/network/http/api_spec.rb +10 -0
- data/spec/unit/network/http/connection_spec.rb +19 -41
- data/spec/unit/network/http/handler_spec.rb +0 -1
- data/spec/unit/network/http_pool_spec.rb +0 -4
- data/spec/unit/node/environment_spec.rb +33 -21
- data/spec/unit/node_spec.rb +2 -54
- data/spec/unit/parser/compiler_spec.rb +19 -3
- data/spec/unit/parser/functions/create_resources_spec.rb +2 -20
- data/spec/unit/parser/functions/fqdn_rand_spec.rb +1 -15
- data/spec/unit/parser/resource_spec.rb +8 -14
- data/spec/unit/parser/templatewrapper_spec.rb +5 -16
- data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +4 -7
- data/spec/unit/pops/loaders/loaders_spec.rb +6 -21
- data/spec/unit/pops/parser/parse_application_spec.rb +4 -22
- data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +0 -1
- data/spec/unit/pops/parser/parse_capabilities_spec.rb +8 -21
- data/spec/unit/pops/parser/parse_containers_spec.rb +11 -0
- data/spec/unit/pops/parser/parse_site_spec.rb +20 -24
- data/spec/unit/pops/resource/resource_type_impl_spec.rb +0 -71
- data/spec/unit/pops/serialization/to_from_hr_spec.rb +1 -59
- data/spec/unit/pops/serialization/to_stringified_spec.rb +0 -5
- data/spec/unit/pops/types/p_sem_ver_type_spec.rb +0 -18
- data/spec/unit/pops/types/p_sensitive_type_spec.rb +0 -18
- data/spec/unit/pops/types/type_calculator_spec.rb +6 -12
- data/spec/unit/pops/types/type_factory_spec.rb +1 -1
- data/spec/unit/pops/validator/validator_spec.rb +61 -46
- data/spec/unit/pops/visitor_spec.rb +1 -1
- data/spec/unit/property_spec.rb +0 -1
- data/spec/unit/provider/group/groupadd_spec.rb +2 -5
- data/spec/unit/provider/nameservice_spec.rb +64 -122
- data/spec/unit/provider/package/apt_spec.rb +23 -28
- data/spec/unit/provider/package/aptitude_spec.rb +1 -1
- data/spec/unit/provider/package/base_spec.rb +5 -6
- data/spec/unit/provider/package/dnfmodule_spec.rb +1 -10
- data/spec/unit/provider/package/dpkg_spec.rb +0 -48
- data/spec/unit/provider/package/gem_spec.rb +33 -1
- data/spec/unit/provider/package/nim_spec.rb +0 -42
- data/spec/unit/provider/package/pacman_spec.rb +12 -18
- data/spec/unit/provider/package/pip2_spec.rb +1 -1
- data/spec/unit/provider/package/pip3_spec.rb +1 -1
- data/spec/unit/provider/package/pip_spec.rb +12 -44
- data/spec/unit/provider/package/pkg_spec.rb +4 -29
- data/spec/unit/provider/package/pkgdmg_spec.rb +4 -0
- data/spec/unit/provider/package/puppet_gem_spec.rb +4 -3
- data/spec/unit/provider/package/puppetserver_gem_spec.rb +1 -1
- data/spec/unit/provider/parsedfile_spec.rb +0 -10
- data/spec/unit/provider/service/init_spec.rb +0 -1
- data/spec/unit/provider/service/launchd_spec.rb +0 -11
- data/spec/unit/provider/service/openwrt_spec.rb +1 -3
- data/spec/unit/provider/service/smf_spec.rb +401 -165
- data/spec/unit/provider/service/systemd_spec.rb +9 -54
- data/spec/unit/provider/service/windows_spec.rb +0 -203
- data/spec/unit/provider/user/aix_spec.rb +0 -105
- data/spec/unit/provider/user/directoryservice_spec.rb +36 -68
- data/spec/unit/provider/user/hpux_spec.rb +1 -1
- data/spec/unit/provider/user/pw_spec.rb +0 -2
- data/spec/unit/provider/user/useradd_spec.rb +5 -114
- data/spec/unit/provider_spec.rb +12 -22
- data/spec/unit/puppet_spec.rb +4 -12
- data/spec/unit/resource/catalog_spec.rb +2 -15
- data/spec/unit/resource/type_collection_spec.rb +2 -22
- data/spec/unit/resource/type_spec.rb +1 -1
- data/spec/unit/resource_spec.rb +12 -125
- data/spec/unit/settings/http_extra_headers_spec.rb +2 -4
- data/spec/unit/settings/integer_setting_spec.rb +42 -0
- data/spec/unit/settings/port_setting_spec.rb +31 -0
- data/spec/unit/settings/priority_setting_spec.rb +4 -4
- data/spec/unit/settings_spec.rb +79 -110
- data/spec/unit/ssl/base_spec.rb +37 -3
- data/spec/unit/ssl/certificate_request_spec.rb +21 -45
- data/spec/unit/ssl/certificate_spec.rb +2 -11
- data/spec/unit/ssl/ssl_provider_spec.rb +2 -5
- data/spec/unit/ssl/state_machine_spec.rb +5 -20
- data/spec/unit/ssl/verifier_spec.rb +0 -21
- data/spec/unit/transaction/additional_resource_generator_spec.rb +9 -3
- data/spec/unit/transaction/event_manager_spec.rb +11 -14
- data/spec/unit/transaction/report_spec.rb +0 -2
- data/spec/unit/transaction/resource_harness_spec.rb +2 -2
- data/spec/unit/transaction_spec.rb +55 -96
- data/spec/unit/type/exec_spec.rb +29 -76
- data/spec/unit/type/file/checksum_spec.rb +6 -6
- data/spec/unit/type/file/content_spec.rb +2 -1
- data/spec/unit/type/file/ensure_spec.rb +1 -1
- data/spec/unit/type/file/mode_spec.rb +1 -1
- data/spec/unit/type/file/selinux_spec.rb +5 -3
- data/spec/unit/type/file/source_spec.rb +4 -5
- data/spec/unit/type/file_spec.rb +18 -6
- data/spec/unit/type/group_spec.rb +6 -13
- data/spec/unit/type/package_spec.rb +1 -1
- data/spec/unit/type/resources_spec.rb +7 -7
- data/spec/unit/type/service_spec.rb +189 -87
- data/spec/unit/type/tidy_spec.rb +8 -24
- data/spec/unit/type/user_spec.rb +0 -45
- data/spec/unit/type_spec.rb +24 -4
- data/spec/unit/util/at_fork_spec.rb +2 -2
- data/spec/unit/util/autoload_spec.rb +1 -5
- data/spec/unit/util/backups_spec.rb +2 -3
- data/spec/unit/util/execution_spec.rb +11 -44
- data/spec/unit/util/inifile_spec.rb +14 -6
- data/spec/unit/util/log_spec.rb +7 -8
- data/spec/unit/util/logging_spec.rb +3 -5
- data/spec/unit/util/monkey_patches_spec.rb +0 -6
- data/spec/unit/util/posix_spec.rb +15 -363
- data/spec/unit/util/run_mode_spec.rb +21 -121
- data/spec/unit/util/selinux_spec.rb +68 -163
- data/spec/unit/util/storage_spec.rb +1 -3
- data/spec/unit/util/suidmanager_spec.rb +41 -44
- data/spec/unit/util/windows/sid_spec.rb +0 -41
- data/spec/unit/util/windows/string_spec.rb +1 -3
- data/spec/unit/util/yaml_spec.rb +0 -54
- data/spec/unit/util_spec.rb +6 -31
- data/tasks/generate_cert_fixtures.rake +3 -12
- data/tasks/parallel.rake +3 -3
- metadata +137 -288
- data/conf/auth.conf +0 -150
- data/ext/README.md +0 -13
- data/lib/puppet/application/cert.rb +0 -76
- data/lib/puppet/application/key.rb +0 -4
- data/lib/puppet/application/man.rb +0 -4
- data/lib/puppet/application/status.rb +0 -4
- data/lib/puppet/face/key.rb +0 -16
- data/lib/puppet/face/man.rb +0 -145
- data/lib/puppet/face/module/build.rb +0 -14
- data/lib/puppet/face/module/generate.rb +0 -14
- data/lib/puppet/face/module/search.rb +0 -103
- data/lib/puppet/face/status.rb +0 -51
- data/lib/puppet/facter_impl.rb +0 -96
- data/lib/puppet/ffi/posix/constants.rb +0 -14
- data/lib/puppet/ffi/posix/functions.rb +0 -24
- data/lib/puppet/ffi/posix.rb +0 -10
- data/lib/puppet/file_serving/mount/scripts.rb +0 -24
- data/lib/puppet/indirector/certificate/file.rb +0 -9
- data/lib/puppet/indirector/certificate/rest.rb +0 -18
- data/lib/puppet/indirector/certificate_request/file.rb +0 -9
- data/lib/puppet/indirector/certificate_request/memory.rb +0 -7
- data/lib/puppet/indirector/certificate_request/rest.rb +0 -11
- data/lib/puppet/indirector/file_content/http.rb +0 -22
- data/lib/puppet/indirector/key/file.rb +0 -46
- data/lib/puppet/indirector/key/memory.rb +0 -7
- data/lib/puppet/indirector/ssl_file.rb +0 -162
- data/lib/puppet/indirector/status/local.rb +0 -12
- data/lib/puppet/indirector/status/rest.rb +0 -27
- data/lib/puppet/indirector/status.rb +0 -3
- data/lib/puppet/module_tool/applications/searcher.rb +0 -29
- data/lib/puppet/network/auth_config_parser.rb +0 -90
- data/lib/puppet/network/authstore.rb +0 -283
- data/lib/puppet/network/http/api/master/v3/authorization.rb +0 -18
- data/lib/puppet/network/http/api/master/v3/environment.rb +0 -88
- data/lib/puppet/network/http/base_pool.rb +0 -36
- data/lib/puppet/network/http/compression.rb +0 -127
- data/lib/puppet/network/http/connection_adapter.rb +0 -184
- data/lib/puppet/network/http/nocache_pool.rb +0 -28
- data/lib/puppet/network/rest_controller.rb +0 -2
- data/lib/puppet/network/rights.rb +0 -210
- data/lib/puppet/parser/compiler/catalog_validator/env_relationship_validator.rb +0 -66
- data/lib/puppet/parser/compiler/catalog_validator/site_validator.rb +0 -22
- data/lib/puppet/parser/environment_compiler.rb +0 -202
- data/lib/puppet/pops/types/enumeration.rb +0 -16
- data/lib/puppet/resource/capability_finder.rb +0 -154
- data/lib/puppet/rest/errors.rb +0 -15
- data/lib/puppet/rest/response.rb +0 -35
- data/lib/puppet/rest/route.rb +0 -85
- data/lib/puppet/rest/routes.rb +0 -135
- data/lib/puppet/settings/alias_setting.rb +0 -37
- data/lib/puppet/ssl/host.rb +0 -505
- data/lib/puppet/ssl/key.rb +0 -61
- data/lib/puppet/ssl/validator/default_validator.rb +0 -209
- data/lib/puppet/ssl/validator/no_validator.rb +0 -22
- data/lib/puppet/ssl/validator.rb +0 -61
- data/lib/puppet/ssl/verifier_adapter.rb +0 -58
- data/lib/puppet/status.rb +0 -40
- data/lib/puppet/util/connection.rb +0 -88
- data/lib/puppet/util/fact_dif.rb +0 -81
- data/lib/puppet/util/ssl.rb +0 -83
- data/lib/puppet/util/windows/api_types.rb +0 -309
- data/lib/puppet/util/windows/monkey_patches/dir.rb +0 -40
- data/lib/puppet/vendor/load_pathspec.rb +0 -1
- data/lib/puppet/vendor/pathspec/CHANGELOG.md +0 -2
- data/lib/puppet/vendor/pathspec/LICENSE +0 -201
- data/lib/puppet/vendor/pathspec/PUPPET_README.md +0 -6
- data/lib/puppet/vendor/pathspec/README.md +0 -53
- data/lib/puppet/vendor/pathspec/lib/pathspec/gitignorespec.rb +0 -275
- data/lib/puppet/vendor/pathspec/lib/pathspec/regexspec.rb +0 -17
- data/lib/puppet/vendor/pathspec/lib/pathspec/spec.rb +0 -14
- data/lib/puppet/vendor/pathspec/lib/pathspec.rb +0 -122
- data/man/man8/puppet-key.8 +0 -126
- data/man/man8/puppet-man.8 +0 -76
- data/man/man8/puppet-status.8 +0 -108
- data/spec/fixtures/integration/application/agent/cached_deferred_catalog.json +0 -92
- data/spec/fixtures/integration/application/agent/lib/facter/agent_spec_role.rb +0 -3
- data/spec/fixtures/integration/l10n/envs/prod/modules/demo/Gemfile +0 -4
- data/spec/fixtures/integration/l10n/envs/prod/modules/demo/Rakefile +0 -3
- data/spec/fixtures/integration/l10n/envs/prod/modules/demo/lib/puppet/functions/l10n.rb +0 -8
- data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/config.yaml +0 -25
- data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/ja/puppet-l10n.po +0 -19
- data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/puppet-l10n.pot +0 -20
- data/spec/fixtures/integration/l10n/envs/prod/modules/demo/metadata.json +0 -8
- data/spec/fixtures/ssl/oid-key.pem +0 -117
- data/spec/fixtures/ssl/oid.pem +0 -69
- data/spec/fixtures/ssl/trusted_oid_mapping.yaml +0 -5
- data/spec/fixtures/unit/provider/service/systemd/list_unit_files_services_vendor_preset +0 -9
- data/spec/integration/application/resource_spec.rb +0 -64
- data/spec/integration/application/ssl_spec.rb +0 -20
- data/spec/integration/l10n/compiler_spec.rb +0 -37
- data/spec/integration/network/authconfig_spec.rb +0 -256
- data/spec/integration/util/windows/monkey_patches/dir_spec.rb +0 -11
- data/spec/shared_contexts/l10n.rb +0 -27
- data/spec/unit/application/man_spec.rb +0 -52
- data/spec/unit/capability_spec.rb +0 -414
- data/spec/unit/face/key_spec.rb +0 -9
- data/spec/unit/face/module/search_spec.rb +0 -231
- data/spec/unit/face/status_spec.rb +0 -9
- data/spec/unit/facter_impl_spec.rb +0 -31
- data/spec/unit/file_serving/mount/scripts_spec.rb +0 -69
- data/spec/unit/indirector/certificate/file_spec.rb +0 -14
- data/spec/unit/indirector/certificate/rest_spec.rb +0 -61
- data/spec/unit/indirector/certificate_request/file_spec.rb +0 -14
- data/spec/unit/indirector/certificate_request/rest_spec.rb +0 -25
- data/spec/unit/indirector/key/file_spec.rb +0 -78
- data/spec/unit/indirector/ssl_file_spec.rb +0 -305
- data/spec/unit/indirector/status/local_spec.rb +0 -10
- data/spec/unit/indirector/status/rest_spec.rb +0 -50
- data/spec/unit/module_tool/applications/searcher_spec.rb +0 -38
- data/spec/unit/network/auth_config_parser_spec.rb +0 -115
- data/spec/unit/network/authstore_spec.rb +0 -407
- data/spec/unit/network/http/api/master/v3/authorization_spec.rb +0 -57
- data/spec/unit/network/http/api/master/v3/environment_spec.rb +0 -185
- data/spec/unit/network/http/compression_spec.rb +0 -240
- data/spec/unit/network/http/nocache_pool_spec.rb +0 -64
- data/spec/unit/network/http_spec.rb +0 -9
- data/spec/unit/network/rights_spec.rb +0 -439
- data/spec/unit/parser/environment_compiler_spec.rb +0 -730
- data/spec/unit/pops/evaluator/deferred_resolver_spec.rb +0 -20
- data/spec/unit/pops/types/enumeration_spec.rb +0 -51
- data/spec/unit/resource/capability_finder_spec.rb +0 -148
- data/spec/unit/rest/route_spec.rb +0 -132
- data/spec/unit/ssl/host_spec.rb +0 -645
- data/spec/unit/ssl/key_spec.rb +0 -173
- data/spec/unit/ssl/validator_spec.rb +0 -278
- data/spec/unit/status_spec.rb +0 -45
- data/spec/unit/util/ssl_spec.rb +0 -91
@@ -31,14 +31,6 @@ describe Puppet::SSL::StateMachine, unless: Puppet::Util::Platform.jruby? do
|
|
31
31
|
allow(Kernel).to receive(:sleep)
|
32
32
|
end
|
33
33
|
|
34
|
-
def expected_digest(name, content)
|
35
|
-
OpenSSL::Digest.new(name).hexdigest(content)
|
36
|
-
end
|
37
|
-
|
38
|
-
def to_fingerprint(digest)
|
39
|
-
digest.scan(/../).join(':').upcase
|
40
|
-
end
|
41
|
-
|
42
34
|
context 'when passing keyword arguments' do
|
43
35
|
it "accepts digest" do
|
44
36
|
expect(described_class.new(digest: 'SHA512').digest).to eq('SHA512')
|
@@ -403,35 +395,29 @@ describe Puppet::SSL::StateMachine, unless: Puppet::Util::Platform.jruby? do
|
|
403
395
|
|
404
396
|
it 'verifies CA cert bundle if a ca_fingerprint is given case-insensitively' do
|
405
397
|
Puppet[:log_level] = :info
|
406
|
-
|
407
|
-
digest = expected_digest('SHA256', cacert_pem)
|
408
|
-
fingerprint = to_fingerprint(digest)
|
409
|
-
machine = described_class.new(digest: 'SHA256', ca_fingerprint: digest.downcase)
|
398
|
+
machine = described_class.new(digest: 'SHA256', ca_fingerprint: 'caacf69bbbcdad9dbcda92dd2da3608b639d1aea4c314d6cc6823cdb32d8e0f8')
|
410
399
|
state = Puppet::SSL::StateMachine::NeedCACerts.new(machine)
|
411
400
|
state.next_state
|
412
401
|
|
413
|
-
expect(@logs).to include(an_object_having_attributes(message: "Verified CA bundle with digest (SHA256)
|
402
|
+
expect(@logs).to include(an_object_having_attributes(message: "Verified CA bundle with digest (SHA256) CA:AC:F6:9B:BB:CD:AD:9D:BC:DA:92:DD:2D:A3:60:8B:63:9D:1A:EA:4C:31:4D:6C:C6:82:3C:DB:32:D8:E0:F8"))
|
414
403
|
end
|
415
404
|
|
416
405
|
it 'verifies CA cert bundle using non-default fingerprint' do
|
417
406
|
Puppet[:log_level] = :info
|
418
|
-
|
419
|
-
digest = expected_digest('SHA512', cacert_pem)
|
420
|
-
machine = described_class.new(digest: 'SHA512', ca_fingerprint: digest)
|
407
|
+
machine = described_class.new(digest: 'SHA512', ca_fingerprint: '3c9d1482b878913ad95c9631feac5090cb05c6eab9496178d6fd5c14a023da3b1a8650a3cbaac516d9a48caf0b0742e1ed7eebf55105c024c74834a45056a9d9')
|
421
408
|
state = Puppet::SSL::StateMachine::NeedCACerts.new(machine)
|
422
409
|
state.next_state
|
423
410
|
|
424
|
-
expect(@logs).to include(an_object_having_attributes(message: "Verified CA bundle with digest (SHA512)
|
411
|
+
expect(@logs).to include(an_object_having_attributes(message: "Verified CA bundle with digest (SHA512) 3C:9D:14:82:B8:78:91:3A:D9:5C:96:31:FE:AC:50:90:CB:05:C6:EA:B9:49:61:78:D6:FD:5C:14:A0:23:DA:3B:1A:86:50:A3:CB:AA:C5:16:D9:A4:8C:AF:0B:07:42:E1:ED:7E:EB:F5:51:05:C0:24:C7:48:34:A4:50:56:A9:D9"))
|
425
412
|
end
|
426
413
|
|
427
414
|
it 'returns an error if verification fails' do
|
428
415
|
machine = described_class.new(digest: 'SHA256', ca_fingerprint: 'wrong!')
|
429
416
|
state = Puppet::SSL::StateMachine::NeedCACerts.new(machine)
|
430
417
|
|
431
|
-
fingerprint = to_fingerprint(expected_digest('SHA256', cacert_pem))
|
432
418
|
st = state.next_state
|
433
419
|
expect(st).to be_an_instance_of(Puppet::SSL::StateMachine::Error)
|
434
|
-
expect(st.message).to eq("CA bundle with digest (SHA256)
|
420
|
+
expect(st.message).to eq("CA bundle with digest (SHA256) CA:AC:F6:9B:BB:CD:AD:9D:BC:DA:92:DD:2D:A3:60:8B:63:9D:1A:EA:4C:31:4D:6C:C6:82:3C:DB:32:D8:E0:F8 did not match expected digest WR:ON:G!")
|
435
421
|
end
|
436
422
|
end
|
437
423
|
end
|
@@ -519,7 +505,6 @@ describe Puppet::SSL::StateMachine, unless: Puppet::Util::Platform.jruby? do
|
|
519
505
|
Puppet[:certificate_revocation] = false
|
520
506
|
|
521
507
|
expect(cert_provider).not_to receive(:load_crls)
|
522
|
-
expect(Puppet::Rest::Routes).not_to receive(:get_crls)
|
523
508
|
|
524
509
|
state.next_state
|
525
510
|
|
@@ -6,7 +6,6 @@ describe Puppet::SSL::Verifier do
|
|
6
6
|
let(:host) { 'example.com' }
|
7
7
|
let(:http) { Net::HTTP.new(host) }
|
8
8
|
let(:verifier) { described_class.new(host, ssl_context) }
|
9
|
-
let(:adapter) { Puppet::SSL::VerifierAdapter.new(Puppet::SSL::Validator::DefaultValidator.new) }
|
10
9
|
|
11
10
|
context '#reusable?' do
|
12
11
|
it 'Verifiers with the same ssl_context are reusable' do
|
@@ -16,26 +15,6 @@ describe Puppet::SSL::Verifier do
|
|
16
15
|
it 'Verifiers with different ssl_contexts are not reusable' do
|
17
16
|
expect(verifier).to_not be_reusable(described_class.new(host, Puppet::SSL::SSLContext.new))
|
18
17
|
end
|
19
|
-
|
20
|
-
it 'Verifier is not reusable with VerifierAdapter' do
|
21
|
-
expect(verifier).to_not be_reusable(adapter)
|
22
|
-
end
|
23
|
-
|
24
|
-
it 'VerifierAdapter is not reusable with Verifier' do
|
25
|
-
expect(adapter).to_not be_reusable(verifier)
|
26
|
-
end
|
27
|
-
|
28
|
-
it 'VerifierAdapters with the same class of Validator are reusable' do
|
29
|
-
expect(
|
30
|
-
adapter
|
31
|
-
).to be_reusable(Puppet::SSL::VerifierAdapter.new(Puppet::SSL::Validator::DefaultValidator.new))
|
32
|
-
end
|
33
|
-
|
34
|
-
it 'VerifierAdapters with different classes of Validators are not reusable' do
|
35
|
-
expect(
|
36
|
-
adapter
|
37
|
-
).to_not be_reusable(Puppet::SSL::VerifierAdapter.new(Puppet::SSL::Validator::NoValidator.new))
|
38
|
-
end
|
39
18
|
end
|
40
19
|
|
41
20
|
context '#setup_connection' do
|
@@ -33,6 +33,10 @@ describe Puppet::Transaction::AdditionalResourceGenerator do
|
|
33
33
|
|
34
34
|
newparam(:code)
|
35
35
|
|
36
|
+
def respond_to?(method_name)
|
37
|
+
method_name == self[:kind] || super
|
38
|
+
end
|
39
|
+
|
36
40
|
def eval_generate
|
37
41
|
eval_code
|
38
42
|
end
|
@@ -93,6 +97,8 @@ describe Puppet::Transaction::AdditionalResourceGenerator do
|
|
93
97
|
end
|
94
98
|
end
|
95
99
|
|
100
|
+
|
101
|
+
|
96
102
|
after(:each) do
|
97
103
|
Puppet::Type.rmtype(:gen_empty)
|
98
104
|
Puppet::Type.rmtype(:eval_after)
|
@@ -308,13 +314,13 @@ describe Puppet::Transaction::AdditionalResourceGenerator do
|
|
308
314
|
|
309
315
|
it "sets resources_failed_to_generate to true if resource#eval_generate raises an exception" do
|
310
316
|
catalog = compile_to_ral(<<-MANIFEST)
|
311
|
-
|
317
|
+
notify { 'hello': }
|
312
318
|
MANIFEST
|
313
319
|
|
314
|
-
allow(catalog.resource("
|
320
|
+
allow(catalog.resource("Notify[hello]")).to receive(:eval_generate).and_raise(RuntimeError)
|
315
321
|
relationship_graph = relationship_graph_for(catalog)
|
316
322
|
generator = Puppet::Transaction::AdditionalResourceGenerator.new(catalog, relationship_graph, prioritizer)
|
317
|
-
generator.eval_generate(catalog.resource("
|
323
|
+
generator.eval_generate(catalog.resource("Notify[hello]"))
|
318
324
|
|
319
325
|
expect(generator.resources_failed_to_generate).to be_truthy
|
320
326
|
end
|
@@ -152,9 +152,6 @@ describe Puppet::Transaction::EventManager do
|
|
152
152
|
|
153
153
|
@resource = Puppet::Type.type(:file).new :path => make_absolute("/my/file")
|
154
154
|
@event = Puppet::Transaction::Event.new(:name => :event, :resource => @resource)
|
155
|
-
|
156
|
-
@resource.class.send(:define_method, :callback1) {}
|
157
|
-
@resource.class.send(:define_method, :callback2) {}
|
158
155
|
end
|
159
156
|
|
160
157
|
it "should call the required callback once for each set of associated events" do
|
@@ -181,7 +178,7 @@ describe Puppet::Transaction::EventManager do
|
|
181
178
|
|
182
179
|
allow(@resource).to receive(:callback1)
|
183
180
|
|
184
|
-
@manager.process_events(@resource)
|
181
|
+
@manager.process_events(@resource) #x
|
185
182
|
|
186
183
|
expect(@transaction.resource_status(@resource).events.length).to eq(1)
|
187
184
|
end
|
@@ -214,11 +211,9 @@ describe Puppet::Transaction::EventManager do
|
|
214
211
|
@event2 = Puppet::Transaction::Event.new(:name => :event, :resource => @resource)
|
215
212
|
@event2.status = "success"
|
216
213
|
expect(@manager).to receive(:queued_events).with(@resource).and_yield(:callback1, [@event, @event2])
|
217
|
-
@resource.class.send(:define_method, :callback1) {}
|
218
214
|
end
|
219
215
|
|
220
216
|
it "should call the callback" do
|
221
|
-
|
222
217
|
expect(@resource).to receive(:callback1)
|
223
218
|
|
224
219
|
@manager.process_events(@resource)
|
@@ -230,7 +225,6 @@ describe Puppet::Transaction::EventManager do
|
|
230
225
|
allow(@event).to receive(:status).and_return("noop")
|
231
226
|
allow(@resource).to receive(:event).and_return(Puppet::Transaction::Event.new)
|
232
227
|
expect(@manager).to receive(:queued_events).with(@resource).and_yield(:callback1, [@event])
|
233
|
-
@resource.class.send(:define_method, :callback1) {}
|
234
228
|
end
|
235
229
|
|
236
230
|
it "should log" do
|
@@ -260,7 +254,6 @@ describe Puppet::Transaction::EventManager do
|
|
260
254
|
allow(@resource).to receive(:event).and_return(Puppet::Transaction::Event.new)
|
261
255
|
allow(@resource).to receive(:noop?).and_return(true)
|
262
256
|
expect(@manager).to receive(:queued_events).with(@resource).and_yield(:callback1, [@event])
|
263
|
-
@resource.class.send(:define_method, :callback1) {}
|
264
257
|
end
|
265
258
|
|
266
259
|
it "should log" do
|
@@ -286,7 +279,7 @@ describe Puppet::Transaction::EventManager do
|
|
286
279
|
|
287
280
|
describe "and the callback fails" do
|
288
281
|
before do
|
289
|
-
@resource.
|
282
|
+
expect(@resource).to receive(:callback1).and_raise("a failure")
|
290
283
|
|
291
284
|
expect(@manager).to receive(:queued_events).and_yield(:callback1, [@event])
|
292
285
|
end
|
@@ -330,12 +323,16 @@ describe Puppet::Transaction::EventManager do
|
|
330
323
|
|
331
324
|
describe "when queueing then processing events for a given resource" do
|
332
325
|
before do
|
333
|
-
@
|
334
|
-
@
|
335
|
-
@resource = Puppet::Type.type(:exec).new(name: 'resource', path: ENV['PATH'], notify: @target)
|
336
|
-
@catalog.add_resource(@resource, @target)
|
326
|
+
@transaction = Puppet::Transaction.new(Puppet::Resource::Catalog.new, nil, nil)
|
327
|
+
@manager = Puppet::Transaction::EventManager.new(@transaction)
|
337
328
|
|
338
|
-
@
|
329
|
+
@resource = Puppet::Type.type(:file).new :path => make_absolute("/my/file")
|
330
|
+
@target = Puppet::Type.type(:file).new :path => make_absolute("/your/file")
|
331
|
+
|
332
|
+
@graph = allow('graph')
|
333
|
+
allow(@graph).to receive(:matching_edges).and_return([])
|
334
|
+
allow(@graph).to receive(:matching_edges).with(anything, @resource).and_return([double('edge', :target => @target, :callback => :refresh)])
|
335
|
+
allow(@manager).to receive(:relationship_graph).and_return(@graph)
|
339
336
|
|
340
337
|
@event = Puppet::Transaction::Event.new(:name => :notify, :resource => @target)
|
341
338
|
@event2 = Puppet::Transaction::Event.new(:name => :service_start, :resource => @target, :invalidate_refreshes => true)
|
@@ -675,7 +675,6 @@ Version:
|
|
675
675
|
report.code_id = "some code id"
|
676
676
|
report.catalog_uuid = "some catalog uuid"
|
677
677
|
report.cached_catalog_status = "not_used"
|
678
|
-
report.master_used = "test:000"
|
679
678
|
report.server_used = "test:000"
|
680
679
|
report.add_resource_status(status)
|
681
680
|
report.transaction_completed = true
|
@@ -694,7 +693,6 @@ Version:
|
|
694
693
|
report.code_id = "some code id"
|
695
694
|
report.catalog_uuid = "some catalog uuid"
|
696
695
|
report.cached_catalog_status = "not_used"
|
697
|
-
report.master_used = "test:000"
|
698
696
|
report.server_used = "test:000"
|
699
697
|
report.add_resource_status(status)
|
700
698
|
report.transaction_completed = true
|
@@ -612,14 +612,14 @@ describe Puppet::Transaction::ResourceHarness do
|
|
612
612
|
allow_any_instance_of(Puppet::Transaction::Event).to receive(:corrective_change).and_return(true)
|
613
613
|
status = @harness.evaluate(resource)
|
614
614
|
sync_event = status.events[0]
|
615
|
-
expect(sync_event.message).to match(/content changed '{
|
615
|
+
expect(sync_event.message).to match(/content changed '{sha256}[0-9a-f]+' to '{sha256}[0-9a-f]+' \(corrective\)/)
|
616
616
|
end
|
617
617
|
|
618
618
|
it "contains no modifier when intentional change" do
|
619
619
|
allow_any_instance_of(Puppet::Transaction::Event).to receive(:corrective_change).and_return(false)
|
620
620
|
status = @harness.evaluate(resource)
|
621
621
|
sync_event = status.events[0]
|
622
|
-
expect(sync_event.message).to match(/content changed '{
|
622
|
+
expect(sync_event.message).to match(/content changed '{sha256}[0-9a-f]+' to '{sha256}[0-9a-f]+'$/)
|
623
623
|
end
|
624
624
|
end
|
625
625
|
end
|
@@ -20,19 +20,6 @@ describe Puppet::Transaction do
|
|
20
20
|
transaction
|
21
21
|
end
|
22
22
|
|
23
|
-
before(:all) do
|
24
|
-
Puppet::Type.newtype(:transaction_generator) do
|
25
|
-
newparam(:name) { isnamevar }
|
26
|
-
|
27
|
-
def generate
|
28
|
-
end
|
29
|
-
end
|
30
|
-
end
|
31
|
-
|
32
|
-
after(:all) do
|
33
|
-
Puppet::Type.rmtype(:transaction_generator)
|
34
|
-
end
|
35
|
-
|
36
23
|
before do
|
37
24
|
@basepath = make_absolute("/what/ever")
|
38
25
|
@transaction = Puppet::Transaction.new(Puppet::Resource::Catalog.new, nil, Puppet::Graph::SequentialPrioritizer.new)
|
@@ -336,9 +323,9 @@ describe Puppet::Transaction do
|
|
336
323
|
describe "when generating resources before traversal" do
|
337
324
|
let(:catalog) { Puppet::Resource::Catalog.new }
|
338
325
|
let(:transaction) { Puppet::Transaction.new(catalog, nil, Puppet::Graph::SequentialPrioritizer.new) }
|
339
|
-
let(:generator) { Puppet::Type.type(:
|
326
|
+
let(:generator) { Puppet::Type.type(:notify).new :title => "generator" }
|
340
327
|
let(:generated) do
|
341
|
-
%w[a b c].map { |name| Puppet::Type.type(:
|
328
|
+
%w[a b c].map { |name| Puppet::Type.type(:notify).new(:name => name) }
|
342
329
|
end
|
343
330
|
|
344
331
|
before :each do
|
@@ -611,115 +598,81 @@ describe Puppet::Transaction do
|
|
611
598
|
transaction.prefetch_if_necessary(resource)
|
612
599
|
end
|
613
600
|
|
614
|
-
it "should not rescue SystemExit
|
615
|
-
Puppet.settings[:future_features] = false
|
616
|
-
expect(resource.provider.class).to receive(:prefetch).and_raise(SystemExit, "SystemMessage")
|
617
|
-
expect { transaction.prefetch_if_necessary(resource) }.to raise_error(SystemExit, "SystemMessage")
|
618
|
-
end
|
619
|
-
|
620
|
-
it "should not rescue SystemExit with future_features flag" do
|
621
|
-
Puppet.settings[:future_features] = true
|
601
|
+
it "should not rescue SystemExit" do
|
622
602
|
expect(resource.provider.class).to receive(:prefetch).and_raise(SystemExit, "SystemMessage")
|
623
603
|
expect { transaction.prefetch_if_necessary(resource) }.to raise_error(SystemExit, "SystemMessage")
|
624
604
|
end
|
625
605
|
|
626
|
-
it "should
|
627
|
-
Puppet.settings[:future_features] = false
|
628
|
-
expect(resource.provider.class).to receive(:prefetch).and_raise(LoadError, "LoadMessage")
|
629
|
-
expect { transaction.prefetch_if_necessary(resource) }.not_to raise_error
|
630
|
-
end
|
631
|
-
|
632
|
-
it "should rescue LoadError with future_features flag" do
|
633
|
-
Puppet.settings[:future_features] = true
|
606
|
+
it "should mark resources as failed when prefetching raises LoadError" do
|
634
607
|
expect(resource.provider.class).to receive(:prefetch).and_raise(LoadError, "LoadMessage")
|
635
|
-
|
608
|
+
transaction.prefetch_if_necessary(resource)
|
609
|
+
expect(transaction.prefetched_providers[:package][:pkgng]).to be_truthy
|
636
610
|
end
|
637
611
|
|
638
|
-
describe "and prefetching
|
612
|
+
describe "and prefetching raises Puppet::Error" do
|
639
613
|
before :each do
|
640
614
|
expect(resource.provider.class).to receive(:prefetch).and_raise(Puppet::Error, "message")
|
641
615
|
end
|
642
616
|
|
643
|
-
|
644
|
-
|
645
|
-
Puppet.settings[:future_features] = false
|
646
|
-
end
|
647
|
-
|
648
|
-
it "should not rescue prefetch executions" do
|
649
|
-
expect { transaction.prefetch_if_necessary(resource) }.to raise_error(Puppet::Error)
|
650
|
-
end
|
617
|
+
it "should rescue prefetch executions" do
|
618
|
+
transaction.prefetch_if_necessary(resource)
|
651
619
|
|
652
|
-
|
653
|
-
expect(Puppet).to receive(:log_exception).with(anything, "Could not prefetch package provider 'pkgng': message")
|
654
|
-
expect { transaction.prefetch_if_necessary(resource) }.to raise_error(Puppet::Error, "message")
|
655
|
-
end
|
620
|
+
expect(transaction.prefetched_providers[:package][:pkgng]).to be_truthy
|
656
621
|
end
|
657
622
|
|
658
|
-
|
659
|
-
|
660
|
-
Puppet.settings[:future_features] = true
|
661
|
-
end
|
623
|
+
it "should mark resources as failed", :unless => RUBY_PLATFORM == 'java' do
|
624
|
+
transaction.evaluate
|
662
625
|
|
663
|
-
|
664
|
-
|
626
|
+
expect(transaction.resource_status(resource).failed?).to be_truthy
|
627
|
+
end
|
665
628
|
|
666
|
-
|
667
|
-
|
629
|
+
it "should mark a provider that has failed prefetch" do
|
630
|
+
transaction.prefetch_if_necessary(resource)
|
668
631
|
|
669
|
-
|
670
|
-
|
632
|
+
expect(transaction.prefetch_failed_providers[:package][:pkgng]).to be_truthy
|
633
|
+
end
|
671
634
|
|
672
|
-
|
635
|
+
describe "and new resources are generated" do
|
636
|
+
let(:generator) { Puppet::Type.type(:notify).new :title => "generator" }
|
637
|
+
let(:generated) do
|
638
|
+
%w[a b c].map { |name| Puppet::Type.type(:package).new :title => "foo", :name => name, :provider => :apt }
|
673
639
|
end
|
674
640
|
|
675
|
-
|
676
|
-
|
677
|
-
|
678
|
-
|
641
|
+
before :each do
|
642
|
+
catalog.add_resource generator
|
643
|
+
allow(generator).to receive(:generate).and_return(generated)
|
644
|
+
allow(catalog).to receive(:container_of).and_return(generator)
|
679
645
|
end
|
680
646
|
|
681
|
-
|
682
|
-
|
683
|
-
|
684
|
-
|
685
|
-
end
|
686
|
-
|
687
|
-
before :each do
|
688
|
-
catalog.add_resource generator
|
689
|
-
allow(generator).to receive(:generate).and_return(generated)
|
690
|
-
allow(catalog).to receive(:container_of).and_return(generator)
|
691
|
-
end
|
692
|
-
|
693
|
-
it "should not evaluate resources with a failed provider, even if the prefetch is rescued" do
|
694
|
-
#Only the generator resource should be applied, all the other resources are failed, and skipped.
|
695
|
-
catalog.remove_resource resource2
|
696
|
-
expect(transaction).to receive(:apply).once
|
647
|
+
it "should not evaluate resources with a failed provider, even if the prefetch is rescued" do
|
648
|
+
#Only the generator resource should be applied, all the other resources are failed, and skipped.
|
649
|
+
catalog.remove_resource resource2
|
650
|
+
expect(transaction).to receive(:apply).once
|
697
651
|
|
698
|
-
|
699
|
-
|
652
|
+
transaction.evaluate
|
653
|
+
end
|
700
654
|
|
701
|
-
|
702
|
-
|
703
|
-
|
655
|
+
it "should not fail other resources added after the failing resource", :unless => RUBY_PLATFORM == 'java' do
|
656
|
+
new_resource = Puppet::Type.type(:notify).new :name => "baz"
|
657
|
+
catalog.add_resource(new_resource)
|
704
658
|
|
705
|
-
|
659
|
+
transaction.evaluate
|
706
660
|
|
707
|
-
|
708
|
-
|
661
|
+
expect(transaction.resource_status(new_resource).failed?).to be_falsey
|
662
|
+
end
|
709
663
|
|
710
|
-
|
711
|
-
|
712
|
-
|
664
|
+
it "should fail other resources that require the failing resource" do
|
665
|
+
new_resource = Puppet::Type.type(:notify).new(:name => "baz", :require => resource)
|
666
|
+
catalog.add_resource(new_resource)
|
713
667
|
|
714
|
-
|
715
|
-
|
668
|
+
catalog.remove_resource resource2
|
669
|
+
expect(transaction).to receive(:apply).once
|
716
670
|
|
717
|
-
|
671
|
+
transaction.evaluate
|
718
672
|
|
719
|
-
|
720
|
-
|
721
|
-
|
722
|
-
end
|
673
|
+
expect(transaction.resource_status(resource).failed?).to be_truthy
|
674
|
+
expect(transaction.resource_status(new_resource).dependency_failed?).to be_truthy
|
675
|
+
expect(transaction.skip?(new_resource)).to be_truthy
|
723
676
|
end
|
724
677
|
end
|
725
678
|
end
|
@@ -793,8 +746,13 @@ describe Puppet::Transaction do
|
|
793
746
|
end
|
794
747
|
|
795
748
|
it "should call Selinux.matchpathcon_fini in case Selinux is enabled ", :if => Puppet.features.posix? do
|
796
|
-
|
797
|
-
|
749
|
+
unless defined?(Selinux)
|
750
|
+
module Selinux
|
751
|
+
def self.is_selinux_enabled
|
752
|
+
true
|
753
|
+
end
|
754
|
+
end
|
755
|
+
end
|
798
756
|
|
799
757
|
resource = Puppet::Type.type(:file).new(:path => make_absolute("/tmp/foo"))
|
800
758
|
transaction = transaction_with_resource(resource)
|
@@ -836,6 +794,7 @@ describe Puppet::Transaction do
|
|
836
794
|
before do
|
837
795
|
@resource = Puppet::Type.type(:notify).new :title => "foobar"
|
838
796
|
@catalog.add_resource @resource
|
797
|
+
allow(@transaction).to receive(:add_dynamically_generated_resources)
|
839
798
|
end
|
840
799
|
|
841
800
|
it 'should stop processing if :stop_processing? is true' do
|
data/spec/unit/type/exec_spec.rb
CHANGED
@@ -239,19 +239,6 @@ RSpec.describe Puppet::Type.type(:exec) do
|
|
239
239
|
expect(dependencies.collect(&:to_s)).to eq([Puppet::Relationship.new(tmp, execer).to_s])
|
240
240
|
end
|
241
241
|
|
242
|
-
it "should be able to autorequire files mentioned in the array command" do
|
243
|
-
foo = make_absolute('/bin/foo')
|
244
|
-
catalog = Puppet::Resource::Catalog.new
|
245
|
-
tmp = Puppet::Type.type(:file).new(:name => foo)
|
246
|
-
execer = Puppet::Type.type(:exec).new(:name => 'test array', :command => [foo, 'bar'])
|
247
|
-
|
248
|
-
catalog.add_resource tmp
|
249
|
-
catalog.add_resource execer
|
250
|
-
dependencies = execer.autorequire(catalog)
|
251
|
-
|
252
|
-
expect(dependencies.collect(&:to_s)).to eq([Puppet::Relationship.new(tmp, execer).to_s])
|
253
|
-
end
|
254
|
-
|
255
242
|
describe "when handling the path parameter" do
|
256
243
|
expect = %w{one two three four}
|
257
244
|
{ "an array" => expect,
|
@@ -359,13 +346,7 @@ RSpec.describe Puppet::Type.type(:exec) do
|
|
359
346
|
end
|
360
347
|
|
361
348
|
shared_examples_for "all exec command parameters" do |param|
|
362
|
-
|
363
|
-
array_cmd = [["/bin/example", "*"]] if [:onlyif, :unless].include?(param)
|
364
|
-
|
365
|
-
commands = { "relative" => "example", "absolute" => "/bin/example" }
|
366
|
-
commands["array"] = array_cmd
|
367
|
-
|
368
|
-
commands.sort.each do |name, command|
|
349
|
+
{ "relative" => "example", "absolute" => "/bin/example" }.sort.each do |name, command|
|
369
350
|
describe "if command is #{name}" do
|
370
351
|
before :each do
|
371
352
|
@param = param
|
@@ -398,44 +379,45 @@ RSpec.describe Puppet::Type.type(:exec) do
|
|
398
379
|
end
|
399
380
|
|
400
381
|
shared_examples_for "all exec command parameters that take arrays" do |param|
|
401
|
-
|
402
|
-
|
403
|
-
|
404
|
-
|
405
|
-
context "when given #{input.inspect} as input" do
|
406
|
-
let(:resource) { Puppet::Type.type(:exec).new(:name => @executable) }
|
407
|
-
|
408
|
-
it "accepts the array when all commands return valid" do
|
409
|
-
input = %w{one two three}
|
410
|
-
allow(resource.provider).to receive(:validatecmd).exactly(input.length).times.and_return(true)
|
411
|
-
resource[param] = input
|
412
|
-
expect(resource[param]).to eq(input)
|
413
|
-
end
|
382
|
+
describe "when given an array of inputs" do
|
383
|
+
before :each do
|
384
|
+
@test = Puppet::Type.type(:exec).new(:name => @executable)
|
385
|
+
end
|
414
386
|
|
415
|
-
|
416
|
-
|
417
|
-
|
418
|
-
|
387
|
+
it "should accept the array when all commands return valid" do
|
388
|
+
input = %w{one two three}
|
389
|
+
expect(@test.provider).to receive(:validatecmd).exactly(input.length).times.and_return(true)
|
390
|
+
@test[param] = input
|
391
|
+
expect(@test[param]).to eq(input)
|
392
|
+
end
|
419
393
|
|
420
|
-
|
394
|
+
it "should reject the array when any commands return invalid" do
|
395
|
+
input = %w{one two three}
|
396
|
+
expect(@test.provider).to receive(:validatecmd).with(input.first).and_return(false)
|
397
|
+
input[1..-1].each do |cmd|
|
398
|
+
expect(@test.provider).to receive(:validatecmd).with(cmd).and_return(true)
|
421
399
|
end
|
400
|
+
@test[param] = input
|
401
|
+
expect(@test[param]).to eq(input)
|
402
|
+
end
|
422
403
|
|
423
|
-
|
424
|
-
|
425
|
-
|
426
|
-
|
427
|
-
|
428
|
-
expect(resource.provider).not_to receive(:validatecmd).with(input[2])
|
429
|
-
expect { resource[param] = input }.to raise_error(Puppet::ResourceError, /Parameter #{param} failed/)
|
430
|
-
end
|
404
|
+
it "should reject the array when all commands return invalid" do
|
405
|
+
input = %w{one two three}
|
406
|
+
expect(@test.provider).to receive(:validatecmd).exactly(input.length).times.and_return(false)
|
407
|
+
@test[param] = input
|
408
|
+
expect(@test[param]).to eq(input)
|
431
409
|
end
|
432
410
|
end
|
433
411
|
end
|
434
412
|
|
435
413
|
describe "when setting command" do
|
436
414
|
subject { described_class.new(:name => @command) }
|
415
|
+
it "fails when passed an Array" do
|
416
|
+
expect { subject[:command] = [] }.to raise_error Puppet::Error, /Command must be a String/
|
417
|
+
end
|
418
|
+
|
437
419
|
it "fails when passed a Hash" do
|
438
|
-
expect { subject[:command] = {} }.to raise_error Puppet::Error, /Command must be a String
|
420
|
+
expect { subject[:command] = {} }.to raise_error Puppet::Error, /Command must be a String/
|
439
421
|
end
|
440
422
|
end
|
441
423
|
|
@@ -777,35 +759,6 @@ RSpec.describe Puppet::Type.type(:exec) do
|
|
777
759
|
end
|
778
760
|
end
|
779
761
|
|
780
|
-
context 'with an array of arrays with multiple items' do
|
781
|
-
before do
|
782
|
-
[true, false].each do |check|
|
783
|
-
allow(@test.provider).to receive(:run).with([@pass, '--flag'], check).
|
784
|
-
and_return(['test output', @pass_status])
|
785
|
-
allow(@test.provider).to receive(:run).with([@fail, '--flag'], check).
|
786
|
-
and_return(['test output', @fail_status])
|
787
|
-
allow(@test.provider).to receive(:run).with([@pass], check).
|
788
|
-
and_return(['test output', @pass_status])
|
789
|
-
allow(@test.provider).to receive(:run).with([@fail], check).
|
790
|
-
and_return(['test output', @fail_status])
|
791
|
-
end
|
792
|
-
end
|
793
|
-
it "runs if all the commands exits non-zero" do
|
794
|
-
@test[param] = [[@fail, '--flag'], [@fail], [@fail, '--flag']]
|
795
|
-
expect(@test.check_all_attributes).to eq(true)
|
796
|
-
end
|
797
|
-
|
798
|
-
it "does not run if one command exits zero" do
|
799
|
-
@test[param] = [[@pass, '--flag'], [@pass], [@fail, '--flag']]
|
800
|
-
expect(@test.check_all_attributes).to eq(false)
|
801
|
-
end
|
802
|
-
|
803
|
-
it "does not run if all command exits zero" do
|
804
|
-
@test[param] = [[@pass, '--flag'], [@pass], [@pass, '--flag']]
|
805
|
-
expect(@test.check_all_attributes).to eq(false)
|
806
|
-
end
|
807
|
-
end
|
808
|
-
|
809
762
|
it "should emit output to debug" do
|
810
763
|
Puppet::Util::Log.level = :debug
|
811
764
|
@test[param] = @fail
|
@@ -18,8 +18,8 @@ describe checksum do
|
|
18
18
|
@checksum.sum("foobar")
|
19
19
|
end
|
20
20
|
|
21
|
-
it "should use :
|
22
|
-
expect(@checksum).to receive(:
|
21
|
+
it "should use :sha256 to sum when no value is set" do
|
22
|
+
expect(@checksum).to receive(:sha256).with("foobar").and_return("yay")
|
23
23
|
@checksum.sum("foobar")
|
24
24
|
end
|
25
25
|
|
@@ -47,8 +47,8 @@ describe checksum do
|
|
47
47
|
expect(@checksum.sum("foobar")).to eq("{sha384}#{sum}")
|
48
48
|
end
|
49
49
|
|
50
|
-
it "should use :
|
51
|
-
expect(@checksum.default).to eq(:
|
50
|
+
it "should use :sha256 as its default type" do
|
51
|
+
expect(@checksum.default).to eq(:sha256)
|
52
52
|
end
|
53
53
|
|
54
54
|
it "should use its current value when asked to sum a file's content" do
|
@@ -57,8 +57,8 @@ describe checksum do
|
|
57
57
|
@checksum.sum_file(@path)
|
58
58
|
end
|
59
59
|
|
60
|
-
it "should use :
|
61
|
-
expect(@checksum).to receive(:
|
60
|
+
it "should use :sha256 to sum a file when no value is set" do
|
61
|
+
expect(@checksum).to receive(:sha256_file).with(@path).and_return("yay")
|
62
62
|
@checksum.sum_file(@path)
|
63
63
|
end
|
64
64
|
|
@@ -7,10 +7,11 @@ describe Puppet::Type.type(:file).attrclass(:content), :uses_checksums => true d
|
|
7
7
|
let(:filename) { tmpfile('testfile') }
|
8
8
|
let(:environment) { Puppet::Node::Environment.create(:testing, []) }
|
9
9
|
let(:catalog) { Puppet::Resource::Catalog.new(:test, environment) }
|
10
|
-
let(:resource) { Puppet::Type.type(:file).new :path => filename, :catalog => catalog }
|
10
|
+
let(:resource) { Puppet::Type.type(:file).new :path => filename, :catalog => catalog, :backup => 'puppet' }
|
11
11
|
|
12
12
|
before do
|
13
13
|
File.open(filename, 'w') {|f| f.write "initial file content"}
|
14
|
+
allow(described_class).to receive(:standalone?).and_return(false)
|
14
15
|
end
|
15
16
|
|
16
17
|
around do |example|
|